Skip to content

Instantly share code, notes, and snippets.

@rhyolight
Created November 5, 2015 18:54
Show Gist options
  • Save rhyolight/aa24b29a5c8c29c2ae67 to your computer and use it in GitHub Desktop.
Save rhyolight/aa24b29a5c8c29c2ae67 to your computer and use it in GitHub Desktop.

Numenta Open Source Tools

The following are all Node.js tools used to help facility the OS development processes and pipelines for the NuPIC project and satellite repos. They are configured to be deployed in a stateless fashion on a simple platform (currently Heroku).

Tooling Server

Kitchen sink, stateless, Node.JS application used to support NuPIC development flow. Been around for several years, not the best code quality. Needs a redesign, but mostly generic. Could be used for other projects with a little work.

live | source

Here's an old video of how it worked 2 years ago.

  • Facilitates NuPIC development flow
  • PR validation
  • Integrates repos with dependencies
  • Mailing list statistics
  • Lots of ad-hoc tools, some of which are not used anymore

Wallboard

Provides a generic "widget" framework for piecing together a status board. Current implementation contains the statuses of dependent services (Github, Travis-CI), last doc builds, custom repo statuses, links to other tools, running Travis-CI builds, and recently updated issues across all monitored repositories. Ugly, but functional.

live | source

Road Map

A component of Sprinter Dash, the Road Map presents a consolidated view across many repositories, using Github Issues to present Milestones, super tasks, and subtasks.

Because Github doesn't have the concept of sub-tasks, this UI uses markdown conventions to associate issues and present them grouped together.

Caching for this project needs to be improved, because the Github API calls used to populate the views are extensive. Initial load times are very high.

live | source

Sprinter is a low-level library and CLI for querying the Github Issues API across multiple repositories (plus some other parts of the API like collaborators and labels). It is used in all three of the projects described above.

A small Travis-CI client for listing running builds across a Github organization or user account.

live | source

@rhyolight
Copy link
Author

@cbaranski Can you review this for me? This is for an upcoming TODO group meeting about open source tooling. We will all showcase the tools we've created, and this is a high-level description of ours.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment