Bacalhau Docs
GithubSlackBlogEnterprise
v1.6.x
  • Documentation
  • Use Cases
  • CLI & API
  • References
  • Community
v1.6.x
  • Welcome
  • Getting Started
    • How Bacalhau Works
    • Getting Started
      • Step 1: Install the Bacalhau CLI
      • Step 2: Running Your Own Job
      • Step 3: Checking on the Status of Your Job
    • Creating Your Own Bacalhau Network
      • Setting Up a Cluster on Amazon Web Services (AWS) with Terraform 🚀
      • Setting Up a Cluster on Google Cloud Platform (GCP) With Terraform 🚀
      • Setting Up a Cluster on Azure with Terraform 🚀
    • Hardware Setup
    • Container Onboarding
      • Docker Workloads
      • WebAssembly (Wasm) Workloads
  • Setting Up
    • Running Nodes
      • Node Onboarding
      • GPU Installation
      • Job selection policy
      • Access Management
      • Node persistence
      • Configuring Your Input Sources
      • Configuring Transport Level Security
      • Limits and Timeouts
      • Test Network Locally
      • Bacalhau WebUI
      • Private IPFS Network Setup
    • Workload Onboarding
      • Container
        • Docker Workload Onboarding
        • WebAssembly (Wasm) Workloads
        • Bacalhau Docker Image
        • How To Work With Custom Containers in Bacalhau
      • Python
        • Building and Running Custom Python Container
        • Running Pandas on Bacalhau
        • Running a Python Script
        • Running Jupyter Notebooks on Bacalhau
        • Scripting Bacalhau with Python
      • R (language)
        • Building and Running your Custom R Containers on Bacalhau
        • Running a Simple R Script on Bacalhau
      • Run CUDA programs on Bacalhau
      • Running a Prolog Script
      • Reading Data from Multiple S3 Buckets using Bacalhau
      • Running Rust programs as WebAssembly (WASM)
      • Generate Synthetic Data using Sparkov Data Generation technique
    • Networking Instructions
      • Accessing the Internet from Jobs
      • Utilizing NATS.io within Bacalhau
    • GPU Workloads Setup
    • Automatic Update Checking
    • Marketplace Deployments
      • Google Cloud Marketplace
    • Inter-Nodes TLS
  • Guides
    • Configuration Management
    • Write a config.yaml
    • Write a SpecConfig
    • Using Labels and Constraints
  • Examples
    • Table of Contents for Bacalhau Examples
    • Data Engineering
      • Using Bacalhau with DuckDB
      • Ethereum Blockchain Analysis with Ethereum-ETL and Bacalhau
      • Convert CSV To Parquet Or Avro
      • Simple Image Processing
      • Oceanography - Data Conversion
      • Video Processing
      • Bacalhau and BigQuery
    • Data Ingestion
      • Copy Data from URL to Public Storage
      • Pinning Data
      • Running a Job over S3 data
    • Model Inference
      • EasyOCR (Optical Character Recognition) on Bacalhau
      • Running Inference on Dolly 2.0 Model with Hugging Face
      • Speech Recognition using Whisper
      • Stable Diffusion on a GPU
      • Stable Diffusion on a CPU
      • Object Detection with YOLOv5 on Bacalhau
      • Generate Realistic Images using StyleGAN3 and Bacalhau
      • Stable Diffusion Checkpoint Inference
      • Running Inference on a Model stored on S3
    • Model Training
      • Training Pytorch Model with Bacalhau
      • Training Tensorflow Model
      • Stable Diffusion Dreambooth (Finetuning)
    • Molecular Dynamics
      • Running BIDS Apps on Bacalhau
      • Coresets On Bacalhau
      • Genomics Data Generation
      • Gromacs for Analysis
      • Molecular Simulation with OpenMM and Bacalhau
    • Systems Engineering
      • Ad-hoc log query using DuckDB
  • References
    • Jobs Guide
      • Job Specification
        • Job Types
        • Task Specification
          • Engines
            • Docker Engine Specification
            • WebAssembly (WASM) Engine Specification
          • Publishers
            • IPFS Publisher Specification
            • Local Publisher Specification
            • S3 Publisher Specification
          • Sources
            • IPFS Source Specification
            • Local Source Specification
            • S3 Source Specification
            • URL Source Specification
          • Network Specification
          • Input Source Specification
          • Resources Specification
          • ResultPath Specification
        • Constraint Specification
        • Labels Specification
        • Meta Specification
      • Job Templates
      • Queuing & Timeouts
        • Job Queuing
        • Timeouts Specification
      • Job Results
        • State
    • CLI Guide
      • Single CLI commands
        • Agent
          • Agent Overview
          • Agent Alive
          • Agent Node
          • Agent Version
        • Config
          • Config Overview
          • Config Auto-Resources
          • Config Default
          • Config List
          • Config Set
        • Job
          • Job Overview
          • Job Describe
          • Job Executions
          • Job History
          • Job List
          • Job Logs
          • Job Run
          • Job Stop
        • Node
          • Node Overview
          • Node Approve
          • Node Delete
          • Node List
          • Node Describe
          • Node Reject
      • Command Migration
    • API Guide
      • Bacalhau API overview
      • Best Practices
      • Agent Endpoint
      • Orchestrator Endpoint
      • Migration API
    • Node Management
    • Authentication & Authorization
    • Database Integration
    • Debugging
      • Debugging Failed Jobs
      • Debugging Locally
    • Running Locally In Devstack
    • Setting up Dev Environment
  • Help & FAQ
    • Bacalhau FAQs
    • Glossary
    • Release Notes
      • v1.5.0 Release Notes
      • v1.4.0 Release Notes
  • Integrations
    • Apache Airflow Provider for Bacalhau
    • Lilypad
    • Bacalhau Python SDK
    • Observability for WebAssembly Workloads
  • Community
    • Social Media
    • Style Guide
    • Ways to Contribute
Powered by GitBook
LogoLogo

Use Cases

  • Distributed ETL
  • Edge ML
  • Distributed Data Warehousing
  • Fleet Management

About Us

  • Who we are
  • What we value

News & Blog

  • Blog

Get Support

  • Request Enterprise Solutions

Expanso (2025). All Rights Reserved.

On this page
  • Code
  • Documentation
  • Community
  • Build with Bacalhau
  • Writing guide
  • Walkthroughs

Was this helpful?

Export as PDF
  1. Community

Ways to Contribute

If you want to contribute to Bacalhau and the Compute ecosystem, here is a list of things that need help and instructions for getting started.

PreviousStyle Guide

Was this helpful?

We appreciate any help that would improve Bacalhau. If you need more guidance, reach out to us on &#x20.

Code

You can contribute to the Bacalhau code by opening an issue with a bug report, requesting a feature, suggesting changes, and others. You can also clone the and submit a pull request for an open issue.

Documentation

With lots of code comes the need for lots of good documentation! If writing technical documentation is your area, or you love writing, we greatly value your contribution!

Before contributing to the Bacalhau documentation, please read through our and check out the .

Community

For questions, feedback, or answers to questions that help other users, use .

Build with Bacalhau

Bacalhau has an extensive list of examples and tutorials that showcase its abilities. However, this is just the tip of the iceberg; there are more use cases where Bacalhau can be implemented. If you have a specific idea you want to try out with Bacalhau, we encourage you to do that and build anything that you think is missing.

If you are interested in contributing, please email for more information. Include your interests so we can ensure you get to work on something fun and valuable.

Writing guide

This guide explains what to keep in mind when contributing to Bacalhau documentation. While the outlines the rules to follow, this guide helps you structure your writing properly and choose the correct tone for your audience.

Walkthroughs

The purpose of a walkthrough is to instruct the user how to do something. You do not need to convince the reader of something or explain a concept. Walkthroughs are a list of steps the reader must follow to achieve a process or function.

Most of the Bacalhau documentation project documentation falls under the Walkthrough category. Walkthroughs are short, have a neutral tone, and instruct the reader on achieving a particular process or function. The instructions contain steps about where to go, what to type, and the actions to perform on the User Interface. There is little to no conceptual information within walkthroughs.

Components

The scope for some of the components in a walkthrough are as follows:

Component
Keyword
Scope

Audience

General

Easy for anyone to read with minimal effort.

Formality

Neutral

Slang is restricted, but standard casual expressions are allowed.

Domain

Technical

Acronyms and tech-specific language are used and expected.

Tone

Neutral

Writing contains little to no emotion.

Intent

Instruct

Instruct the reader how to do something.

Function or process

The end goal of a walkthrough is for the reader to achieve a very particular function. Installing Bacalhau is an example. Following this walkthrough doesn’t teach the reader much about working with the decentralized web or what Bacalhau is. Still, the user would have the Bacalhau Desktop application installed on the computer by the end.

Short length

Walkthroughs tend to be short because they cover one particular function or process. They typically take between two and ten minutes to read. Most of the content in a walkthrough is a numbered list. Images and GIFs can help the reader understand what they should be doing.

When a walkthrough is converted into a video, that video should be at most five minutes.

Walkthrough structure

Walkthroughs are split into three major sections:

  1. What you are about to do.

  2. The steps you need to do.

  3. Summary of what you just did and potential next steps.

Conceptual articles

Articles are written with the intent to inform and explain something. These articles don’t contain any steps or actions that the reader has to perform right now.

These articles are vastly different in tone when compared to walkthroughs. Some topics and concepts can be challenging to understand, so creative writing and interesting diagrams are highly sought-after for these articles. Whatever writers can do to make a subject more understandable, the better.

Article goals

Use the following goals when writing conceptual articles:

Goal
Keyword
Explanation

Audience

Knowledgeable

Requires a certain amount of focus to understand.

Formality

Neutral

Slang is restricted, but standard casual expressions are allowed.

Domain

Any

Usually technical but depends on the article.

Tone

Confident and friendly

The reader must feel confident that the writer knows what they’re talking about.

Intent

Describe

Tell the reader why something does the thing that it does, or why it exists.

Article structure

Articles are separated into five major sections:

  1. Introduction to the thing we’re about to explain.

  2. What the thing is.

  3. Why it’s essential.

  4. What other topics it relates to.

  5. Summary review of what we just read.

Tutorials

When writing a tutorial, you’re teaching a reader how to achieve a complex end-goal. Tutorials are a mix of walkthroughs and conceptual articles. Most tutorials will span several pages and contain multiple walkthroughs within them.

Take the hypothetical tutorial Get up and running with Bacalhau, for example. This tutorial will likely have the following pages:

  1. A brief introduction to what Bacalhau is.

  2. Choose and install a command line client.

  3. Understanding storage deals.

  4. Import and store a file.

Pages 1 and 3 are conceptual articles, describing particular design patterns and ideas to the reader. All the other pages are walkthroughs instructing the user how to perform one specific action.

When designing a tutorial, keep in mind the walkthroughs and articles that already exist, and note down any additional content items that would need to be completed before creating the tutorial.

Grammar and formatting

American English

While Bacalhau is a global project, the fact is that American English is the most commonly used style of English used today. With that in mind, when writing content for the Bacalhau project, use American English spelling. The basic rules for converting other styles of English into American English are:

  1. Swap the s for a z in words like categorize and pluralize.

  2. Remove the u from words like color and honor.

  3. Swap tre for ter in words like center.

The Oxford comma

In a list of three or more items, follow each item except the last with a comma ,:

Use
Don’t use

One, two, three, and four.

One, two, three and four.

Henry, Elizabeth, and George.

Henry, Elizabeth and George.

References to Bacalhau

As a proper noun, the name “Bacalhau” (capitalized) should be used only to refer to the overarching project, to the protocol, or to the project’s canonical network:

Bacalhau has attracted contributors from around the globe!

The Bacalhau ecosystem is thriving! I love contributing to Bacalhau's documentation!

Consistency in the usage of these terms helps keep these various concepts distinct.

Acronyms

If you have to use an acronym, spell the full phrase first and include the acronym in parentheses () the first time it is used in each document.

Virtual Machine (VM), Compute over Data (CoD).

Formatting

How the Markdown syntax looks, and code formatting rules to follow.

Syntax

The Bacalhau Docs project follows the GitHub Flavoured Markdown syntax for markdown. This way, all articles display properly within GitHub itself.

Rules

Here are some language-specific rules that the Bacalhau documentation follows. If you use a writing service like , most of these rules are turned on by default.

We use the rules set out in the extension. You can import these rules into any text editor like Vim or Sublime. All rules are listed .

We highly recommend installing with the extension to help with your writing. The extension shows warnings within your markdown whenever your copy doesn’t conform to a rule.

Slack (#bacalhau channel)
Bacalhau code repository
Style guide
Bacalhau documentation
GitHub Discussions
contribute@bacalhau.org
grammar, formatting, and style guide
Grammarly
VSCode Markdownlint
within the Markdownlint repository
VSCode
Markdownlint