Task management app for the HMCTS developer challenge. Caseworkers can create, edit and delete tasks. Built with Express on the backend and React on the frontend.
You need Node.js v18 or above.
Start the backend:
cd backend
npm install
npm run devThen in another terminal, start the frontend:
cd frontend
npm install
npm startBackend runs on port 4000, frontend on port 3000.
cd backend
npm testThe backend exposes a REST API under /api/tasks. You can:
POST /api/tasksto create a new taskGET /api/tasksto fetch all tasksGET /api/tasks/:idto fetch a specific onePUT /api/tasks/:idto update a taskPATCH /api/tasks/:id/statusto just change the statusDELETE /api/tasks/:idto remove a task
More details on the request/response formats in backend/README.md.
Express and SQLite (sql.js) for the backend, React for the frontend, Jest and Supertest for tests.
I went with sql.js instead of Postgres or Mongo because there's nothing extra to install — it's pure JS. I also split app.js and server.js so tests can import the app without starting the server.
Frontend styling is plain CSS, loosely based on GOV.UK design.