Welcome to the [stellar-invictus.com](https://stellar-invictus.com) codebase. We are so excited to have you. With your help, we can build out Stellar Invictus to be more stable and better serve our community.
What is Stellar Invictus?
Stellar Invictus is a sandbox browsergame to be played right in the browser where players fly spaceships, fight each other and trade. The game offers many ways to explore its universe.
We encourage you to contribute to stellar-invictus!
We expect contributors to abide by our underlying code of conduct. All conversations and discussions on GitHub (issues, pull requests) must be respectful and harassment-free.
We also have a slack for developers!
How to contribute
- Fork the project & clone locally. Follow the initial setup here.
- Create a branch, naming it either a feature or bug:
git checkout -b feature/that-new-featureor
- Code and commit your changes. Bonus points if you write a good commit message:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/that-new-feature
- Create a pull request for your branch
Create an issue
Nobody's perfect. Something doesn't work? Or could be done better? Let us know by creating an issue.
PS: a clear and detailed issue gets lots of love, all you have to do is follow the issue template!
Clean code with tests
Some existing code may be poorly written or untested, so we must have more scrutiny going forward. We test with rspec, let us know if you have any questions about this!
Create a pull request
- Try to keep the pull requests small. A pull request should try its very best to address only a single concern.
- Make sure all tests pass and add additional tests for the code you submit.
- Document your reasoning behind the changes. Explain why you wrote the code in the way you did. The code should explain what it does.
- If there's an existing issue related to the pull request, reference to it by adding something like
References/Closes/Fixes/Resolves #305, where 305 is the issue number. More info here
- If you follow the pull request template, you can't go wrong.
Please note: all commits in a pull request will be squashed when merged, but when your PR is approved and passes our CI, it will be live on production!
The bottom line
We are all humans trying to work together to improve the community. Always be kind and appreciate the need for tradeoffs.
This section provides a high-level requirement & quick start guide.
- Ruby: we recommend using rbenv to install the Ruby version listed under .ruby-version.
- PostgreSQL 9.4 or higher.
git clone the project
cp .env.sample .envand set environment variables
docker-compose run --entrypoint "/bin/sh -c 'rails db:setup'" app
- That's it! Navigate to
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Please see the LICENSE file in our repository for the full text.
Like many open source projects, we require that contributors provide us with a Contributor License Agreement (CLA). By submitting code to the project, you are granting us a right to use that code under the terms of the CLA.
Our version of the CLA was adapted from the Microsoft Contributor License Agreement, which they generously made available to the public domain under Creative Commons CC0 1.0 Universal.