Notation Pro is an AI-powered web application designed to enhance note-taking and organization. Leveraging advanced technologies, Notation Pro allows users to create, store, and manage notes efficiently, with the added benefit of AI-driven features for improved productivity and user experience.
- AI-Assisted Note Search: Quickly find notes using AI-driven search capabilities.
- User Authentication: Secure login and registration with GitHub OAuth integration.
- Note Management: Create, update, delete, and organize notes based on priorities.
- Favorites: Mark notes as favorites for easy access.
- Multi-language Support: Available in multiple languages including English, Hindi, and Odia.
- Customizable Appearance: Switch between light and dark themes, and customize the app's appearance.
- Vue.js
- Nuxt.js
- TypeScript
- Tailwind CSS
- Vue Router
- Vee-validate
- Vue Writer
- Node.js
- Express.js
- MongoDB
- Mongoose
- JWT (JSON Web Tokens)
- Axios
- Docker
- Docker Compose
- Vitest
- @vue/test-utils
- Node.js (v20 or later)
- Yarn (v1.22 or later)
- MongoDB (local or cloud instance)
- Docker (optional, for containerization)
- Clone the repository:
git clone <repository-url> cd notation-pro
- Install dependencies:
yarn install
- Set up environment variables:
Create a.env
file in the root directory and add the following:MONGO_DB=<your-mongodb-connection-string> CLIENT_ID=<github-oauth-client-id> CLIENT_SECRET=<github-oauth-client-secret> HASH=<secret-hash-for-jwt>
- Run the application:
- Development Mode:
yarn dev
- Production Mode:
yarn build yarn start
- Development Mode:
- Build and Run in Docker:
docker-compose up --build
- Development Mode:
yarn dev
- Production Mode:
yarn build yarn start
Open your browser and navigate to http://localhost:3000 to access the Notation Pro web application.
- Node.js (v20 or later)
- Yarn (v1.22 or later)
- MongoDB (local or cloud instance)
- Docker (optional, for containerization)
- Clone the repository:
git clone <repository-url> cd notation-pro-backend
- Install dependencies:
yarn install
- Set up environment variables:
Create a.env
file in thebck
directory and add the following:MONGO_DB=<your-mongodb-connection-string> CLIENT_ID=<github-oauth-client-id> CLIENT_SECRET=<github-oauth-client-secret> HASH=<secret-hash-for-jwt>
- Run the backend server:
- Development Mode:
yarn dev
- Production Mode:
yarn build yarn start
- Development Mode:
- Docker Setup:
- Build the Docker image:
docker build -t notation-pro-backend .
- Run the Docker container:
docker run -p 3001:3001 notation-pro-backend
- Build the Docker image:
- Login:
POST /auth/login
- Register:
POST /auth/register
- Get User:
GET /auth/me
- Get All Notes:
GET /notes
- Get Note by ID:
GET /notes/:id
- Create Note:
POST /notes
- Update Note:
PATCH /notes/:id
- Delete Note:
DELETE /notes/:id
- Get Favorite Notes:
GET /fav_notes
- GitHub Login:
POST /gitlogin
We welcome contributions from the community! To contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-branch
- Make your changes.
- Commit your changes:
git commit -m 'Add new feature'
- Push to the branch:
git push origin feature-branch
- Open a pull request.
This project is licensed under the GNU General Public License v3.0. See the LICENSE
file for more details.
For any questions or feedback, please reach out to me.