# Managing Env Vars

> Manages environment variables and security. Distinguishes between public and secret keys. Use when setting up project configuration or adding API keys.

- Skill: `majiayu000/managing-env-vars` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/managing-env-vars`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/managing-env-vars/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/managing-env-vars

---


# Environment and Security Variables

## When to use this skill
- During project setup.
- When adding new Appwrite services (Storage, Databases).
- When deploying to production.

## Workflow
- [ ] Create `.env.local` for local development.
- [ ] Distinguish between `NEXT_PUBLIC_` (Client access) and secret keys (Server access).
- [ ] Add `.env*` to `.gitignore`.
- [ ] Use `process.env.VARIABLE_NAME` with fallback or validation.

## Required Variables
- `NEXT_PUBLIC_APPWRITE_ENDPOINT`: Your Appwrite API endpoint.
- `NEXT_PUBLIC_APPWRITE_PROJECT_ID`: Your project ID.
- `APPWRITE_API_KEY`: Secret key for server-side operations (DO NOT prefix with NEXT_PUBLIC).

## Instructions
- **Leak Prevention**: Never commit `.env` files.
- **Validation**: Use a `env.ts` file with Zod to validate variables at runtime if possible.

