/suivie

Tracking system inspired by bullet journals

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

SuiVie

Logo by Laura KACZMAREK

Codacy Badge GitHub Workflow Status (branch) cypress GitHub tag code style: prettier

This application is inspired by the Bullet Journal's trackers tool. It aims to track your habits like sports, food, hygiene, self-care, expenses... Even if it works on desktop, it is designed for mobile devices.

Table of Contents

Main features

📄 Create tracker with a name, begin date, color, duration, frequency and add as much objectives as you want

✅ Validate a tracker today or in the past

🚀 Client-only application, no internet connection needed (data is stored in locale storage)

👻 Hide a tracker for one day if you are sure you will not validate it or if you want to focus your attention on the other ones

📊 View statistics about your trackers by weeks, month or year

Development

Pre-requisites

Main development scripts

This project was bootstrapped with Create React App, using the Redux and Redux Toolkit template. You can learn more in the Create React App documentation.

  • npm install
  • npm start
  • npm test

Release

npm run release (on develop branch, then PR to main branch)

This project use conventional commits and standard-version package.

The application is deployed on the Github repository page here.

About

Why this project? Why I built it this way?

I wanted to build an application with a modern React stack and CI tools (Typescript, Github Actions, standard-version, Cypress, Prettier & ESLint). I like stats and I like to organize my life around 2 electronic productivity tools: todo lists and calendars. I thaught Bullet Journal trackers was a good idea to complement them 🙂

How I work on this project?

I wanted to focus on Github tools in order to have everything I need in one place:

  • I write notes in a Kanban table (Project tab)
  • I create an issue related to the note with details and labels (Issue tab)
  • I work on a branch and I open a Pull Request when it's done (PR tab)
  • On the PR, the test, linting and code security scripts are run (Actions tab)
  • I merge the PR after rereading my code.
  • Eventually, I create a new version of the application (see CHANGELOG.md)

This project uses

React_logo_wordmark Typescript_logo_2020 svg mui recharts Redux eslint prettier cypress