Pickproject banner

Pickproject

4 devlogs
7h 3m 47s

Pickproject is a student project idea generator that uses AI to suggest unique project ideas based on your time, skill level and interests. just pick ur filters, hit generate and get a ready to build project idea instantly — with features, tech st…

Pickproject is a student project idea generator that uses AI to suggest unique project ideas based on your time, skill level and interests. just pick ur filters, hit generate and get a ready to build project idea instantly — with features, tech stack and everything. built for students who have no idea what to make

This project uses AI

Debugged and styled using Claude

Demo Repository

Loading README...

Tensteg

Shipped this project!

built ProjectGen — an AI powered project idea generator for students fr u pick ur time, skill n category n it spits out a whole project idea w features, tech stack n everything. debugging flask indentation errors was cooked ngl n vercel kept resetting stats every request ended up ditching the backend stats n moving everything to localStorage which was way cleaner. rly proud of how it turned out tbh

Tensteg

deployed to vercel — hit a build fail bc vercel.json route was missing ) in /(.*. fixed that. stats weren’t persisting bc the in-memory stats dict resets on every serverless request, switched everything to localStorage and removed the backend stats routes entirely. added idea saving to localStorage too — save btn stores the last generated idea, recents shows last 5 ideas in the sidebar, and saved ideas persist across page refreshes w no backend needed. page was crashing on load bc of a missing } in the default stats JSON string in loadStats(). then /generate was 500ing bc the openrouter api key was hardcoded in a public github repo and got exposed + invalidated lol. got a new key, moved it to vercel env vars, updated index.py to use os.environ.get() and redeployed. never hardcode api keys fr

Attachment
0
Tensteg

added stats — stats dict in index.py w/ /stats + /stats/update routes. frontend got renderStats(), loadStats() + saveStat() to fetch + show stats live after every click. hit a bug where const top was conflicting w/ browser’s window.top n breaking the whole page lol — renamed to best n fixed. stats now show total, top cat, top skill, top timeframe, via gen + via random all live in the UI rn.

Attachment
0
Tensteg

4:11 PM
went thru the whole index.py and fixed everything that was cooked rn — indentation was off so flask was crashing b4 even handling requests, jsonify was missing a ( throwing a syntax err on startup, API key check was nested in the wrong block so it literally never ran lol, and debug=Tru typo was stopping the server from starting at all. also threw out the entire old stylesheet ngl, was all tailwind cdn utility classes which were super verbose and added an external dep we didn’t need, so rewrote everything from scratch in pure css inside in index.html — no cdn, no external files, nothing. restyled every component, header, nav, sidebar, fields, btns, cards, all of it. app is running clean + css is fully ours now so we’re in a way better place to build on top of tbh.

Attachment
0
Tensteg

Started building a idea generator — input time, skill, category to get a full project idea.
Plan:
simple UI + Flask backend + AI output (title, features, tech stack)

Features rn:
AI-generated ideas
structured output (json style)
random fallback
basic UI

Issues faced:
api not working (wrong model / headers)
json vs form confusion (worked local, broke on deploy)
vercel setup problems
template path error
accidentally exposed api key (fixed)

I want to add the save and share feature next

Attachment
0