Check Mate
A reliable foundation for everyday tasks.
The starting point.
Task edits, completion dates, filters, and persistence need to agree. A task manager needs consistent state at its database boundary.
What I built.
I contributed the task/category model, validation, SQLite repository and CRUD operations, filtering, Vitest tests, GitHub Actions CI, and data-layer documentation, alongside planning and PR reviews.
Check Mate was a team product. My contributions focused on the data layer; the frontend and wider Express API were team work.
Follow the flow.
Define task/category data and validation rules.
Made to work.
The team’s application connects a JavaScript interface and Express API to a tested SQLite repository, with task status and completion dates kept consistent.
Decisions that matter.
- 01
Validate before persistence.
Task validation rejects inconsistent input before it reaches the repository.
- 02
Keep state changes together.
Status and completion dates must change consistently. Repository tests check these behaviours alongside CRUD and filters.
The work is open.
Implementation, decisions, and review history.
Built with
JavaScript / Node.js / SQLite / Express / Vitest / GitHub Actions