Local Devving:
To develop:
npm run dev:docker
npm run dev:seed
npm run dev:turbo
To run a production version:
npm run dev:docker
npm run dev:seed
npm run rebuild
npm run dev:deploy
Bonus!:
To run the e2es, after performing the prod version steps, do npm run test:e2e
- Docker Desktop
- If you are on Windows, make sure that you switch your Docker Desktop to Linux containers. You won't be able to spin up the docker compose containers without it!
- Node.js
- Clone the repo
https://github.com/kittrgg/monorepo.git
- Checkout the develop branch
git checkout develop
-
You will need a Twitch API token to run kittr. Unfortunately, we can't provide you with one since this token is individualized. To get your Twitch token, visit your Twitch developers console and create an application token. (For the URLs that it asks for, you can use http://localhost:3000.) Make sure you keep the Client Secret that you create in a safe place for the next step!
-
You will need to create a few .env files according to the examples provided. (More info coming)
-
Run
npm install
. IMPORTANT: Notice thedev
! This will install the dependencies for all of the containers rather than just the root dependencies. -
Run the docker-compose and turbo to bring up the containers to your local host.
npm run dev:docker
npm run dev:turbo
-
If this is your first time developing kittr, you will need to seed your local Mongo instance at this time. To do so, use
npm run dev:seed
. If you got a message saying "Let's get kittd," you are ready to go! -
Visit kittr at http://localhost:3000
When working locally, these ports are available:
-
Web front-end: http://localhost:3000
-
Mongo Express: http://localhost:5001 (View your Mongo data in your browser!)
-
Mongo: http://localhost:27017 (You shouldn't need to interact with this port directly.)
-
Firebase Emulator UI: http://localhost:4000
-
Firebase Auth Emulator: http://localhost:4001 (You shouldn't need to interact with this port directly.)
-
Firebase Storage Emulator: http://localhost:4002 (You shouldn't need to interact with this port directly.)
Contributions are encouraged from junior and senior developers alike. You may check the issues on this project to find out what needs working on.
PLEASE make sure that before you attempt to make any major changes to kittr that you ask the maintainers first. There is a business vision here that you may not be privvy to. (We will try to make the long-term plans for kittr more accessible as we continue this effort.)
-
Fork the Project
-
Checkout the develop branch (git checkout develop)
-
Create your Feature Branch (git checkout -b new-branch)
-
Commit your Changes (git commit -m 'New Changes') (Please provide the maintainers with a nice commit message to state your intentions on what this commit should include!)
-
Push to the Branch (git push origin new-branch)
-
Open a Pull Request
- Existing login credentials to get into the dashboard:
- Username: [email protected]
- Password: 123123
- A few channels that you may find useful:
- ALLKITS - Features every kit in the database (well, almost)
- brandnewchannel - A fresh, empty channel that was just created
- anthonyshew - A channel that features multiple managers so you can see how the dashboard changes based on the user's role in that channel