Simple demo CRUD Jogging API.
- Clone the repo
git clone https://github.com/civilcoder55/jogging-tracking-api.git-
make sure you have working mongodb instance
-
update env file with proper variables
cp .env.example .env- install npm dependencies
npm insatll- to run tests
npm run test- to build app
npm run build- to run app
npm start- access api at
http://localhost:3000/api/v1- access api docs at
http://localhost:3000/api/v1/docs- Clone the repo
git clone https://github.com/civilcoder55/jogging-tracking-api.git- update env file with proper variables
cp .env.example .env- build images and run containers
sudo docker-compose up -d- access api at
http://localhost:3000/api/v1- access api docs at
http://localhost:3000/api/v1/docs- access docker logs
docker logs -f jogging-app-nodejs- click image to download insomnia api collection [can work with postman]
- 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.