# Barekey > Barekey documentation for encrypted variables, .env replacement workflows, the CLI, the JavaScript SDK, and optional dynamic kinds. ## Docs - [Authentication](https://docs.barekey.dev/api-reference/authentication.md): How to authenticate against the Barekey HTTP API using a Clerk JWT or a CLI access token. - [CLI auth endpoints](https://docs.barekey.dev/api-reference/cli-auth.md): Device code flow for CLI authentication, token refresh, session management, and logout. - [Error codes](https://docs.barekey.dev/api-reference/errors.md): Complete reference for every error code returned by the Barekey HTTP API. - [Evaluate variables](https://docs.barekey.dev/api-reference/evaluate.md): Evaluate one variable, evaluate a batch, or pull all variables for a stage as a flat key→value map. - [API overview](https://docs.barekey.dev/api-reference/introduction.md): Base URL, endpoint groups, request conventions, and the headers used by the Barekey HTTP API. - [Manage variables](https://docs.barekey.dev/api-reference/manage-environment.md): List variable metadata and write (create, update, delete) variables via the HTTP API. - [Typegen manifest](https://docs.barekey.dev/api-reference/typegen-manifest.md): Fetch variable metadata for type generation tools and IDE plugins. - [Barekey vs 1Password](https://docs.barekey.dev/comparisons/1password.md): Honest comparison between Barekey and 1Password for team secrets, environments, and application-variable workflows. - [Barekey vs Bitwarden](https://docs.barekey.dev/comparisons/bitwarden.md): Honest comparison between Barekey and Bitwarden Secrets Manager for team secrets and environment workflows. - [Barekey vs Doppler](https://docs.barekey.dev/comparisons/doppler.md): Honest comparison between Barekey and Doppler for secrets management, sync workflows, and developer environments. - [Barekey vs HashiCorp Vault](https://docs.barekey.dev/comparisons/hashicorp-vault.md): Honest comparison between Barekey and HashiCorp Vault for secrets management, auth, and application configuration. - [Barekey vs alternatives](https://docs.barekey.dev/comparisons/index.md): Honest comparisons between Barekey and other tools people use for env vars, secrets, password managers, and vault workflows. - [Barekey vs Infisical](https://docs.barekey.dev/comparisons/infisical.md): Honest comparison between Barekey and Infisical for secrets management, self-hosting, and application-variable workflows. - [Barekey vs T3 Env](https://docs.barekey.dev/comparisons/t3env.md): Honest comparison between Barekey and T3 Env for environment-variable validation and developer workflows. - [Barekey vs Varlock](https://docs.barekey.dev/comparisons/varlock.md): Honest comparison between Barekey and Varlock for environment variables, secrets, and local development workflows. - [Declared types](https://docs.barekey.dev/concepts/declared-types.md): Declared types control how Barekey parses values when the SDK resolves them. - [How Barekey works](https://docs.barekey.dev/concepts/how-barekey-works.md): The org → project → stage → variable model, the resolution flow, and why the hierarchy is designed this way. - [Security model](https://docs.barekey.dev/concepts/security-model.md): How Barekey encrypts secrets, hashes tokens, and what is and isn't protected by the system. - [Stages](https://docs.barekey.dev/concepts/stages.md): Stages are the environment boundary in Barekey. They decide which variable set your CLI and SDK target. - [Variable kinds](https://docs.barekey.dev/concepts/variable-kinds.md): Barekey supports two variable kinds — secret and ab_roll. This page covers how each kind works, how values are stored and resolved, and how to use them. - [Contribute to the docs](https://docs.barekey.dev/development.md): Run the Mintlify docs locally and keep public docs aligned with the product. - [Barekey](https://docs.barekey.dev/index.md): Barekey gives you one place to manage variables, then use them from your server, React app, CLI, or local .env workflow. - [CLI](https://docs.barekey.dev/integrations/cli.md): Full Barekey CLI guide, including login, target resolution, `barekey.json`, environment commands, pull workflows, and type generation. - [JavaScript SDK](https://docs.barekey.dev/integrations/javascript-sdk.md): Full guide to the Barekey SDK, including server reads, React/public reads, requirements schemas, typegen, and standalone local mode. - [Local development](https://docs.barekey.dev/integrations/local-development.md): Use Barekey locally with `barekey.json`, pulled `.env` files, or standalone SDK mode backed by local `.env` files. - [Usage patterns](https://docs.barekey.dev/integrations/patterns.md): Practical Barekey SDK and CLI patterns for shared clients, local development, production auth, and type-safe workflows. - [Quickstart](https://docs.barekey.dev/quickstart.md): Install the CLI, run barekey init, create a variable, and read it with the Barekey SDK. ## Optional - [App](https://barekey.dev) - [GitHub](https://github.com/usebarekey/barekey)