Skip to content

Routes by Feature

Nick-Yawn edited this page May 6, 2022 · 16 revisions

F0: User Auth

Frontend

  • /home: splash page with login / signup modal

API

  • POST /api/session? : existing user login
  • POST /api/users: new user registration
  • GET /api/users/logout?: logout

F1: Boards

Frontend

  • /boards - logged-in users dashboard to their boards

API

  • GET /api/boards - grid layout of boards
  • POST /api/boards - new board
  • PUT /api/boards/:board_id - edit board
  • DELETE /api/boards/:board_id - delete board

F2: Lists & Cards

Frontend

  • /boards/:board_id - lists & cards for a single board

API

Lists

  • GET /api/boards/:board_id - collection of lists, eager loaded on board
  • POST /api/boards/:board_id/lists - create a new list
  • PUT /api/lists/:list_id - edit a list title
  • DELETE /api/lists/:list_id - delete list

Cards

  • GET /api/boards/:board_id - collection of cards, eager loaded on list
  • POST /api/lists/:list_id/cards - create a new card
  • PUT /api/cards/:card_id - edit card
  • DELETE /api/cards/:card_id - delete card

F3: Sharing Boards

API

  • GET /api/boards/:board_id/users - list of users who have access to a single board
  • POST /api/boards/:board_id/users - granting access to a user to a single board
  • DELETE /api/boards/:board_id/users/:user_id - removing access from a user to a single board

F4: Comments

API

  • GET /api/boards/:board_id - comment list, eager loaded on cards
  • POST /api/cards/:card_id/comments - create a new comment
  • DELETE /api/comments/:comment_id - remove a comment

Bonus 1: Board Settings

Frontend

  • /boards/:board_id - settings for a single board

API

  • GET /api/boards/:board_id/settings - list of customizable settings for a single board
  • POST /api/boards/:board_id/settings - save settings
  • PUT /api/boards/:board_id/settings - update settings

Bonus 2: Workspaces

Frontend

  • /boards

API

  • GET /api/workspaces - collection of workspaces
  • POST /api/workspaces - creating a new workspace
  • PUT /api/workspaces/:workspace_id - update the workspace title
  • DELETE /api/workspaces/workspace_id - removing the workspace

Clone this wiki locally