Skip to content

DevWars/devwars-api

Repository files navigation


DEV

DevWars API

The Human Layer of the Stack

nodejs version expressjs version typescript version typeorm version postgres version Dependabot Badge

Welcome to the DevWars API codebase. This is the core backbone and interface for the day to day running of the DevWars platform.

What is DevWars?

DevWars.tv is a live game show for developers that is currently streamed on Twitch. People of all levels participate in an exhilarating battle to create the best website they can within 60 minutes. Teams are formed of 3 people, with the team's members each controlling a single language - HTML, CSS and JavaScript.

Getting Started

Prerequisites

Dependency Installation

Run npm install to install dependent node_modules.

Environment Variables

Make a copy of the .env.example file in the same directory and rename the given file to .env. This will be loaded up into the application when it first starts running. These are required configuration settings to ensure correct function. Process through the newly created file and make the required changes if needed.

Seeding The Database

Once you have everything setup in the environment variables folder, you will be able to seed the database. This process will generate fake data that will allow testing and usage of the API.

run npm run seed

Testing

Running npm run test will start the testing process, using the second set of connection details within the .env file. This process is enforced as a git hook before committing code.

Development

Running npm run dev will start a development server that will automatically restart when changes occur. Additionally running npm run dev:break will allow development with the inspector attached.

Contributors

This project exists thanks to all the people who contribute. We encourage you to contribute to DevWars but ensure to open a related issue first. Please check out the contributing to DevWars guide for guidelines about how to proceed.

License

You can check out the full license here

This project is licensed under the terms of the MIT license.