A secure, full-stack, cloud-based note-taking platform that uses OpenAI to automatically summarize your notes. Organize thoughts in tabs, find content instantly, and never lose the big picture again.
- Create, edit, and organize notes into folders/tabs
- One-click AI summarization using OpenAI GPT
- User authentication (Sign up / Log in with JWT)
- Cross-device access with cloud data sync
- MongoDB Atlas for persistent storage
- Optional support for file uploads (PDFs, images)
- Real-time note saving with full-text search
- Secure backend with hashed credentials and token-based auth
| Layer | Technologies |
|---|---|
| Frontend | React.js, React Router |
| Backend | Node.js, Express |
| Database | MongoDB Atlas, Mongoose |
| AI | OpenAI API (GPT-4) |
| Security | JWT, bcryptjs |
| DevOps | Docker |
git clone https://github.com/yourusername/ai-knowledge-vault.git
cd ai-knowledge-vaultcd backend
npm installCreate a .env file in the backend/ folder:
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
OPENAI_API_KEY=your_openai_api_keyStart the server:
npm startcd ../frontend
npm install
npm run devAll protected routes require an
Authorization: Bearer <token>header.
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/signup |
Register a new user |
| POST | /api/auth/login |
Log in and get JWT token |
| GET | /api/notes |
Get all notes |
| GET | /api/notes/:id |
Get one note |
| POST | /api/notes |
Create new note |
| PUT | /api/notes/:id |
Update a note |
| DELETE | /api/notes/:id |
Delete a note |
| POST | /api/notes/:id/summary |
Generate AI summary |
- This project uses OpenAI's gpt-4o model to generate automatic summaries of notes - (https://platform.openai.com/) .
- Summaries are stored alongside the original note in MongoDB.
Prithish Samanta
M.S. in Computer Science @ NC State University
This project is licensed under the MIT License.
Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.