Notty is a modern personal note-taking app with secure authentication, live dashboard stats, and fast note management. It combines a Next.js frontend with a Flask backend and stores data in SQLite so you can create, update, delete, and search notes in a polished full-stack interface.
- Email/password auth with secure session cookies
- Create, edit, and delete notes
- Search notes by title or content
- Lightweight note formatting with markdown-like rendering
- Live dashboard metrics: total notes, notes created this week, and last update
- Full-stack architecture with Next.js frontend and Flask API backend
frontend/— Next.js app, UI pages, note editor, authentication flowbackend/— Flask API, SQLite database, auth and notes routes
- Create and activate a Python environment.
- Install dependencies:
pip install flask flask-cors flask-sqlalchemy bcrypt- Run the backend server from the project root:
python backend/run.pyThe backend listens on http://127.0.0.1:5000 and automatically creates the SQLite database.
From frontend/:
npm install
npm run devOpen http://localhost:3000 in your browser.
POST /api/auth/login— login with email and passwordPOST /api/auth/register— create a new userGET /api/auth/profile— user profile infoPOST /api/auth/logout— logoutGET /api/notes/— list notesPOST /api/notes/— create a notePUT /api/notes/<id>— update a noteDELETE /api/notes/<id>— delete a noteGET /api/stats/— note statistics
- The backend uses SQLite at
backend/app.db. - CORS is configured for
http://localhost:3000. - Authentication relies on a cookie named
token.
- Add password reset and profile settings
- Add richer markdown support and note tagging
- Add deployment configuration for production