Git Product home page Git Product logo

trelloclone's Introduction

Trello clone (Visit Now)

made with react made with scss made with redux made with multermade with moongose made with bcrypt made with express made with passport last-commit code-size


๐Ÿ’Ž Trello is a web-based Kanban-style list-making application and this projects clones it down,
adding most of the features which can give a user to add some kanban to their projects idea.

Peek a Boo!

Peek

ER Diagram

ER DIAGRAM

Run server

cd server && npm run dev

Run client

yarn start

Wanna Clone it ?

  • git clone {this repo}

  • create a mongodb Atlas Cluster and get connection uri

  • make sure you have two now secrets

    • mongo_uri = "connection uri with user and password"
    • jwtsecretkey="random string"
  • add a .env file and add same two secrets like .env.sample file so work in development mode.

  • deploy / Redeploy

Redeploy

UI/UX -DESIGN

  • linear-gradient(135deg, #0079bf, #5067c5)
  • background-color: #0079bf;
  • box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);

Progress

  • Generate Server
    • node + express
    • mongodb connection + mongoose
      • trello-clone db
        • users collection
    • auth - local SignIn using Passport
    • jwt
    • bcrypt to hash pass
  • Generate Client
    • Create a react app
    • use react-bootstrap/ant design or write from scratch
    • Add redux-logger
    • Add redux-thunk
  • Add local auth to server
  • TODO: Add client data validation on server use JOI
  • Add signin and signup to client
    • Create Form for Both
    • Add Client Side Validation of data @server, checking and showing errors: use joi
    • save token after signin inside localstorage
  • Add boards service to server
  • User can create/view boards on client
    • Create new Board
      • Add ownerId
    • View all the boards
      • show user's boards not of others
  • view single board using id param to route
    • @server : add GET /boards/id=3027593 route and route handler
  • User can create/view lists for boards
    • @server
      • create new list in board, POST : /lists/:boardId
      • get all , GET: /lists/:boardId
    • @client : create board Component
      • get all lists in a board
      • create new list
    • Restrict only the owner to create a new list
  • create/view cards in list
    • @client
    • @server : service to server
  • Drag Cards from one list to another
  • make logged in user visible on navbar
  • user can edit the card
  • User can add image/attachment to a card (https://codeburst.io/image-uploading-using-react-and-node-to-get-the-images-up-c46ec11a7129).
  • npm multer
  • Add redux and create basic store files
  • Create activities service on server
  • All activities are logged
    • dragging card activity
    • creating card activity
    • create list activity
    • card Update Activity
      • card title change
      • card photo change
      • card descritption change
  • user can add description to card
  • Style refactor
  • Delete Board
  • Delete List
  • Show all the available boards on a specific board so it is easy to switch b/w boards
  • Deploy front end and backend

Stretch

  • Add funtionality to boards to mark them favorites
    • show all fav boards under fav sections
  • Restrict only the board owner to
    • Access his/her boards only
    • create a list or create a card
  • User can add other members to a board
  • Update restrict to board owner to include members
  • User can re-arrange lists
  • restrict to board members
  • User can assign a member to a card
  • restrict to board members
  • User can add comments to a card
  • restrict to board members
  • Add Socket-io for real time board sharing
  • Arrange Lists and card and change order
  • Archieve Cards and Lists

Thank you Links

Special Thanks to Coding Gardan CJ for the project idea

he used Featherjs and Vue to made the same but I am going to make it in React and backend from scratch, will be

taking the pointers about what to implement and using his entity relationship Diagram to make my database structure.

trelloclone's People

Contributors

jugshaurya avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

trelloclone's Issues

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.