Skip to content

GDGVIT/pipo-backend

Repository files navigation

user

🐧PiPo ~ Post In Post Out web backend

This is a service to create your personalized scrapbook.

Tests codecov GitHub Super-Linter

An online scrapbook website where the user chooses a challenge and tries to maintain the streak for the number of days the challenge specifies. Upon completing the challenge the user earns the badge which will be displayed in the user's profile. Incase the user loses the streak the user can reclaim it by spending points for that day and in order to obtain points the user has to challenge other users to a contest of their choice and the winner will be decided by the public.

This repository is under development.

Functionalities and routes

Ver 1:

  • Auth route (name, email)
    • Post(signup)
    • Post(login)
  • Posts route
    • Get all users + recent posts route(sorted by points)
  • User route (username, name, email, completed badges[badgeName], in-progress badges, followers, following, friends)
    • Get details
  • Users route
    • Get all posts for a user (sorted by date/time)

  • Badge
    • (deprecated route) Create a badge
    • Join a badge ( user-badge )
    • Create a post (route change)
  • Get posts for a badge
    • Get request
  • Post a post
    • Post request

Ver 2:

  • Route for checking time
  • Challenge
    • Post create a challenge
    • Send a challenge
    • Accept a challenge
    • Timer for the challenge
    • Complete in the challenge(win/loose), change point structure
  • Leaderboard
    • Get all ongoing and upcoming challenges

Getting started

Instructions to run

  • Pre-requisites

    • Node.js installed with npm enabled, version used during devlopment:
      • Node.js v10.19.0
      • npm v6.14.4
    • An active internet connection to connect to the database - All the npm packages mentioned in the package.json
  • Clone the repo

  • Command to setup the environment

npm init
  • Command to install dependencies
npm install
  • Add a .env file with contents as present in the sample .env

  • Command to run the server in the development environment

npm run devStart
# or
npm start

Your app should now be running on localhost:8080.

Additional Information

  • On Linux, UNIX and Mac, running the following command adds ./node_modules/.bin to the path.

    source ./activate

    This makes it easier to run locally installed command packages. This won't be required in many IDEs like Webstorm, but we thought it's a good idea to include it anyway.

  • Run all tests using:

    npm test

Contributors

Pragati Bhattad

Pragati Bhattad

github linkedin

Made with ❤️ by DSC VIT

Releases

No releases published

Packages

No packages published