# ops docs > How to run a project on ops: guides, the HTTP API, the CLI, the SDKs and every package published there. Each link is a page as Markdown. ## Ops platform 0.1.0 - [Overview](https://docs.ops.syncronet.dev/index.md): Run your project on ops, from the first deploy to logs, packages and docs. - [Get started](https://docs.ops.syncronet.dev/get-started.md): From no account to a live project with its own domain. - [Install the CLI](https://docs.ops.syncronet.dev/get-started/install-the-cli.md): Install ops on your machine and sign it in with a device code. - [Deploy your first project](https://docs.ops.syncronet.dev/get-started/deploy-your-first-project.md): Create a project, describe it in .ops/project.ts, connect the repository and push. - [Add a domain](https://docs.ops.syncronet.dev/get-started/add-a-domain.md): Give a service a public hostname. DNS and certificates are handled for you. - [Concepts](https://docs.ops.syncronet.dev/concepts.md): The few ideas everything else on ops is built from. - [Projects and environments](https://docs.ops.syncronet.dev/concepts/projects-and-environments.md): A project is one product; an environment is one running copy of it. - [Resources](https://docs.ops.syncronet.dev/concepts/resources.md): Everything a project runs is a resource with a name, a spec and a status. - [Deployments and previews](https://docs.ops.syncronet.dev/concepts/deployments-and-previews.md): From a push to a running service, rolling back, promoting, and an environment per pull request. - [The project file](https://docs.ops.syncronet.dev/concepts/project-file.md): .ops/project.ts describes what a repository deploys, the way nuxt.config.ts describes a Nuxt app. - [Resources](https://docs.ops.syncronet.dev/resources.md): One page per thing you can add to a project. - [Services](https://docs.ops.syncronet.dev/resources/services.md): A long running container built from your repository, in one environment. - [Databases](https://docs.ops.syncronet.dev/resources/databases.md): Postgres, MariaDB, libSQL or SQLite, on servers that belong to your project alone. - [Domains](https://docs.ops.syncronet.dev/resources/domains.md): A hostname the edge answers for, routed to a service, with DNS and a certificate. - [Secrets](https://docs.ops.syncronet.dev/resources/secrets.md): Secret groups hold the variables a service gets when it starts. - [Buckets](https://docs.ops.syncronet.dev/resources/buckets.md): S3 compatible object storage, with its keys written into a secret group. - [Jobs](https://docs.ops.syncronet.dev/resources/jobs.md): A container run on a schedule, with every run's verdict and log kept. - [Observe](https://docs.ops.syncronet.dev/observe.md): Logs, traces and metrics for every service, kept inside ops. - [Logs](https://docs.ops.syncronet.dev/observe/logs.md): Everything your containers print, searchable in the console and followed from the CLI. - [Traces](https://docs.ops.syncronet.dev/observe/traces.md): Requests as trees of spans, from services that export OpenTelemetry. - [Metrics](https://docs.ops.syncronet.dev/observe/metrics.md): The numbers your services expose, charted per service, and what each container uses now. - [Publish](https://docs.ops.syncronet.dev/publish.md): Packages, docs and translations, versioned and served by ops. - [Packages](https://docs.ops.syncronet.dev/publish/packages.md): Publish npm packages and Rust crates to ops's own registries, and install them in your builds. - [Publish docs](https://docs.ops.syncronet.dev/publish/docs.md): Keep docs beside your code as Markdown; ops stores every version and the docs site shows it. - [Translations](https://docs.ops.syncronet.dev/publish/translations.md): Your own strings, the shared ones, and the ones your packages bring, composed into one locale file per language. - [Develop](https://docs.ops.syncronet.dev/develop.md): Tokens for machines, and Claude working on your project through MCP. - [Tokens](https://docs.ops.syncronet.dev/develop/tokens.md): Credentials for CI, scripts and machines, each carrying a role and pinned where you say. - [MCP with Claude](https://docs.ops.syncronet.dev/develop/mcp.md): Give Claude Code the ops tools over MCP, within the limits of a token. - [HTTP API](https://docs.ops.syncronet.dev/api.md): Every route the console and the CLI call, with what each one takes and answers. - [Projects and environments](https://docs.ops.syncronet.dev/api/projects.md): Create and read projects, their environments, previews and the events that happened in them, and promote one environment onto another. - [Resources](https://docs.ops.syncronet.dev/api/resources.md): Services, databases, buckets, jobs, domains and secret groups: list, create, change and remove them, and run the actions each kind offers. - [Builds and deployments](https://docs.ops.syncronet.dev/api/delivery.md): Connect a repository, follow builds, deploy and roll back services, and read the deployment history. - [Members, roles and tokens](https://docs.ops.syncronet.dev/api/access.md): Who can do what in a project: members, roles, environment rules, tokens, notification settings and the audit log. - [Login and the CLI](https://docs.ops.syncronet.dev/api/device.md): How the CLI and an MCP client get a token (a device code that someone with a console login approves), and the CLI releases it updates itself from. - [Logs, traces and metrics](https://docs.ops.syncronet.dev/api/observe.md): Search the logs, traces and metrics your services send. - [Packages and registries](https://docs.ops.syncronet.dev/api/packages.md): The npm and cargo registries your packages are published to and installed from, and the reads behind the Packages pages. - [Translations](https://docs.ops.syncronet.dev/api/translations.md): A project's own translation bundles, the shared ones it uses, its overrides and the composed locale its build pulls. - [Docs](https://docs.ops.syncronet.dev/api/docs.md): Publish and yank versions of a doc set, read them without a token, and follow the revision a docs reader serves. - [Assistant and tools](https://docs.ops.syncronet.dev/api/assistant.md): The tools the assistant and an MCP client call, each run with the permissions of whoever calls it. - [Status and health](https://docs.ops.syncronet.dev/api/status.md): The public status of the platform and its health probes. - [ops CLI](https://docs.ops.syncronet.dev/cli.md): The ops command line client. Sign in, deploy, follow logs, set secrets and publish docs from a terminal or CI. - [Sign in and configure](https://docs.ops.syncronet.dev/cli/sign-in.md): Device login, choosing a project, tokens, the config file and the variables that override it. - [Projects and resources](https://docs.ops.syncronet.dev/cli/projects-and-resources.md): List your projects, what one environment runs, the modules a project publishes, and the status page. - [Logs](https://docs.ops.syncronet.dev/cli/logs.md): Search a project's logs, or follow them as they arrive. - [Deploy, promote and roll back](https://docs.ops.syncronet.dev/cli/deploy.md): Deploy one service by commit, build or digest, promote an environment onto another, and roll back. - [Secrets and env files](https://docs.ops.syncronet.dev/cli/secrets.md): List and set the variables of a secret group, rotate it, and pull its text values into a local env file. - [Translations](https://docs.ops.syncronet.dev/cli/translations.md): Pull a project's composed translations into the locale files you commit. - [Doc sets](https://docs.ops.syncronet.dev/cli/docs.md): List doc sets, publish a docs folder as a version, and yank a version. - [Claude and other MCP clients](https://docs.ops.syncronet.dev/cli/mcp.md): Serve the ops tools to Claude Code or any MCP client over stdio. - [Updates](https://docs.ops.syncronet.dev/cli/updates.md): How ops keeps itself on the release ops serves, and how to switch that off. ## nuxt-ops 0.1.0 - [Overview](https://docs.ops.syncronet.dev/nuxt-ops.md): The Nuxt module for apps that run on ops. Runtime config, translations pulled at build time and a status banner. - [Configuration](https://docs.ops.syncronet.dev/nuxt-ops/configuration.md): Every option of the module, the environment variable behind it, and the runtime config it writes. - [Translations at build time](https://docs.ops.syncronet.dev/nuxt-ops/translations.md): Refresh the app's locale files from ops before every build, with the checked in files as the fallback. - [Status banner](https://docs.ops.syncronet.dev/nuxt-ops/status-banner.md): Show a line in the app while a component on the status page is degraded or down. ## ops-env 0.1.0 - [Overview](https://docs.ops.syncronet.dev/ops-env.md): Boot time env loading for Node and Bun services on ops. The env file ops renders, read in process, with no $ expansion. - [Loading](https://docs.ops.syncronet.dev/ops-env/loading.md): What load() reads in production and on your machine, which value wins, and how errors look. - [Nuxt and Nitro](https://docs.ops.syncronet.dev/ops-env/nuxt.md): Preload ops-env in a Nuxt or Nitro server, and ship it in an image whose node_modules is not beside the server. - [The file format](https://docs.ops.syncronet.dev/ops-env/format.md): What a line of the env file may hold, and why a dollar sign is never expanded. ## ops-sdk 0.1.0 - [Overview](https://docs.ops.syncronet.dev/ops-sdk.md): The Rust SDK for services that run on ops. Boot time env, logs and traces, metrics, the healthcheck probe, status check-ins and translations. - [Boot time env](https://docs.ops.syncronet.dev/ops-sdk/env.md): Read the env file ops renders for a service, in process, before anything else. - [Logs, traces and metrics](https://docs.ops.syncronet.dev/ops-sdk/observability.md): Structured logs, OTLP trace export and a Prometheus registry for an axum service. - [Healthcheck probe](https://docs.ops.syncronet.dev/ops-sdk/probe.md): A dependency free healthcheck binary for container images that have no shell and no curl. - [Status check-in](https://docs.ops.syncronet.dev/ops-sdk/status.md): Tell the status page a scheduled job ran, so a job that stops running turns its component red. - [Translations at build time](https://docs.ops.syncronet.dev/ops-sdk/i18n.md): Pull the project's composed translations from ops in build.rs and embed them in the binary.