TodoBackend is a simple backend application that provides endpoints for user authentication and managing notes. This project includes features for user registration, login, creating notes, updating notes, and deleting notes.
-
Login
- Endpoint:
user/login
- Method:
POST
- Description: Authenticate a user with email and password.
- Request Body:
{ "email": "user@example.com", "password": "userpassword" }
- Endpoint:
-
Signup
- Endpoint:
user/register
- Method:
POST
- Description: Register a new user.
- Request Body:
{ "name": "John Doe", "email": "user@example.com", "password": "userpassword" }
- Endpoint:
-
Get All Notes
- Endpoint:
/notes
- Method:
GET
- Description: Retrieve all notes for the authenticated user.
- Headers:
auth: token
- Endpoint:
-
Query Parameters:
- page: (optional, default: 1): The page number to retrieve.
- limit: (optional, default: 10): The number of notes per page.
- search: (optional): Search notes by title.
- sort: (optional, default: asc): Sort notes by title in ascending (asc) or descending (desc) order.
GET /notes?page=2&limit=5&title=meeting&sortby=desc
-
Create Note
- Endpoint:
/notes/create
- Method:
POST
- Description: Create a new note.
- Headers:
auth: token
- Request Body:
{ "title": "Sample Note", "notes": "This is a sample note.", "category": "notes" }
- Endpoint:
-
Update Note
- Endpoint:
/notes/update
- Method:
PATCH
- Description: Update an existing note.
- Headers:
auth: token
- Request Body:
{ "id": "note_id",//through params "title": "Updated Note Title", "notes": "Updated content of the note." }
- Endpoint:
-
Delete Note
- Endpoint:
/notes/delete
- Method:
DELETE
- Description: Delete an existing note.
- Headers:
auth: token
- Request Body:
{ "id": "note_id" //through params }
- Endpoint:
- Node.js
- npm
- Clone the repository
git clone https://github.com/deepak65190/todoBackend
- Navigate to the project directory
cd todoBackend
- Install dependencies
npm install
- Start the server
node index.js or use nodemon
- The application will be running on
http://localhost:8080
## Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## License
Distributed under the MIT License. See `LICENSE` for more information.
## Contact
bisht65190@gmail.com
Project Link: https://todobackend-eb7k.onrender.com
---
Feel free to customize the placeholders with your actual information. This README format provides a clear and structured presentation of your project's endpoints, setup instructions, and other essential details.