Skip to content
Caleb Cohen edited this page Jul 11, 2023 · 55 revisions

New Developer Onboarding

Welcome to Together! We're excited to have you and hope you'll find these resources helpful. If at any point there is some confusion, feel free to reach out to Eric or Caleb on Discord or join the 100Devs thread.

Onboarding resources:

Engineer Team Introduction

Together is designed not only to create a product that provides value but to be an opportunity for learning and group experience. Together is open to all varying skill sets and encourages peer programming. Get started by following the instructions below and finding an issue that interests you!

Once you've completed all the tasks below, please join us in Discord. We collaborate from the 100Devs discord and have a group thread.

Tools, Accounts & Downloads

Prerequisites

Anyone is welcome to join Together. If you're a beginner, we ask that you review the documents below before joining an issue. The React Scrimba Course does not need to be completed, but having a basic understanding of React is heavily recommended.

Development Machine Setup

  • Fork the Together repo (See contributing instructions.)
  • Clone the forked repository to your local computer. (See contributing instructions.)
  • Complete and store .env file in the server/config folder
  • Execute node -v and ensure you're on version 16.16.0. You can utilize NVM to utilize 16.16.0.
  • Execute npm install in the root folder.
  • npm run dev-concurrent in the root folder. This starts the front-end and back-end in one terminal.

.env template setup

Please copy and paste this template into a new .env file instead of removing .example from the server/config folder

Keeping DB_STRING as mongodb://127.0.0.1:27017/ will generate an instanced MongoDB in your local. To view your database, you can use compass. You can also create a MongoDB database on MongoDB.com, but would need to update the DB_String to connect to MongoDB.

# Please copy and paste this template into a new .env file instead of removing .example from the file name
# Do not change PORT or OAUTH_REDIRECT_URL
# DB_STRING will create a MongoDB instance on your computer but can be changed to a mongodb.com cluster
PORT = 2121
DEV_DB_STRING=mongodb://127.0.0.1:27017/
DB_STRING = mongodb://127.0.0.1:27017/
DISCORD_CLIENT_ID = 1039303417199345684
DISCORD_CLIENT_SECRET = DISCORD_CLIENT_SECRET
OAUTH_REDIRECT_URL = http://localhost:3000/
MOCK_USER=true
NODE_ENV=development
ESLINT_NO_DEV_ERRORS=true

DISCORD_CLIENT_SECRET is not required unless you need to test the discord login. MOCK_USER=true and NODE_ENV=development allow Together to generate a fake user testuser#1234 for development purposes. If you need DISCORD_CLIENT_SECRET, contact Chanel, Eric, Matt, or Caleb.

It is not recommended for beginners, but you can create your own DISCORD_CLIENT_ID and DISCORD_CLIENT_SECRET by going to Discord Developer Portal; you must set the redirect to http://localhost:2121/auth/discord/callback for Together to function.

To start the Test Event API, execute this command:

  • npm run dev-concurrent-mockServer