Skip to main content

Contributing

So you've got an awesome idea to throw into COSMOS. Great! This is the basic process:

  1. Fork the project on Github
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request
Contributor Terms

By contributing to this project, you agree to the following terms in our OpenC3 Builder License: LICENSE.md

Test Dependencies

To run the test suite and build the gem you'll need to install COSMOS's dependencies. COSMOS uses Bundler, so a quick run of the bundle command and you're all set!

\$ bundle

Before you start, run the tests and make sure that they pass (to confirm your environment is configured properly):

\$ bundle exec rake build spec

Workflow

Here's the most direct way to get your work merged into the project:

  • Fork the project.
  • Clone down your fork:
git clone git://github.com/<username>/openc3.git
  • Create a topic branch to contain your change:
git checkout -b my_awesome_feature
  • Hack away, add tests. Not necessarily in that order.
  • Make sure everything still passes by running bundle exec rake.
  • If necessary, rebase your commits into logical chunks, without errors.
  • Push the branch up:
git push origin my_awesome_feature
  • Create a pull request against openc3/cosmos:main and describe what your change does and the why you think it should be merged.
Find a problem in the code or documentation?

Please create an issue on GitHub describing what we can do to make it better.