Skip to main content
nao is an open source project, and we welcome contributions from the community!

Get Involved

Development Setup

To contribute to nao, clone the repository and follow the setup instructions:
# Clone the repository
git clone https://github.com/getnao/nao.git
cd nao

# Install dependencies
npm install

# Follow the development setup in CONTRIBUTING.md
For detailed development guidelines, commands, and contribution standards, see our CONTRIBUTING.md file.

Tech Stack

nao is built with modern technologies:

Backend

TechnologyPurpose
FastifyHigh-performance web framework
Drizzle ORMTypeScript ORM for database access
tRPCEnd-to-end typesafe APIs

Frontend

TechnologyPurpose
ReactUI framework
Tanstack QueryData fetching and caching
tRPC ClientTypesafe API client
Shadcn UIComponent library

CLI

TechnologyPurpose
PythonCLI tooling and context builder

Running with Docker

You can also run nao using Docker:
# Pull the image
docker pull getnao/nao:latest

# Run the container
docker run -d \
  --name nao \
  -p 5005:5005 \
  -e NAO_DEFAULT_PROJECT_PATH=/app/example \
  -e OPENAI_API_KEY=sk-... \
  getnao/nao:latest
Access the UI at http://localhost:5005.

Join the Community

Ways to Contribute

There are many ways to contribute to nao:
  • Code contributions — Fix bugs, add features, improve performance
  • Documentation — Improve docs, add examples, fix typos
  • Bug reports — Report issues you encounter with detailed reproduction steps
  • Feature requests — Suggest new features and improvements
  • Community support — Help answer questions in Slack and GitHub Discussions