Skip to content

williamolojede/more-recipes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

269 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status Coverage Status Code Climate Issue Count

more-recipes

A Full-Stack web application built for users to share their awesome and exciting recipes ideas they have learnt or have invented

Technologies


  1. Nodejs
  2. Postgresql
  3. Express
  4. Sequelize
  5. React
  6. Redux

API Documentation

The full documentation for all api end point can be found here

Functionalities


Users are grouped into two categories registered users and non registered user, functionalities for each category are listed below

Non registered Users

  • Create an account
  • Sign in as a user

Registered Users

  • View Recipes
  • Create New recipe
  • Update created recipes
  • Delete recipe created
  • Add recipes to their favorites list
  • Upvote a recipe
  • downvote a recipe
  • Review a recipe
  • Update profile

Limitations


This project has some limitations. The most notable ones are:

  1. Users can not view other user's profile or see their personal/favorite recipe list.
  2. Users can not change their password or reset it if forgotten.
  3. Users cannot deactivate their accounts
  4. Users need to obtain authentication token every 2 hours.
  5. Only authenticated users are allowed to use the app

How to Install


  1. Clone the repo and enter directory
git clone [email protected]:williamolojede/more-recipes.git && cd more-recipes
  1. Install the project's dependecies
npm install
  1. Create .env file and copy content of .env.sample to it and provide the appropriate values
cp .env.sample .env
  1. Take a look at config.json and read this to setup postgres/sequelize to create a db then run migration
npm run migrate
  1. Finally, start the server
npm run start:dev

Demo


View the web client live here

Test


This app uses the following for testing:

  • For Backend testing run npm run test:server:dev.
  • For frontend testing run npm run test:client
  • For end-to-end test run npm run test:e2e

Contributing to the project


  • Fork this repository to your github account
  • Clone the repository - git clone https://github.com/{your_username_goes_here}/dman.git
  • Create your feature branch - git checkout -b {feature, chore or bug}-short_feature_desscription
  • Commit your changes - git commit -m “{commit_message_goes_here}“ or git commit for the interactive interface
  • Push to the remote branch - git push origin {your_branch_name_as_described_above}
  • Open a pull request

FAQ


What language was used to develop this application?

This is a full stack javascript application

Who can contribute?

Anyone!

Author


William Olojede(@williamolojedewilliam.ng)

License


This is licensed for your use, modification and distribution under the MIT license.

About

A platform for users to share the awesome and exciting recipes ideas they have learnt or invented

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors