Contributing to NuPIC

Matthew Taylor edited this page May 23, 2016 · 43 revisions
Clone this wiki locally

Thank you for your interest in helping NuPIC improve and evolve. We are a passionate collection of developers interested in neocortical machine intelligence implementations from all over the globe.

You can find out more about the mechanics of contributions by watching the NuPIC Development Tutorial.

Before your pull requests will be reviewed by our team of committers, you'll need to sign our Contributor License. You can see the current list of committers and contributors who've signed our CL.

For instructions on building and installing NuPIC from source code in your environment, please see Installing and Building NuPIC.

NuPIC Community

Learn about the other contributors who you'll be working alongside.

Contents

The NuPIC Roadmap

What the future holds for NuPIC.

Developer Communication

NuPIC Developers on HTM Forum

Our HTM Forum has a sub-category dedicated only to development discussion of NuPIC. This is used for planning and discussion of new features, as well as questions about how to implement them.

Developer Chat on Gitter

Separate from the public Gitter chat room, we have a developer-only room. This channel includes real-time updates from GitHub and Travis-CI.

Gitter chat

Only NuPIC contributors are allowed to enter this chat room.

Ways to Contribute

Bounties

Bountysource

Help Update This Wiki

You don't have to jump in by writing code. The best way to familiarize yourself with the NuPIC ecosystem is to peruse this wiki and inform yourself. If you see content that is missing or incorrect, please Contribute to the Wiki.

File Bugs

If you found a bug, please submit it to the proper issue tracker. If you don't know which issue tracker to use, use the one for nupic.

Document Code

We're missing a lot of documentation. Here are some places to learn about how automatic code documentation works and how to do it:

Fix Issues

We tag issues with a "help wanted" label when we are looking for community contributions. You can see all these tickets here.

Protocol and Processes

Below are some things you should familiarize yourself with before working on NuPIC.

NuPIC Development Tutorial Video

NuPIC Development Tutorial Video

A beginner's introduction to how we use git, Github, and Travis-CI for NuPIC development.

Development Process

If you have a change you want to make, a bug you'd like to fix, or a new feature to implement, start here. This document will inform you about the process of developing NuPIC.

Developer Workflow

Provide technical details about how code changes are vetted, tested, approved, and eventually integrated into the master branch of our repositories.

Release Process

Learn more about how NuPIC is released through the wiki linked above.

Developer Resources

Coding Standards and Guides

Other References

Creating Applications