Contributing

This project is open commons that anyone can improve.

We welcome all contributions, such as but not limited to:

  • code
    • bug reporting
    • features
    • tests
    • peer review
    • protocol design
  • operations
    • pub server hosting
  • design
    • project artwork
    • user testing
    • newbie first impressions
    • real-world use cases
  • storytelling
    • blogs
    • talks
    • documentation
  • facilitation
    • community organizing (meetups)
    • group collaboration
    • conflict resolution

If you contribute enough, you'll be invited to join the project members.

We aim for autonomous solving of collaborative problems with a common vision.

Hosting a Pub server

The easiest way to start hosting a Pub server is to use easy-ssb-pub.

Or, follow the "Create a Pub" guide at scuttlebot.io.

Contributing Code

To understand what code is in the Scuttlebutt ecosystem and how the modules assemble together, see the "Modules" page.

To get started developing Patchwork (the primary user interface), first follow the instructions to build from source.

To get started developing Scuttlebot (the data server), see the "Introduction to Using Scuttlebot" guide.

Native Build Dependencies

The main build dependecies are libsodium and leveldb.

They should be automatically built using a C++ compiler on npm install as we use chloride and level, respectively.

Tests

If contributing to a low-level module, please include tests.

Code Style

The default recommended code style is standard.

If existing code is in another style, please respect the code style. :)

Licenses

Most code is licensed under a permissive license (MIT / ISC), while other code like Patchwork is licensed under a copyleft license (GPL / AGPL).

Contributing Documentation

While over time we have scattered documentation around:

Our intention is to combine these sources and have this handbook (ssb-handbook) be the new location for all documentation relating to Scuttlebutt.

You can clone, build, and serve this handbook with gitbook locally.

The SUMMARY.md is the manifest on which the compiled gitbook is based. Edit that if you want content in/out of the book.

Contributing With git-ssb

To use the public portal for the handbook code, browse to https://git.scuttlebot.io/%25lJsDWwnF4bDxHWYuSjw%2FbW37xg%2BsaF8WtPZYZsefKj0%3D.sha256.

To use your local scuttlebot server to clone the handbook code:

npm install git-ssb -g
git clone ssb://%lJsDWwnF4bDxHWYuSjw/bW37xg+saF8WtPZYZsefKj0=.sha256 ssb-handbook

cd ssb-handbook
npm install
npm start

To contribute to the handbook code, make a pull request with

git ssb pull-request

Contributing with GitHub

Our public GitHub repository is at ssbc/ssb-handbook

Feel free to make an issue or pull request here if you see something that needs doing.

results matching ""

    No results matching ""