---
title: "Contribute to Caracal"
url: "https://docs.caracal.run/contributing/"
markdown_url: "https://docs.caracal.run/markdown/contributing.md"
description: "Contributor guide for local setup, project standards, workflow, validation, governance, and releases."
page_type: "landing"
concepts: []
requires: []
---

# Contribute to Caracal

Canonical URL: https://docs.caracal.run/contributing/
Markdown URL: https://docs.caracal.run/markdown/contributing.md
Description: Contributor guide for local setup, project standards, workflow, validation, governance, and releases.
Page type: landing
Concepts: none
Requires: none

---

Caracal uses a multi-language workspace: TypeScript apps/packages, Go services/packages, Python packages/examples, Docker/Helm infra, and Astro docs.

## Contributor Path

| Need | Page |
| --- | --- |
| Prepare your machine | [Set Up Locally](/contributing/setup/) |
| Learn project boundaries and naming conventions | [Follow Project Standards](/contributing/style/) |
| Work on an issue or pull request | [Make a Change](/contributing/workflow/) |
| Run the right checks | [Validate Changes](/contributing/testing/) |

## Maintainer Path

| Need | Page |
| --- | --- |
| Understand review, ownership, and security process | [Understand Governance](/contributing/governance/) |
| Prepare, publish, or recover a release | [Release Caracal](/contributing/release/) |

## Current Toolchain

| Tool | Version |
| --- | --- |
| Node.js | 24+ |
| pnpm | 11.1.1 |
| Docker + Compose v2 | 24+ |
| Go | 1.26+ |
| Python | 3.14+ |
| Bun | latest stable used by package scripts |

## Before You Start

Read [Follow Project Standards](/contributing/style/) before editing code, docs, commands, or product boundaries.

## Next Step

Start with [Set Up Locally](/contributing/setup/) before making source changes.
