Stencila is a platform for creating, collaborating on, and sharing data driven content. Content that is transparent and reproducible, like RMarkdown and Jupyter Notebooks. Content that can be versioned and composed just like we do with open source software using tools like CRAN and NPM. And above all, content that is accessible to non-coders, like Google Docs and Microsoft Office.
Stencila is still at an early beta stage: there are likely to be missing features, bugs and API changes. But we would ❤️ to get your suggestions and 🐛 reports. Get help from the community, create a new issue, or join the chat.
- = ready for production use
- = ready for beta user testing
- = ready for alpha testing; use with caution
- numbers (e.g.
0.31
) = planned release
We generally only plan one or two releases ahead. We aim to release every 1-2 months, towards a 1.0 release in early 2018. Checkout the current release milestones.
See the Getting Started page on the wiki.
Application or package | Ready |
---|---|
Stencila Desktop | ✓ |
Stencila for Python | ✓ |
Stencila for R | ✓ |
Stencila for Node.js | ✓ |
Quick start:
git clone https://github.com/stencila/stencila.git
cd stencila
npm install
npm run start
Now you can access the examples in the browser at http://localhost:4000/.
Use external contexts during development:
Run the docker image first.
docker run -p 2100:2000 stencila/alpha
Now start the development environment and point STENCILA_PEERS
to the new host.
STENCILA_PEERS=http://localhost:2100 npm start
Most development tasks can be run via npm
or make
shortcuts:
Task | npm |
make |
---|---|---|
Install and setup dependencies | npm install |
make setup |
Run the development server | npm start |
make run |
Check code for lint | npm run lint |
make lint |
Run tests | npm test |
make test |
Run tests in the browser | npm run test-browser |
make test-browser |
Run tests with coverage | npm run cover |
make cover |
Build bundles | npm build |
make build |
Build documentation | npm run docs |
make docs |
Run documentation server | npm run docs-serve |
make docs-serve |
Clean | make clean |
To contribute, get in touch, checkout the platform-wide, cross-repository kanban board, or just send us a pull request! Please read our contributor code of conduct.
API documentation is at http://stencila.github.io/stencila/. These are published using Github Pages, so to update them after making changes: run make docs
, commit the updates and do a git push
.