This is a web-based note-taking application developed using Node.js. The front end is built with EJS templating, while Express is utilized for the backend. The application incorporates Passport for authentication and MongoDB with Mongoose for database management.
User Authentication: Passport.js is employed for user authentication, allowing users to securely register, log in, and log out of their accounts. Note Management: Users can create, view, update, and delete their notes. Each note can contain various types of content, such as text, images, links, etc. Data Persistence: MongoDB is used as the database to store user information and notes, ensuring data persistence across sessions. Responsive Design: The application is designed to be responsive, providing a seamless experience across different devices and screen sizes.
Clone the repository:
git clone https://github.com/your/repository.gitInstall dependencies:
cd your_project_directory
npm installSet up environment variables: Create a .env file in the root directory and define the following variables:
PORT=3000 (optional)
MONGODB_URI=your_mongodb_uri
GOOGLE_CLIENT_ID=client_id
GOOGLE_CLIENT_SECRET=client_secret
GOOGLE_CALLBACK_URL=callback_url
Start the server:
npm startAccess the application at http://localhost:3000 in your web browser.
Express: Minimalist web framework for Node.js.
EJS: Embedded JavaScript templates for generating HTML markup.
Passport: Authentication middleware for Node.js.
MongoDB: NoSQL database for storing user data and notes.
Mongoose: MongoDB object modeling for Node.js.
Register for an account or log in if you already have one. Once logged in, you can create, view, edit, and delete your notes. Log out when you're done using the application.
Contributions are welcome! Please feel free to submit issues or pull requests.
- Search results layout change
- Note tag
- Multiple sort methods
- Note export, inport and share
This project is licensed under the MIT License.