Coder Social home page Coder Social logo

modern-todo-app's Introduction

Project Title

Modern TODO & Note sharing app

Documentation

A note sharing app is a digital tool designed to help users share and collaborate on notes with others. This type of app allows users to create, edit, and share notes in real-time. One of the key features of a note sharing app is the ability to share notes with others. Overall, a note sharing app is a useful tool for anyone looking to collaborate and share information with others, whether they are working on a group project or sharing information with friends and colleagues. It provides a convenient and efficient way to stay organized and communicate with others, helping users to be more productive and effective in their work.

To run this project, you will need to add the following environment variables to your .env file

DB_URL

JWT_SECRET_KEY

cloudinary credential

CLOUD_NAME

API_KEY

API_SECRET

Features

  • Create task for daily productivity
  • Ceate notes and share with other to be more productive and effective in their work.
  • Real time one to one or group message system.
  • Realtime notification system.

API Reference

Register route

  POST /api/register

Login route

  POST /api/login

User route

1. rofile Picture update

   PUT /api/user/update/profile/image

2. Update profile name

   PUT /api/user/update/profile/image

3. Update user email address

   PUT /api/user/update/profile/email

4. Update user username

   PUT /api/user/update/profile/username

5. Update profile privacy

   PUT /api/user/update/profile/privacy

6. Search user by their name or username

   GET /api/user/update/find/user

7. Fetch user profile details

   GET /api/user/fetch/user/:id

8. Reset account password

    PUT api/user/reset/password

9. Follow a user

    PUT api/user/follow/:id

10. Fetch follower following list

    GET api/user/fetch/follower/:id

Task route

1. Create a new task

    POST /api/task/create

2. Fetch user related task

    GET /api/task/fetch

3. Update task

    PUT /api/task/update/:id

3. Pinned task

    PUT /api/task/pin/:id

4. Unpinned task

    PUT /api/task/unpin/:id

5. Update task status

    PUT /api/task/update/status/:id

6. Update task priority

    PUT /api/task/update/priority/:id

7. Delete task

    DEL /api/task/delete/:id

Notes route

1. Create a new note

    POST /api/note/create

2. Fetch feed notes

    GET /api/note/feed

3. Pin note

    PUT /api/note/pin/:id

4. Bookmark note

    PUT /api/note/bookmark/:id

4. Update note

    PUT /api/note/update/:id

5. Delete note

    DEL /api/note/delete/:id

6. Like note

    PUT /api/note/like/:id

7. Dislike note

    PUT /api/note/dislike/:id

8. Fetch followers feed

    PUT /api/note/follower/feed

9. Fetch note's comment

    PUT /api/note/comment/:id

Notes route's comment route

1. Create comment for note

    POST /api/note/comment/:id

2. Edit comment

    PUT /api/note/comment/edit/:id

3. Delete comment

    DEL /api/note/comment/:id/:postId

4. Like comment

    PUT /api/note/comment/like/:id

5. Dislike comment

    PUT /api/note/comment/dislike/:id

Chat route

1. Create one to one chat

    POST /api/chat/

2. Fetch all user related chat

    GET /api/chat/

3. Create group chat

    POST /api/chat/group

4. Update group profile image

    PUT /api/chat/group/image/:id

5. Update group name

    PUT /api/chat/group/name/:id

6. Update group privacy

    PUT /api/chat/group/privacy/:id

7. Add new members in the group

    PUT /api/chat/group/add/members/:id

8. Add mods in the group

    PUT /api/chat/group/add/mod/:id

9. Delete group

    Delete /api/chat/:id

10. Bookmark group chat

    PUT /api/chat/group/bookmark/:id

11. Fetch a single chat

    GET /api/chat/single/:id

12. Block chat

    GET /api/chat/block/:id

13. Search chat

    GET /api/chat/search_chat

Message route

1. Create message

    POST /api/message/:id

2. Fetch all messages related to a particular char

    GET /api/message/:id

3. Edit message

    PUT /api/message/:id

4. Delete message

    DEL /api/message/:id

5. Like message

    DEL /api/message/like/:id

6. Save message

    DEL /api/message/bookmark/:id

Notification route

1. Get notifications

    GET /api/notification

Tech Stack

Client: React, React-router-dom, chakraUI, socket.io-client

Server: Node, Express, socket.io, mongoose, jwt, bcrypt, cors

Database: MongoDB

Run Locally

Clone the project

  git clone [email protected]:avijit-gos/Modern-TODO-app.git

Go to the backend folder

  cd backend

Install dependencies

  npm install

Start the server

  npm run dev

Go to the frontend folder

  cd frontend

Install dependencies

  npm install

Start the server

  npm start

Screenshots

App Screenshot

modern-todo-app's People

Contributors

avijit-gos avatar newbieat69 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.