A Full-Stack web application built for users to share their awesome and exciting recipes ideas they have learnt or have invented
The full documentation for all api end point can be found here
Users are grouped into two categories registered users and non registered user, functionalities for each category are listed below
- Create an account
- Sign in as a user
- 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
This project has some limitations. The most notable ones are:
- Users can not view other user's profile or see their personal/favorite recipe list.
- Users can not change their password or reset it if forgotten.
- Users cannot deactivate their accounts
- Users need to obtain authentication token every 2 hours.
- Only authenticated users are allowed to use the app
- Clone the repo and enter directory
git clone [email protected]:williamolojede/more-recipes.git && cd more-recipes- Install the project's dependecies
npm install- Create
.envfile and copy content of.env.sampleto it and provide the appropriate values
cp .env.sample .env- Take a look at config.json and read this to setup postgres/sequelize to create a db then run migration
npm run migrate- Finally, start the server
npm run start:devView the web client live here
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
- 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}“orgit commitfor the interactive interface - Push to the remote branch -
git push origin {your_branch_name_as_described_above} - Open a pull request
What language was used to develop this application?
This is a full stack javascript application
Who can contribute?
Anyone!
William Olojede(@williamolojede — william.ng)
This is licensed for your use, modification and distribution under the MIT license.