Sivanesh-S / task-management

A minimal and essential task management app.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Resources

Used Stack and technologies

  • MERN Stack - MongoDB, Express, React, Node.js
  • Used two types of authentication,
    • basic using JWT.
    • And for OAuth lovers for quickly accessing and using I used Google OAuth2.0 for authentication. With complete setup residing between client and server.
  • For designing and prototypes I learned and used Figma. One of the awesome tool for designing. My Figma Link
  • Components created as a mixture by me using both my designs and ant design.
  • Client made with the latest ES6 and hooks way.
  • State management is handled by native implementations with the help of
    • React Context and providers
    • useReducer

Folder structure

client; // contains all client's code (React)
server; // contains server code (Mongodb, express, Node)

MongoDB Connection

  • Create a online Atlas Mongo DB connection from this link.
  • Add them to my project by creating a file .env at location ./server and the file will reside in server/.env.
PORT=8080
JWT_PRIVATE_KEY=<your jwt private key>
MY_MONGODB_USERNAME=<your mongodb username>
MY_MONGODB_PASSWORD=<your mongodb password>

Then the database will be setup and collections, databases will be handled automatically by my server.

Google authentication

  • As I don't have time to host my server Google authentication won't be working. 😢.
  • If you're interested, create a dummy app in Google Developer Console. And append the clientId in the file App.js and AuthPage.js there are the two places where we seek google for user authentication.
  • Once done it will be completely setup

PS: I know completely running and up checking my setup is difficult. I'm writing this in the last hour so I too couldn't give the complete docs with absolute perfection.

Steps to start the app

cd server
npm run dev
cd ../client
npm run start

Any doubts or issues feel free to contact me 😃

About

A minimal and essential task management app.


Languages

Language:JavaScript 91.9%Language:CSS 5.9%Language:HTML 2.1%