Built in the open.
Owned by the community.

OpenCap Stack is fully open source under the MIT license. Every line of code is public. Run it yourself, contribute back, or just use the managed cloud — your call.

MIT Licensed

The full source code is available under the MIT license. Read it, audit it, fork it, and ship it. No commercial restrictions.

No vendor lock-in

Your equity data is yours. Export at any time in OCTA v2.0 format — the industry-standard open schema for cap table data.

Self-hostable

Deploy on your own infrastructure with Docker or Kubernetes. Keep equity data on-premise if your compliance requirements demand it.

Community-driven

Bug fixes, new features, and integrations come from the community. Every contributor shapes the roadmap.

Self-hosting guide

Run OpenCap Stack on your own infrastructure in minutes with Docker or Kubernetes.

1

Clone the repository

bash
git clone https://github.com/Open-Cap-Stack/opencapstack.git
cd opencapstack
2

Configure environment variables

bash
cp .env.example .env

# Edit .env with your values:
# Required
PORT=5000
JWT_SECRET=your-secret-key
NODE_ENV=production

# ZeroDB (primary database — get credentials at ainative.studio)
ENABLE_ZERODB=true
ZERODB_API_KEY=your-zerodb-key
ZERODB_BASE_URL=https://api.ainative.studio/api/v1
AINATIVE_API_TOKEN=your-ainative-token
3

Start with Docker Compose

bash
docker compose up -d

# API available at http://localhost:5000
# Swagger docs at http://localhost:5000/docs
4

Or run directly with Node

bash
npm install
npm run dev       # development (with nodemon)
npm start         # production
5

Run the test suite

bash
npm test                  # unit tests
npm run test:coverage     # with coverage report (80%+ required)
npm run test:e2e          # Playwright E2E tests

Tech stack

OpenCap Stack is built with battle-tested open-source tools.

Backend

  • Node.js + Express
  • JWT authentication
  • ZeroDB (via AINative API)
  • Socket.IO real-time
  • MinIO document storage

Frontend

  • Next.js 14 (App Router)
  • React 18
  • Tailwind CSS
  • TanStack Query
  • Chart.js

AI & MCP

  • @opencapstack/mcp-server
  • LangChain integration
  • OpenAI + Anthropic
  • MCP SDK v1.0
  • 29 MCP tools

Infrastructure

  • Docker + Kubernetes
  • Railway deployment
  • Playwright E2E tests
  • Jest unit tests
  • OpenAPI 3.0
Open Cap Table Alliance

OCTA v2.0 aligned

OpenCap Stack stores and exports cap table data in the Open Cap Table Alliance (OCTA) v2.0 format — the industry standard for interoperable equity data.

That means your data can move between tools, law firms, and auditors without conversion. No proprietary formats, no lock-in.

Learn about OCTA →
// OCTA v2.0 stakeholder
{
"object_type": "STAKEHOLDER",
"id": "7f8475ad-...",
"name": "Kwanza Hall",
"stakeholder_type": "INDIVIDUAL",
"current_relationship": "ADVISOR"
}

Contributing

Contributions are welcome — bug reports, features, documentation, and tests all count.

Report a bug

Open an issue on GitHub with reproduction steps and expected vs actual behavior.

Open issue

Request a feature

Start a discussion in GitHub Issues. Label it `enhancement` so it gets triaged quickly.

Browse issues

Submit a PR

Fork the repo, create a branch `feature/issue-{n}-{slug}`, write tests, and open a PR against `main`.

Open PR

Branch naming

bash
feature/issue-{n}-{slug}    # new features
bug/issue-{n}-{slug}        # bug fixes
chore/issue-{n}-{slug}      # maintenance

# Examples:
git checkout -b feature/issue-64-safe-data-model
git checkout -b bug/issue-125-enum-mismatch

Start with the managed cloud

No setup required. Free plan available. Switch to self-hosted at any time — your data exports in full OCTA v2.0 format.