/calorie-king

Count your calories like a king! 👑 Full-stack Node.js/React app with SQLite db. 🍔🍟🍕 Tested with Mocha.

Primary LanguageJavaScriptMIT LicenseMIT

👑 Calorie King Build Status

A gamified calorie counting app with a mobile-first design. Deployed live on Glitch!

Tech stack: Node.js w/ Express, React w/ create-react-app, Mocha, SQLite.


preview image


This app can be deployed to Glitch to run in its container system, or hosted anywhere where Node.js can run.

Users arrive at the root path (/) and are forwarded to a personal dashboard at a private link location.

Their username is generated from random friendly words. E.g. /dashboard/energetic-minibus-snickerdoodle.

All data is stored locally in an SQLite database in ./data/sqlite.db.


Build

The app is split up into a fully static front-end with a back-end to receive the routes and access the database.

  • Front-end

    • cd ./front-end/
    • npm install
    • npm run build
    • npm run test
  • Back-end

    • npm install
    • npm run test

Run

npm run start

Example console output:

> calorie-king@1.0.0 start C:\Users\Andrew\Documents\GitHub\calorie-king
> node server.js

Database ready to go!
Calorie King listening on port 56037

Tests

For the back-end, Mocha w/ supertest is used to mock routes as well as database calls to confirm that the data is stored/updated/deleted correctly.

The front-end tests are a work-in-progress but Jest tests that the React app can be mounted succesfully.


MIT license (c) healeycodes