Giter VIP home page Giter VIP logo

todo-list-backend's Introduction

TODO List Application

Creating and sharing list containing todo tasks.

Table of contents

Files and architecture

  • Frontend - Angular
    • components
      • dashbaord - to show all lists, add ,remove task and share lists among friends
      • subtask - to show nested tasks
      • friends - to send and receive friend request and add and remove them from your friends list
      • login - to login and forgot password of user's account
      • signup - to create a new account
    • services
      • app - call all api's related to user
      • list - call all api's related to user's lists
      • socket - to emit and listen to events for RTC(Real Time Communication)
    • pipes
      • search - to search tasks or subtasks from list
      • filter - to filter users
      • filter-friends - to filter friends and friendRequests
  • Backend - Node.js
    • config - Redis and MongoDB configuration
    • controllers - contains function for each route
    • libs - libraries
    • middlewares - for checking authorization
    • models - Database Models and schemas
    • routes - api routes
    • app.js - connection and imports

Environment

Installation

  1. Clone or Download Zip
git clone https://github.com/sauravgarg001/TODO-list-backend.git
  1. Goto TODO-list-backend directory
cd TODO-list-backend
  1. Install all dependencies
npm install
  1. Signup and Login on redislabs.com

  2. Create database and copy Endpoint and Redis Password, update the given info in config/configApp.js file.

redis: {
        url: 'redis://<endpoint>',
        password: '<redis password>'
    }
  1. Run server
npm start
  1. Open given below url on browser
http://localhost:3000/
  1. Clone or Download Zip
git clone https://github.com/sauravgarg001/TODO-list-frontend.git
  1. Goto TODO-list-frontend directory
cd TODO-list-frontend
  1. Install all dependencies
npm install
  1. Run server
ng serve
  1. Open given below url on browser
http://localhost:4200/

Functionality

  • User can signup and create account and then login to dashboard
  • Forgot password option can be used in case the user doesn't remember password. An OTP is send to the registered email of user. After entering the correct OTP and new password the passsword gets changed.
  • At dashboard user has an option to create new list or his previous active list will appear if any.
  • User can create subtasks of any task, and there is also an option to search each task at any level.
  • User can select any list from his lists to be in active list.
  • If the User has edit access he/she can add or remove tasks from the list.
  • If the user is Owner of list he/she can add, remove or change access to edit or readonly for contributers.
  • All the contributers of list can see the updated list in real time.
  • User can send or accpet friend requests from the users list.

Technologies

Authors

Important links

References

todo-list-backend's People

Contributors

sauravgarg001 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.