Skip to content

Latest commit

 

History

3,212 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitHub Workflow Status GitHub issues JavaScript Style Guide

Real Dev Squad API

Table of Contents

About the Project

This Project serves the backend APIs required for Real Dev Squad web projects. This project is built in Express.js.

Prerequisites

  • The application uses node-config(documentation) for managing config.
  • Create a new file: config/local.js. Override the required config values from config/development.js and config/default.js into config/local.js.
  • Register the application for GitHub OAuth to get the clientId and clientSecret. Add the callback URL as http://<HOSTNAME>:<PORT>/auth/github/callback
  • Create an application on FireStore and generate a service file. Add the service file credentials in the local config (or your env variables) as a string. Make sure you convert all the escape sequence (newline) - \n with \\n in private_key field.
  • For running the project locally, Firebase Local Emulator Suite can also be used instead of using the remote DB. Steps for setting it up: CONTRIBUTING.md - Using Firebase Emulator Locally

Starting Local Development

Please install pnpm version 12 (see pnpm installation). No separate node version manager is needed: this repo pins node 26.8.1 via the devEngines.runtime field in package.json, so pnpm automatically downloads and uses the correct node for all scripts (pnpm dev, pnpm test, …). Verify with pnpm exec node --version, which should print v26.8.1.

Local Development Setup

Install all the packages with a frozen lockfile, so versions stay exactly as locked:

pnpm install --frozen-lockfile

Confirm correct configuration setup

This command should be successful, before moving to development.

pnpm validate-setup

TDD Local Development

Head over to TDD Tests Files List, and add the list of your new (or old) test files.

You can use wildcard '*' in the filepaths

Run TDD in watch mode. Exiting this command will print the coverage report. Try to achieve 100% coverage.

pnpm tdd:watch

Running a server in Dev mode

pnpm dev

What happens in production:

  • Install packages
pnpm install
  • Run tests
pnpm test
  • Prune dev dependencies
pnpm prune --prod
  • Run start command (with port information)
pnpm start

Note: These are handled automatically behind the scene when pushing to Heroku

Check out our video on how to setup the backend here: Wiki link

Read more about contributing to the project: CONTRIBUTING

About

The backend code for all our website-related apps

Topics

Resources

Contributing

Stars

74 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages