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.
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
-
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
- Node.js installed with npm enabled, version used during devlopment:
-
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.
-
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
Pragati Bhattad |
Made with ❤️ by DSC VIT