Skip to content

A simple solution to help you stay efficient and productive

License

Notifications You must be signed in to change notification settings

alwx/routinie-backend

Repository files navigation

Routinie: a simple solution to help you stay efficient and productive

Routinie

Routinie is a simple yet efficient habit tracker that allows you to make sure you progress towards your goals. It includes trackers and timers, streaks and public pages, and is packed with features that allow you to efficiently work on improving yourself.

This repository contains the backend for Routinie. There is also the frontend counterpart. Routinie was originally launched as a commercial product. However, it was not successful and I decided to publish its sources.

Why the sources can be interesting?

  1. It's a nice example of a full-featured web app that contains several API methods, logging and instumenting, e-mail sender, session manager, and Stripe integration.
  2. It can also be interesting for those who want to see how to deploy an app like that (even though the deployment process is relatively simple and straightforward in this particular case).
  3. The streak detection mechanism and the SQL queries to detect streaks can be interesting for everybody doing something like that in their apps (see pkg/db/trackers.go)

Development

  1. Install Docker: https://docs.docker.com/docker-for-mac/install/
  2. Install go
  3. make development-deps-up & to run Postgres, Redis, etc
  4. make run to run the application in development mode

The dev configuration can be found in configs/development.yml

Production

All the scripts to build and deploy the application to production are in deployments directory.

The production configuration can be found in configs/production.yml.

License

MIT License

About

A simple solution to help you stay efficient and productive

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages