Skip to content

civilcoder55/jogging-tracking-api

Repository files navigation

Jogging Tracking API

Simple demo CRUD Jogging API.

Usage without docker

  1. Clone the repo
git clone https://github.com/civilcoder55/jogging-tracking-api.git
  1. make sure you have working mongodb instance

  2. update env file with proper variables

cp .env.example .env
  1. install npm dependencies
npm insatll
  1. to run tests
npm run test
  1. to build app
npm run build
  1. to run app
npm start
  1. access api at
http://localhost:3000/api/v1
  1. access api docs at
http://localhost:3000/api/v1/docs

Usage with docker

  1. Clone the repo
git clone https://github.com/civilcoder55/jogging-tracking-api.git
  1. update env file with proper variables
cp .env.example .env
  1. build images and run containers
sudo docker-compose up -d
  1. access api at
http://localhost:3000/api/v1
  1. access api docs at
http://localhost:3000/api/v1/docs
  1. access docker logs
docker logs -f jogging-app-nodejs

API Client Collection

  • click image to download insomnia api collection [can work with postman]

screens

todo

  • Authentication: Create account / login / logout.
  • When logged in, a user can view, edit and delete entered jogging times.
  • Implement three roles with different permission levels: a regular user would only be able to CRUD on their owned records, a user manager would be able to CRUD users, and an admin would be able to CRUD all records and users.
  • Each time entry when entered has a date, distance, and time.
  • Filter by dates from-to.
  • Report on average speed & distance per week.
  • Demonstrate how your API works by writing examples using a REST client like Postman, cURL, or using swagger.