2017-04-13 18:13:57 +00:00
### Licensing
2013-02-25 01:52:09 +00:00
2012-09-18 15:14:27 +00:00
The `lobsters` codebase is under a [3-clause BSD
2017-10-01 18:38:20 +00:00
license](https://github.com/lobsters/lobsters/blob/master/LICENSE). All code
2012-09-18 15:14:27 +00:00
submitted must be licensed under these or more-permissive terms (2-clause BSD,
MIT, ISC, etc.).
2017-04-13 18:13:57 +00:00
### Before Making Changes
2013-02-25 01:52:09 +00:00
2017-10-25 07:31:52 +00:00
If you're new to contributing, issues tagged [good first issue ](https://github.com/lobsters/lobsters/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22 )
require little knowledge of the codebase or community. Please don't hesitate to
2018-09-24 15:02:46 +00:00
ask questions in the issue or in [our chat room ](https://lobste.rs/chat ), we'd love
2017-10-25 07:31:52 +00:00
to help you get involved.
2017-10-06 19:32:24 +00:00
2023-09-14 13:16:26 +00:00
You can jump right in to issues tagged `good first issue` , you don't have to ask permission.
Please don't post a comment asking because if you don't finish,
the comment confuses a potential contributor who might not pick it up.
2021-01-03 21:15:43 +00:00
While this project's license allows for modification and use to run your own
website, this source code repository is for the code running the website at
[lobste.rs ](https://lobste.rs/ ).
2012-09-18 15:14:27 +00:00
Not all changes or new features submitted will be accepted. Please discuss
your proposed changes on [/t/meta ](https://lobste.rs/t/meta ) or as a
2017-10-01 18:38:20 +00:00
[Github issue ](https://github.com/lobsters/lobsters/issues ) before working on them
2012-09-18 15:14:27 +00:00
to avoid wasted efforts.
2017-04-13 18:13:57 +00:00
### Making Changes
2013-02-25 01:52:09 +00:00
2017-10-01 18:38:20 +00:00
* Fork [lobsters/lobsters ](https://github.com/lobsters/lobsters ) on Github.
2012-09-18 15:14:27 +00:00
* (Optional) Create a branch to house your changes.
2023-09-14 13:16:26 +00:00
* Run `bundle exec standardrb` to check the style of your Ruby.
No messages means success.
Adding `--fix` will take care of most issues automatically, and there's excellent
< a href = "https://github.com/standardrb/standard#user-content-editor-support" > editor integration available< / a > .
2018-12-09 15:52:00 +00:00
(3rd party, externally-maintained code such as Javascript libraries can remain in their own style.)
2012-09-18 15:14:27 +00:00
* Check for unnecessary whitespace with `git diff --check` before committing.
Commit whitespace and other code cleanups separately so that your actual
changes can be easily understood.
* Write a proper commit message with the first line being a short,
2023-09-14 13:16:26 +00:00
present-tense explanation of the change. Wrap message lines at 80 characters.
2012-09-18 15:14:27 +00:00
* If applicable, add tests for your changes. Not all changes require tests,
and tests should not be added just for the sake of code coverage.
2018-04-19 10:34:47 +00:00
* Run _all_ tests (with `bundle exec rspec` in the root directory) to ensure
nothing has been broken by your changes.
2012-09-18 15:14:27 +00:00
### Submitting Changes
* Push your changes to your fork of the repository (to your branch if you
created one).
2017-10-01 18:38:20 +00:00
* Submit a pull request to [lobsters/lobsters ](https://github.com/lobsters/lobsters ).