Skip to content

brian-ogilvie/everyday-heroes-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Everyday Heroes API

This RESTful API serves the Everyday Heroes App.

Repository for the front-end web app is here

What is Everyday Heroes?

Everyday Heroes uses the vocabulary of online gaming in order to encourage users to improve their lives and the community around them. Users complete quests, gain experience points, and level up over time by practicing the daily habits outlined in the program. Your progress through the program is measured by the practice of Five Heroic Habits: Focus, Power, Balance, Treasure, and Tribe. Each day, users are assigned small, actionable tasks which improve your ability in each of the heroic habits. Our goal is to improve the world by beginning with ourselves. We can be better husbands, wives, and parents. We can be more productive employees. We can contribute more to our communities. We can take better care of our bodies. We can allow space for our own mental well-being. All of these things are possible! By taking small, measurable actions every day, we will--in time--become the heroes we were meant to be.

Development

This project was built using Ruby on Rails to create a RESTful API, utilizing bcrypt and JSON Web Token for secure user authentication.

Stack information

Stack Layer Technology Used
Database Postgresql
API Ruby on Rails
Web Front-end React

Database Schema

Entity Relational Diagram ERD
Table Relations

A User belongs to one Tribe
A Tribe has many Users

A User belongs to one Level
A Level has many Users

A User has many Daily Tasks
A Daily Task belongs to many Users

A User has many Challenges
A Challenge belongs to many Users

A Challenge belongs to one Level
A Level has many challenges

A Challenge belongs to one or many Heroic Habits
A Heroic Habit has many challenges

A Daily Task belongs to one Level
A Level has many Daily Tasks

A Daily Task belongs to one Heroic Habit
A Heroic Habit has many Daily Tasks

Priority Matrix priority matrix

Aknowledgements

Lean JSON responses based on this tutorial by Collin Schaafsma.

Secure user authentication for a stateless (RESTful) API based on this tutorial by Hristo Georgiev

About

A RESTful API serving all the data for the Everyday Heroes App

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages