/TeamPulse

Project team #03

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

Teampulse

TeamPulseScreen

Important study / project links

Installation of the necessary software

Download and start the project

  • Command git clone https://github.com/Neolker/TeamPulse or by using the GUI in VSCode
  • Open two terminals, the first for server:
    • From the server folder cd .\backend\
    • Command npm i installs all necessary packages (Express.js etc.), just start once
    • Server then run the command npm start
    • Should it then server run on http://localhost:8000
    • To stop the server you can then use the keyboard shortcut CTRL + C, by type Y and confirmation ENTER
    • Rebooting with npm start - for example after a change in the server code (don't forget to save!) or you can use the arrow up in the terminal to scroll through commands from the history
  • In the second terminal we run client:
    • Again, we move to the client folder cd .\frontend\
    • Command npm i installs all necessary packages (React.js etc.)
    • Client then run the same npm run dev command
    • Client should start itself in the browser at: http://localhost:5173/
    • Exit client then use the same shortcut CTRL + C

API Documentation

  • POST requests pass parameters in JSON format in Body, mostly data from forms
  • GET requests pass parameters that are part of the URL (route)
URI METHOD INPUT OUTPUT
company/create POST session, name, description, owner_id awid, name, description, owner_id, users[] {id, roles[]}
company/get GET session, awid awid, name, description, owner_id, users[] {id, roles[]}
company/update POST session, awid, name, description, owner_id awid, name, description, owner_id, users[] {id, roles[]}
company/view GET session companies[] {awid, name, description, owner_id, users[] {id, roles[]}}
company/add-user GET session, awid, user_id, roles[] awid, name, description, owner_id, users[] {id, roles[]}
company/delete-user GET session, awid, user_id awid, name, description, owner_id, users[] {id, roles[]}
workspace/create POST session, awid, name, description, owner_id id, awid, name, description, owner_id, members[] {id}
workspace/get GET session, id id, awid, name, description, owner_id, members[] {id}
workspace/update POST session, id, name, description, owner_id id, awid, name, description, owner_id, members[] {id}
workspace/delete POST session, id deleted
workspace/view GET session workspaces[] {id, awid, name, description, owner_id, members[] {id}}
workspace/add-member GET session, id, user_id id, awid, name, description, owner_id, members[] {id}
workspace/delete-member GET session, id, user_id id, awid, name, description, owner_id, members[] {id}
task/create POST session, worspace_id, name, description, solver_id, deadline, status worspace_id, id, name, description, solver_id, deadline, status
task/get GET session, id worspace_id, id, name, description, solver_id, deadline, status
task/update POST session, id, worspace_id, name, description, solver_id, deadline, status worspace_id, id, name, description, solver_id, deadline, status
task/delete POST session, id deleted
task/view GET session tasks[] {worspace_id, id, name, description, solver_id, deadline, status}
user/create POST session, firstname, lastname, email, password, active, superadmin id, firstname, lastname, email, session, password, active, superadmin
user/get GET session, id id, firstname, lastname, email, session, password, active, superadmin
user/update POST session, id, firstname, lastname, email, active, superadmin id, firstname, lastname, email, session, password, active, superadmin
user/passwd POST session, id, password id, firstname, lastname, email, session, password, active, superadmin
user/view GET session users[] {id, firstname, lastname, email, session, password, active, superadmin}
user/login POST email, password id, firstname, lastname, email, session, password, active, superadmin
user/logout POST session logouted