This is the contribute.md of our project. Great to have you here. Here are a few ways you can help make this project better!
- Brad Miller -- Current maintainer
- Scott Rixner
- Marie Chatfield
- Albert-Jan Nijburg
- Bob LaCatena
- David Holmes
- Charles Severance
- Scott Graham -- although not active at the moment, Scott is the father of Skulpt
This section includes ways to get started with your open source project. Include links to documentation and to different communication channels:
- github: Lots of good discussion happens around pull requests and bug reports
- Mailing list
- IRC channel: #skulpt
- Blog: Some stuff about getting started is on http://reputablejournal.com
This section includes advice on how to build new features for the project & what kind of process it includes.
- First you should make a Fork. If you have never made a fork before please read this github help article
- Once you have added a new feature make sure you develop some test cases and add them to the test bank. Even better would be to write the failing test first. The easy way to do this is to run
m nrt
(make sure you have either vim installed or theEDITOR
environment variable set) which creates a new test file, opens up an editor for you to create your tests, and then generates the expected output based on 'real python' - Before submitting a pull request please make sure you run
m test
andm dist
this checks that there are no regressions. We have an automatic system to do regression testing, but if your pull request fails it is certain that it will not be accepted. - push your changes to your fork and then use github to submit a pull request.
We try to get to pull requests in a very timely way so they don't languish. Nothing is more frustrating than a project that just leaves pull requests sitting there for ages. Usually we get to them in a one or two days.
If documentation is your thing, have we got a job for you. There are a few blog posts on how to write modules and work with skulpt but very little of the core is documented beyond the source. Having some good documentation for developers would really help get more people involved.
This section includes ideas on how non-developers can help with the project. Here's a few examples:
-
You can help us answer questions our users have in the google group
-
You can help build and design our website in doc
-
You can help write blog posts about the project
-
Create an example of the project in real world by building something or showing what others have built.
-
Write about other people’s projects based on this project. Show how it’s used in daily life. Take screenshots and make videos!