Inspiration
As students, we’ve all had the same problem: we take detailed notes, but when exam time comes around, we still have to manually turn those notes into flashcards. It feels repetitive and time-consuming. We wanted to build something that removes that extra step. PackNotes was inspired by the idea that studying should feel smoother and more efficient; your notes should automatically become your study materials.
What it does
PackNotes is a smart note-taking and study tool. As users write notes, they can manually tag terms using a simple ||term||:(definition) format, and the app also uses AI to automatically generate additional flashcards from the rest of the content. Once saved, the note instantly becomes a structured flashcard set. This allows students to go from writing → reviewing in seconds, without switching apps or rewriting content.
How we built it
We built the frontend using React and Tailwind CSS to create a clean, responsive interface with folder navigation and flashcard viewing.
On the backend, we used FastAPI (Python) to handle API endpoints and business logic. Flashcard generation is powered by Backboard AI, which processes note content and returns structured term-definition pairs.
For persistence, we used PostgreSQL with SQLAlchemy for ORM-based data modeling and relationships between users, folders, notes, and flashcards.
To demonstrate cloud integration, we deployed the backend using AWS Lambda and API Gateway, and connected it to a managed database instance.
Challenges we ran into
One of our biggest challenges was deployment: packaging FastAPI for AWS Lambda required adapting the app using Mangum and making sure dependencies and database connections worked in a cloud environment.
Another challenge was properly structuring the backend so manual flashcards and AI-generated flashcards could coexist cleanly. We had to carefully design the extraction logic and ensure database consistency between notes and flashcards.
Accomplishments that we're proud of
One of our biggest accomplishments was building a full-stack application that actually works end-to-end. We’re also proud of deploying our backend to AWS using Lambda and API Gateway while maintaining a structured FastAPI architecture. We successfully integrated AI-generated flashcards with manually tagged flashcards in a clean and consistent way, which required thoughtful backend logic and database design. Getting our database, AI service, and frontend all communicating smoothly was a huge milestone for us.
Most importantly, we built something we would genuinely use ourselves: a tool that turns raw notes into study-ready material instantly.
What we learned
We learned how to design a full-stack application from end to end, including database modeling, API design, AI integration, and cloud deployment. We also gained experience debugging real-world issues like environment variables, foreign key constraints, and serverless deployment quirks.
Most importantly, we learned how to turn an everyday student pain point into a functional, scalable product with the magic of teamwork.
What's next for PackNotes
First, we want to get our frontend and backend fully integrated with AWS Lambda. While we have our backend deployed on AWS Lambda, we were not able to connect the frontend and backend.
Next, we want to implement spaced repetition and smart study reminders so users can review flashcards at optimal times for long-term retention. We’d also like to add user authentication, shared study folders, and collaboration features for group studying.
On the AI side, we plan to improve flashcard quality by generating practice questions, summaries, and even quiz modes. Long-term, we see PackNotes evolving into a complete AI-powered study companion that adapts to how each student learns best.
Built With
- awsapigateway
- awslambda
- backboardai
- fastapi
- javascript
- postgresql
- python
- react
- sqlalchemy
- tailwindcss


Log in or sign up for Devpost to join the conversation.