The Notes App is an educational project designed to demonstrate the implementation of a full-stack web application. It allows users to create, manage, and share notes. The app also includes advanced features such as semantic search and AI-powered question answering based on user notes.
This project is built using modern web technologies, including React, Node.js, MongoDB, and OpenAI's GPT model for AI-powered features.
- User Authentication: Secure login and signup functionality with session persistence.
- Dashboard: A personalized dashboard for managing notes.
- Note Management:
- Create, edit, delete, and pin notes.
- Publish notes to make them publicly accessible.
- Public Profiles:
- View other users' public profiles and their published notes.
- Semantic Search:
- Search notes using vector embeddings for more accurate and meaningful results.
- AI-Powered Q&A:
- Ask questions about a user's public notes, and get AI-generated answers using OpenAI's GPT model.
- React 19: For building the user interface.
- React Router: For client-side routing.
- Tailwind CSS: For styling the application.
- Axios: For making HTTP requests.
- Node.js: For building the server-side application.
- Express.js: For handling API routes.
- MongoDB: For storing user data and notes.
- OpenAI GPT: For AI-powered question answering.