Skip to content
Jesper edited this page May 15, 2023 · 7 revisions

Welcome to the CyberSim-Backend wiki!

Here you can find information on the source code of this project.

You will need some basic understanding on docker and docker-compose.

Main application logic and database related dependencies you should look into before jumping into the project:

  • socket.io for WebSocket communication
  • express for REST API
  • knex for DB selections and mutations
  • pg for Postgres DB

You can find:

  • DB related requests and mutations inside the src/models folder.

You can define the starting budget and polling percentage in src/models/game.js like we did with this pull request. For polling percentage, you need to add a decimal to the number (i.e. "55.0").

  • Socket communication handling in src/socketio.js.
  • REST API endpoint handling in src/app.js.
  • DB migrations and seeds inside the data folder.

Migrating new content into the game should be done using the Airtable template via the migration page. There is a built-in debugger to ensure new game content fits the database schema.