[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6CSZVTGP5KAJW4ACK1WECJA":3,"skill-same:01M6CSZVTGP5KAJW4ACK1WECJA":57},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":28,"linkOnly":29,"markdownContent":30,"markdownBody":31,"frontMatter":32,"refName":35,"commitSha":36,"skillDirectory":37,"forksCount":38,"repositoryHtmlUrl":39,"repositoryHomepageUrl":39,"ownerHtmlUrl":40,"ownerBlogUrl":6,"ownerDescription":41,"updatedAt":42,"install":43,"resources":56},"01M6CSZVTGP5KAJW4ACK1WECJA","environment-setup-guide",null,"Guide developers through setting up development environments with proper tools, dependencies, and configurations","Sam-06060\u002Fjarvis-assistant","Sam-06060","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F208600848?v=4","01M6CRKT7C7FXD21V6HXF293S0","Samson Frank Ganta","01M6CRKTBEKYFD8YX5Z1GT99EE",6,"Apache-2.0","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fenvironment-setup-guide\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27],"setup","environment setup guide","environment","guide","development","Tools","up","community","dependencies","2026-11-10 10:12:30",false,"---\nname: environment-setup-guide\ndescription: \"Guide developers through setting up development environments with proper tools, dependencies, and configurations\"\nrisk: unknown\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Environment Setup Guide\n\n## Overview\n\nHelp developers set up complete development environments from scratch. This skill provides step-by-step guidance for installing tools, configuring dependencies, setting up environment variables, and verifying the setup works correctly.\n\n## When to Use This Skill\n\n- Use when starting a new project and need to set up the development environment\n- Use when onboarding new team members to a project\n- Use when switching to a new machine or operating system\n- Use when troubleshooting environment-related issues\n- Use when documenting setup instructions for a project\n- Use when creating development environment documentation\n\n## How It Works\n\n### Step 1: Identify Requirements\n\nI'll help you determine what needs to be installed:\n- Programming language and version (Node.js, Python, Go, etc.)\n- Package managers (npm, pip, cargo, etc.)\n- Database systems (PostgreSQL, MongoDB, Redis, etc.)\n- Development tools (Git, Docker, IDE extensions, etc.)\n- Environment variables and configuration files\n\n### Step 2: Check Current Setup\n\nBefore installing anything, I'll help you check what's already installed:\n```bash\n# Check versions of installed tools\nnode --version\npython --version\ngit --version\ndocker --version\n```\n\n### Step 3: Provide Installation Instructions\n\nI'll give platform-specific installation commands:\n- **macOS:** Using Homebrew\n- **Linux:** Using apt, yum, or package manager\n- **Windows:** Using Chocolatey, Scoop, or direct installers\n\n### Step 4: Configure the Environment\n\nHelp set up:\n- Environment variables (.env files)\n- Configuration files (.gitconfig, .npmrc, etc.)\n- IDE settings (VS Code, IntelliJ, etc.)\n- Shell configuration (.bashrc, .zshrc, etc.)\n\n### Step 5: Verify Installation\n\nProvide verification steps to ensure everything works:\n- Run version checks\n- Test basic commands\n- Verify database connections\n- Check environment variables are loaded\n\n## Examples\n\n### Example 1: Node.js Project Setup\n\n```markdown\n## Setting Up Node.js Development Environment\n\n### Prerequisites\n- macOS, Linux, or Windows\n- Terminal\u002FCommand Prompt access\n- Internet connection\n\n### Step 1: Install Node.js\n\n**macOS (using Homebrew):**\n\\`\\`\\`bash\n# Install Homebrew if not installed\n\u002Fbin\u002Fbash -c \"$(curl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002FHomebrew\u002Finstall\u002FHEAD\u002Finstall.sh)\"\n\n# Install Node.js\nbrew install node\n\\`\\`\\`\n\n**Linux (Ubuntu\u002FDebian):**\n\\`\\`\\`bash\n# Update package list\nsudo apt update\n\n# Install Node.js and npm\ncurl -fsSL https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x | sudo -E bash -\nsudo apt install -y nodejs\n\\`\\`\\`\n\n**Windows (using Chocolatey):**\n\\`\\`\\`powershell\n# Install Chocolatey if not installed\nSet-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https:\u002F\u002Fcommunity.chocolatey.org\u002Finstall.ps1'))\n\n# Install Node.js\nchoco install nodejs\n\\`\\`\\`\n\n### Step 2: Verify Installation\n\n\\`\\`\\`bash\nnode --version  # Should show v20.x.x or higher\nnpm --version   # Should show 10.x.x or higher\n\\`\\`\\`\n\n### Step 3: Install Project Dependencies\n\n\\`\\`\\`bash\n# Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002Fyour-repo\u002Fproject.git\ncd project\n\n# Install dependencies\nnpm install\n\\`\\`\\`\n\n### Step 4: Set Up Environment Variables\n\nCreate a \\`.env\\` file:\n\\`\\`\\`bash\n# Copy example environment file\ncp .env.example .env\n\n# Edit with your values\nnano .env\n\\`\\`\\`\n\nExample \\`.env\\` content:\n\\`\\`\\`\nNODE_ENV=development\nPORT=3000\nDATABASE_URL=postgresql:\u002F\u002Flocalhost:5432\u002Fmydb\nAPI_KEY=your-api-key-here\n\\`\\`\\`\n\n### Step 5: Run the Project\n\n\\`\\`\\`bash\n# Start development server\nnpm run dev\n\n# Should see: Server running on http:\u002F\u002Flocalhost:3000\n\\`\\`\\`\n\n### Troubleshooting\n\n**Problem:** \"node: command not found\"\n**Solution:** Restart your terminal or run \\`source ~\u002F.bashrc\\` (Linux) or \\`source ~\u002F.zshrc\\` (macOS)\n\n**Problem:** \"Permission denied\" errors\n**Solution:** Don't use sudo with npm. Fix permissions:\n\\`\\`\\`bash\nmkdir ~\u002F.npm-global\nnpm config set prefix '~\u002F.npm-global'\necho 'export PATH=~\u002F.npm-global\u002Fbin:$PATH' >> ~\u002F.bashrc\nsource ~\u002F.bashrc\n\\`\\`\\`\n```\n\n### Example 2: Python Project Setup\n\n```markdown\n## Setting Up Python Development Environment\n\n### Step 1: Install Python\n\n**macOS:**\n\\`\\`\\`bash\nbrew install python@3.11\n\\`\\`\\`\n\n**Linux:**\n\\`\\`\\`bash\nsudo apt update\nsudo apt install python3.11 python3.11-venv python3-pip\n\\`\\`\\`\n\n**Windows:**\n\\`\\`\\`powershell\nchoco install python --version=3.11\n\\`\\`\\`\n\n### Step 2: Verify Installation\n\n\\`\\`\\`bash\npython3 --version  # Should show Python 3.11.x\npip3 --version     # Should show pip 23.x.x\n\\`\\`\\`\n\n### Step 3: Create Virtual Environment\n\n\\`\\`\\`bash\n# Navigate to project directory\ncd my-project\n\n# Create virtual environment\npython3 -m venv venv\n\n# Activate virtual environment\n# macOS\u002FLinux:\nsource venv\u002Fbin\u002Factivate\n\n# Windows:\nvenv\\Scripts\\activate\n\\`\\`\\`\n\n### Step 4: Install Dependencies\n\n\\`\\`\\`bash\n# Install from requirements.txt\npip install -r requirements.txt\n\n# Or install packages individually\npip install flask sqlalchemy python-dotenv\n\\`\\`\\`\n\n### Step 5: Set Up Environment Variables\n\nCreate \\`.env\\` file:\n\\`\\`\\`\nFLASK_APP=app.py\nFLASK_ENV=development\nDATABASE_URL=sqlite:\u002F\u002F\u002Fapp.db\nSECRET_KEY=your-secret-key-here\n\\`\\`\\`\n\n### Step 6: Run the Application\n\n\\`\\`\\`bash\n# Run Flask app\nflask run\n\n# Should see: Running on http:\u002F\u002F127.0.0.1:5000\n\\`\\`\\`\n```\n\n### Example 3: Docker Development Environment\n\n```markdown\n## Setting Up Docker Development Environment\n\n### Step 1: Install Docker\n\n**macOS:**\n\\`\\`\\`bash\nbrew install --cask docker\n# Or download Docker Desktop from docker.com\n\\`\\`\\`\n\n**Linux:**\n\\`\\`\\`bash\n# Install Docker\ncurl -fsSL https:\u002F\u002Fget.docker.com -o get-docker.sh\nsudo sh get-docker.sh\n\n# Add user to docker group\nsudo usermod -aG docker $USER\nnewgrp docker\n\\`\\`\\`\n\n**Windows:**\nDownload Docker Desktop from docker.com\n\n### Step 2: Verify Installation\n\n\\`\\`\\`bash\ndocker --version        # Should show Docker version 24.x.x\ndocker-compose --version # Should show Docker Compose version 2.x.x\n\\`\\`\\`\n\n### Step 3: Create docker-compose.yml\n\n\\`\\`\\`yaml\nversion: '3.8'\n\nservices:\n  app:\n    build: .\n    ports:\n      - \"3000:3000\"\n    environment:\n      - NODE_ENV=development\n      - DATABASE_URL=postgresql:\u002F\u002Fpostgres:password@db:5432\u002Fmydb\n    volumes:\n      - .:\u002Fapp\n      - \u002Fapp\u002Fnode_modules\n    depends_on:\n      - db\n\n  db:\n    image: postgres:15\n    environment:\n      - POSTGRES_USER=postgres\n      - POSTGRES_PASSWORD=password\n      - POSTGRES_DB=mydb\n    ports:\n      - \"5432:5432\"\n    volumes:\n      - postgres_data:\u002Fvar\u002Flib\u002Fpostgresql\u002Fdata\n\nvolumes:\n  postgres_data:\n\\`\\`\\`\n\n### Step 4: Start Services\n\n\\`\\`\\`bash\n# Build and start containers\ndocker-compose up -d\n\n# View logs\ndocker-compose logs -f\n\n# Stop services\ndocker-compose down\n\\`\\`\\`\n\n### Step 5: Verify Services\n\n\\`\\`\\`bash\n# Check running containers\ndocker ps\n\n# Test database connection\ndocker-compose exec db psql -U postgres -d mydb\n\\`\\`\\`\n```\n\n## Best Practices\n\n### ✅ Do This\n\n- **Document Everything** - Write clear setup instructions\n- **Use Version Managers** - nvm for Node, pyenv for Python\n- **Create .env.example** - Show required environment variables\n- **Test on Clean System** - Verify instructions work from scratch\n- **Include Troubleshooting** - Document common issues and solutions\n- **Use Docker** - For consistent environments across machines\n- **Pin Versions** - Specify exact versions in package files\n- **Automate Setup** - Create setup scripts when possible\n- **Check Prerequisites** - List required tools before starting\n- **Provide Verification Steps** - Help users confirm setup works\n\n### ❌ Don't Do This\n\n- **Don't Assume Tools Installed** - Always check and provide install instructions\n- **Don't Skip Environment Variables** - Document all required variables\n- **Don't Use Sudo with npm** - Fix permissions instead\n- **Don't Forget Platform Differences** - Provide OS-specific instructions\n- **Don't Leave Out Verification** - Always include test steps\n- **Don't Use Global Installs** - Prefer local\u002Fvirtual environments\n- **Don't Ignore Errors** - Document how to handle common errors\n- **Don't Skip Database Setup** - Include database initialization steps\n\n## Common Pitfalls\n\n### Problem: \"Command not found\" after installation\n**Symptoms:** Installed tool but terminal doesn't recognize it\n**Solution:**\n- Restart terminal or source shell config\n- Check PATH environment variable\n- Verify installation location\n```bash\n# Check PATH\necho $PATH\n\n# Add to PATH (example)\nexport PATH=\"\u002Fusr\u002Flocal\u002Fbin:$PATH\"\n```\n\n### Problem: Permission errors with npm\u002Fpip\n**Symptoms:** \"EACCES\" or \"Permission denied\" errors\n**Solution:**\n- Don't use sudo\n- Fix npm permissions or use nvm\n- Use virtual environments for Python\n```bash\n# Fix npm permissions\nmkdir ~\u002F.npm-global\nnpm config set prefix '~\u002F.npm-global'\necho 'export PATH=~\u002F.npm-global\u002Fbin:$PATH' >> ~\u002F.bashrc\n```\n\n### Problem: Port already in use\n**Symptoms:** \"Port 3000 is already in use\"\n**Solution:**\n- Find and kill process using the port\n- Use a different port\n```bash\n# Find process on port 3000\nlsof -i :3000\n\n# Kill process\nkill -9 \u003CPID>\n\n# Or use different port\nPORT=3001 npm start\n```\n\n### Problem: Database connection fails\n**Symptoms:** \"Connection refused\" or \"Authentication failed\"\n**Solution:**\n- Verify database is running\n- Check connection string\n- Verify credentials\n```bash\n# Check if PostgreSQL is running\nsudo systemctl status postgresql\n\n# Test connection\npsql -h localhost -U postgres -d mydb\n```\n\n## Setup Script Template\n\nCreate a `setup.sh` script to automate setup:\n\n```bash\n#!\u002Fbin\u002Fbash\n\necho \"? Setting up development environment...\"\n\n# Check prerequisites\ncommand -v node >\u002Fdev\u002Fnull 2>&1 || { echo \"❌ Node.js not installed\"; exit 1; }\ncommand -v git >\u002Fdev\u002Fnull 2>&1 || { echo \"❌ Git not installed\"; exit 1; }\n\necho \"✅ Prerequisites check passed\"\n\n# Install dependencies\necho \"? Installing dependencies...\"\nnpm install\n\n# Copy environment file\nif [ ! -f .env ]; then\n    echo \"? Creating .env file...\"\n    cp .env.example .env\n    echo \"⚠️  Please edit .env with your configuration\"\nfi\n\n# Run database migrations\necho \"?️  Running database migrations...\"\nnpm run migrate\n\n# Verify setup\necho \"? Verifying setup...\"\nnpm run test:setup\n\necho \"✅ Setup complete! Run 'npm run dev' to start\"\n```\n\n## Related Skills\n\n- `@brainstorming` - Plan environment requirements before setup\n- `@systematic-debugging` - Debug environment issues\n- `@doc-coauthoring` - Create setup documentation\n- `@git-pushing` - Set up Git configuration\n\n## Additional Resources\n\n- [Node.js Installation Guide](https:\u002F\u002Fnodejs.org\u002Fen\u002Fdownload\u002F)\n- [Python Virtual Environments](https:\u002F\u002Fdocs.python.org\u002F3\u002Ftutorial\u002Fvenv.html)\n- [Docker Documentation](https:\u002F\u002Fdocs.docker.com\u002Fget-started\u002F)\n- [Homebrew (macOS)](https:\u002F\u002Fbrew.sh\u002F)\n- [Chocolatey (Windows)](https:\u002F\u002Fchocolatey.org\u002F)\n- [nvm (Node Version Manager)](https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm)\n- [pyenv (Python Version Manager)](https:\u002F\u002Fgithub.com\u002Fpyenv\u002Fpyenv)\n\n---\n\n**Pro Tip:** Create a `setup.sh` or `setup.ps1` script to automate the entire setup process. Test it on a clean system to ensure it works!\n","# Environment Setup Guide\n\n## Overview\n\nHelp developers set up complete development environments from scratch. This skill provides step-by-step guidance for installing tools, configuring dependencies, setting up environment variables, and verifying the setup works correctly.\n\n## When to Use This Skill\n\n- Use when starting a new project and need to set up the development environment\n- Use when onboarding new team members to a project\n- Use when switching to a new machine or operating system\n- Use when troubleshooting environment-related issues\n- Use when documenting setup instructions for a project\n- Use when creating development environment documentation\n\n## How It Works\n\n### Step 1: Identify Requirements\n\nI'll help you determine what needs to be installed:\n- Programming language and version (Node.js, Python, Go, etc.)\n- Package managers (npm, pip, cargo, etc.)\n- Database systems (PostgreSQL, MongoDB, Redis, etc.)\n- Development tools (Git, Docker, IDE extensions, etc.)\n- Environment variables and configuration files\n\n### Step 2: Check Current Setup\n\nBefore installing anything, I'll help you check what's already installed:\n```bash\n# Check versions of installed tools\nnode --version\npython --version\ngit --version\ndocker --version\n```\n\n### Step 3: Provide Installation Instructions\n\nI'll give platform-specific installation commands:\n- **macOS:** Using Homebrew\n- **Linux:** Using apt, yum, or package manager\n- **Windows:** Using Chocolatey, Scoop, or direct installers\n\n### Step 4: Configure the Environment\n\nHelp set up:\n- Environment variables (.env files)\n- Configuration files (.gitconfig, .npmrc, etc.)\n- IDE settings (VS Code, IntelliJ, etc.)\n- Shell configuration (.bashrc, .zshrc, etc.)\n\n### Step 5: Verify Installation\n\nProvide verification steps to ensure everything works:\n- Run version checks\n- Test basic commands\n- Verify database connections\n- Check environment variables are loaded\n\n## Examples\n\n### Example 1: Node.js Project Setup\n\n```markdown\n## Setting Up Node.js Development Environment\n\n### Prerequisites\n- macOS, Linux, or Windows\n- Terminal\u002FCommand Prompt access\n- Internet connection\n\n### Step 1: Install Node.js\n\n**macOS (using Homebrew):**\n\\`\\`\\`bash\n# Install Homebrew if not installed\n\u002Fbin\u002Fbash -c \"$(curl -fsSL https:\u002F\u002Fraw.githubusercontent.com\u002FHomebrew\u002Finstall\u002FHEAD\u002Finstall.sh)\"\n\n# Install Node.js\nbrew install node\n\\`\\`\\`\n\n**Linux (Ubuntu\u002FDebian):**\n\\`\\`\\`bash\n# Update package list\nsudo apt update\n\n# Install Node.js and npm\ncurl -fsSL https:\u002F\u002Fdeb.nodesource.com\u002Fsetup_20.x | sudo -E bash -\nsudo apt install -y nodejs\n\\`\\`\\`\n\n**Windows (using Chocolatey):**\n\\`\\`\\`powershell\n# Install Chocolatey if not installed\nSet-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https:\u002F\u002Fcommunity.chocolatey.org\u002Finstall.ps1'))\n\n# Install Node.js\nchoco install nodejs\n\\`\\`\\`\n\n### Step 2: Verify Installation\n\n\\`\\`\\`bash\nnode --version  # Should show v20.x.x or higher\nnpm --version   # Should show 10.x.x or higher\n\\`\\`\\`\n\n### Step 3: Install Project Dependencies\n\n\\`\\`\\`bash\n# Clone the repository\ngit clone https:\u002F\u002Fgithub.com\u002Fyour-repo\u002Fproject.git\ncd project\n\n# Install dependencies\nnpm install\n\\`\\`\\`\n\n### Step 4: Set Up Environment Variables\n\nCreate a \\`.env\\` file:\n\\`\\`\\`bash\n# Copy example environment file\ncp .env.example .env\n\n# Edit with your values\nnano .env\n\\`\\`\\`\n\nExample \\`.env\\` content:\n\\`\\`\\`\nNODE_ENV=development\nPORT=3000\nDATABASE_URL=postgresql:\u002F\u002Flocalhost:5432\u002Fmydb\nAPI_KEY=your-api-key-here\n\\`\\`\\`\n\n### Step 5: Run the Project\n\n\\`\\`\\`bash\n# Start development server\nnpm run dev\n\n# Should see: Server running on http:\u002F\u002Flocalhost:3000\n\\`\\`\\`\n\n### Troubleshooting\n\n**Problem:** \"node: command not found\"\n**Solution:** Restart your terminal or run \\`source ~\u002F.bashrc\\` (Linux) or \\`source ~\u002F.zshrc\\` (macOS)\n\n**Problem:** \"Permission denied\" errors\n**Solution:** Don't use sudo with npm. Fix permissions:\n\\`\\`\\`bash\nmkdir ~\u002F.npm-global\nnpm config set prefix '~\u002F.npm-global'\necho 'export PATH=~\u002F.npm-global\u002Fbin:$PATH' >> ~\u002F.bashrc\nsource ~\u002F.bashrc\n\\`\\`\\`\n```\n\n### Example 2: Python Project Setup\n\n```markdown\n## Setting Up Python Development Environment\n\n### Step 1: Install Python\n\n**macOS:**\n\\`\\`\\`bash\nbrew install python@3.11\n\\`\\`\\`\n\n**Linux:**\n\\`\\`\\`bash\nsudo apt update\nsudo apt install python3.11 python3.11-venv python3-pip\n\\`\\`\\`\n\n**Windows:**\n\\`\\`\\`powershell\nchoco install python --version=3.11\n\\`\\`\\`\n\n### Step 2: Verify Installation\n\n\\`\\`\\`bash\npython3 --version  # Should show Python 3.11.x\npip3 --version     # Should show pip 23.x.x\n\\`\\`\\`\n\n### Step 3: Create Virtual Environment\n\n\\`\\`\\`bash\n# Navigate to project directory\ncd my-project\n\n# Create virtual environment\npython3 -m venv venv\n\n# Activate virtual environment\n# macOS\u002FLinux:\nsource venv\u002Fbin\u002Factivate\n\n# Windows:\nvenv\\Scripts\\activate\n\\`\\`\\`\n\n### Step 4: Install Dependencies\n\n\\`\\`\\`bash\n# Install from requirements.txt\npip install -r requirements.txt\n\n# Or install packages individually\npip install flask sqlalchemy python-dotenv\n\\`\\`\\`\n\n### Step 5: Set Up Environment Variables\n\nCreate \\`.env\\` file:\n\\`\\`\\`\nFLASK_APP=app.py\nFLASK_ENV=development\nDATABASE_URL=sqlite:\u002F\u002F\u002Fapp.db\nSECRET_KEY=your-secret-key-here\n\\`\\`\\`\n\n### Step 6: Run the Application\n\n\\`\\`\\`bash\n# Run Flask app\nflask run\n\n# Should see: Running on http:\u002F\u002F127.0.0.1:5000\n\\`\\`\\`\n```\n\n### Example 3: Docker Development Environment\n\n```markdown\n## Setting Up Docker Development Environment\n\n### Step 1: Install Docker\n\n**macOS:**\n\\`\\`\\`bash\nbrew install --cask docker\n# Or download Docker Desktop from docker.com\n\\`\\`\\`\n\n**Linux:**\n\\`\\`\\`bash\n# Install Docker\ncurl -fsSL https:\u002F\u002Fget.docker.com -o get-docker.sh\nsudo sh get-docker.sh\n\n# Add user to docker group\nsudo usermod -aG docker $USER\nnewgrp docker\n\\`\\`\\`\n\n**Windows:**\nDownload Docker Desktop from docker.com\n\n### Step 2: Verify Installation\n\n\\`\\`\\`bash\ndocker --version        # Should show Docker version 24.x.x\ndocker-compose --version # Should show Docker Compose version 2.x.x\n\\`\\`\\`\n\n### Step 3: Create docker-compose.yml\n\n\\`\\`\\`yaml\nversion: '3.8'\n\nservices:\n  app:\n    build: .\n    ports:\n      - \"3000:3000\"\n    environment:\n      - NODE_ENV=development\n      - DATABASE_URL=postgresql:\u002F\u002Fpostgres:password@db:5432\u002Fmydb\n    volumes:\n      - .:\u002Fapp\n      - \u002Fapp\u002Fnode_modules\n    depends_on:\n      - db\n\n  db:\n    image: postgres:15\n    environment:\n      - POSTGRES_USER=postgres\n      - POSTGRES_PASSWORD=password\n      - POSTGRES_DB=mydb\n    ports:\n      - \"5432:5432\"\n    volumes:\n      - postgres_data:\u002Fvar\u002Flib\u002Fpostgresql\u002Fdata\n\nvolumes:\n  postgres_data:\n\\`\\`\\`\n\n### Step 4: Start Services\n\n\\`\\`\\`bash\n# Build and start containers\ndocker-compose up -d\n\n# View logs\ndocker-compose logs -f\n\n# Stop services\ndocker-compose down\n\\`\\`\\`\n\n### Step 5: Verify Services\n\n\\`\\`\\`bash\n# Check running containers\ndocker ps\n\n# Test database connection\ndocker-compose exec db psql -U postgres -d mydb\n\\`\\`\\`\n```\n\n## Best Practices\n\n### ✅ Do This\n\n- **Document Everything** - Write clear setup instructions\n- **Use Version Managers** - nvm for Node, pyenv for Python\n- **Create .env.example** - Show required environment variables\n- **Test on Clean System** - Verify instructions work from scratch\n- **Include Troubleshooting** - Document common issues and solutions\n- **Use Docker** - For consistent environments across machines\n- **Pin Versions** - Specify exact versions in package files\n- **Automate Setup** - Create setup scripts when possible\n- **Check Prerequisites** - List required tools before starting\n- **Provide Verification Steps** - Help users confirm setup works\n\n### ❌ Don't Do This\n\n- **Don't Assume Tools Installed** - Always check and provide install instructions\n- **Don't Skip Environment Variables** - Document all required variables\n- **Don't Use Sudo with npm** - Fix permissions instead\n- **Don't Forget Platform Differences** - Provide OS-specific instructions\n- **Don't Leave Out Verification** - Always include test steps\n- **Don't Use Global Installs** - Prefer local\u002Fvirtual environments\n- **Don't Ignore Errors** - Document how to handle common errors\n- **Don't Skip Database Setup** - Include database initialization steps\n\n## Common Pitfalls\n\n### Problem: \"Command not found\" after installation\n**Symptoms:** Installed tool but terminal doesn't recognize it\n**Solution:**\n- Restart terminal or source shell config\n- Check PATH environment variable\n- Verify installation location\n```bash\n# Check PATH\necho $PATH\n\n# Add to PATH (example)\nexport PATH=\"\u002Fusr\u002Flocal\u002Fbin:$PATH\"\n```\n\n### Problem: Permission errors with npm\u002Fpip\n**Symptoms:** \"EACCES\" or \"Permission denied\" errors\n**Solution:**\n- Don't use sudo\n- Fix npm permissions or use nvm\n- Use virtual environments for Python\n```bash\n# Fix npm permissions\nmkdir ~\u002F.npm-global\nnpm config set prefix '~\u002F.npm-global'\necho 'export PATH=~\u002F.npm-global\u002Fbin:$PATH' >> ~\u002F.bashrc\n```\n\n### Problem: Port already in use\n**Symptoms:** \"Port 3000 is already in use\"\n**Solution:**\n- Find and kill process using the port\n- Use a different port\n```bash\n# Find process on port 3000\nlsof -i :3000\n\n# Kill process\nkill -9 \u003CPID>\n\n# Or use different port\nPORT=3001 npm start\n```\n\n### Problem: Database connection fails\n**Symptoms:** \"Connection refused\" or \"Authentication failed\"\n**Solution:**\n- Verify database is running\n- Check connection string\n- Verify credentials\n```bash\n# Check if PostgreSQL is running\nsudo systemctl status postgresql\n\n# Test connection\npsql -h localhost -U postgres -d mydb\n```\n\n## Setup Script Template\n\nCreate a `setup.sh` script to automate setup:\n\n```bash\n#!\u002Fbin\u002Fbash\n\necho \"? Setting up development environment...\"\n\n# Check prerequisites\ncommand -v node >\u002Fdev\u002Fnull 2>&1 || { echo \"❌ Node.js not installed\"; exit 1; }\ncommand -v git >\u002Fdev\u002Fnull 2>&1 || { echo \"❌ Git not installed\"; exit 1; }\n\necho \"✅ Prerequisites check passed\"\n\n# Install dependencies\necho \"? Installing dependencies...\"\nnpm install\n\n# Copy environment file\nif [ ! -f .env ]; then\n    echo \"? Creating .env file...\"\n    cp .env.example .env\n    echo \"⚠️  Please edit .env with your configuration\"\nfi\n\n# Run database migrations\necho \"?️  Running database migrations...\"\nnpm run migrate\n\n# Verify setup\necho \"? Verifying setup...\"\nnpm run test:setup\n\necho \"✅ Setup complete! Run 'npm run dev' to start\"\n```\n\n## Related Skills\n\n- `@brainstorming` - Plan environment requirements before setup\n- `@systematic-debugging` - Debug environment issues\n- `@doc-coauthoring` - Create setup documentation\n- `@git-pushing` - Set up Git configuration\n\n## Additional Resources\n\n- [Node.js Installation Guide](https:\u002F\u002Fnodejs.org\u002Fen\u002Fdownload\u002F)\n- [Python Virtual Environments](https:\u002F\u002Fdocs.python.org\u002F3\u002Ftutorial\u002Fvenv.html)\n- [Docker Documentation](https:\u002F\u002Fdocs.docker.com\u002Fget-started\u002F)\n- [Homebrew (macOS)](https:\u002F\u002Fbrew.sh\u002F)\n- [Chocolatey (Windows)](https:\u002F\u002Fchocolatey.org\u002F)\n- [nvm (Node Version Manager)](https:\u002F\u002Fgithub.com\u002Fnvm-sh\u002Fnvm)\n- [pyenv (Python Version Manager)](https:\u002F\u002Fgithub.com\u002Fpyenv\u002Fpyenv)\n\n---\n\n**Pro Tip:** Create a `setup.sh` or `setup.ps1` script to automate the entire setup process. Test it on a clean system to ensure it works!\n",{"name":5,"risk":33,"source":26,"date_added":34,"description":7},"unknown","2026-02-27","main","a50a3aa6b39fb0e1b7db88bef1bfc9c93606e126","modules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fenvironment-setup-guide",0,"https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant","https:\u002F\u002Fgithub.com\u002FSam-06060","Mobile Application Developer | Kotlin | Flutter, KMP, Swfit, Android,Swift UI | Building at Saar It Resources | Creator of Jarvis (AI Assistant)","2026-06-23 05:13:38",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add Sam-06060\u002Fjarvis-assistant --skill environment-setup-guide",{"tool":49,"command":50},"bunx","bunx skills add Sam-06060\u002Fjarvis-assistant --skill environment-setup-guide",{"tool":52,"command":53},"pnpm","pnpm dlx skills add Sam-06060\u002Fjarvis-assistant --skill environment-setup-guide","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fenvironment-setup-guide\u002FSKILL.md",true,[],[58,71,87,113,132,159],{"skillNo":59,"name":60,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":61,"categories":62,"keywords":68,"publishedAt":28},"01M6GDRVS6FXX3ESH0C9DW01C0","test_skill","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fscratch\u002Ftest_skill\u002FSKILL.md",[63],{"categoryNo":64,"categoryName":65,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[69,70],"Test Skill","test",{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":77,"publishedAt":28},"01M6GDRQ40HX22MA6XWC31RHHK","zustand-store-ts","Create Zustand stores following established patterns with proper TypeScript types and middleware.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzustand-store-ts\u002FSKILL.md",[],[78,79,80,81,82,83,84,26,85,86],"zustand store ts","zustand","store","with","types","middleware","patterns","create","typescript",{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":96,"publishedAt":28},"01M6GDRKEA0WE670SPFWX5GKCN","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoom-automation\u002FSKILL.md",[93],{"categoryNo":94,"categoryName":95,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000023","Skill与智能体开发",[97,98,99,100,24,101,102,103,104,105,106,107,108,109,26,110,111,112],"automation","zoom automation","zoom","first","search","MCP","via","meeting","automate","critical","creation","webinars","composio","recordings","management","tracking",{"skillNo":114,"name":115,"nameZh":6,"description":116,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":117,"categories":118,"keywords":120,"publishedAt":28},"01M6GDRFS1452PC71JQ38S24HR","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzoho-crm-automation\u002FSKILL.md",[119],{"categoryNo":94,"categoryName":95,"taxonomyType":66,"taxonomyTypeDesc":67},[121,97,122,123,124,125,126,26,101,127,109,128,106,105,24,129,85,130,102,131],"crm automation","zoho crm","crm","zoho crm automation","zoho","leads","contacts","records","update","tasks","manage",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":141,"publishedAt":28},"01M6GDRCKQBAVTGHX5XBH26KPZ","zod-validation-expert","Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzod-validation-expert\u002FSKILL.md",[138],{"categoryNo":139,"categoryName":140,"taxonomyType":66,"taxonomyTypeDesc":67},"01JBSEEDCAT000000000000009","前端开发",[142,143,144,145,146,86,147,148,149,150,151,152,81,153,154,155,156,26,157,158],"expert","zod","zod validation expert","validation","react","safe","parsing","errors","schema validation","react hook form","hook","trpc","form","type","next","schema","Next.js",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":163,"categories":164,"keywords":166,"publishedAt":28},"01M6GDR658B08K4MY0RWD4A6EH","zeroize-audit","Detects missing zeroization of sensitive data in source code and identifies zeroization removed by compiler optimizations, with assembly-level analysis, and control-flow verification. Use for auditing C\u002FC++\u002FRust code handling secrets, keys, passwords, or other sensitive data.","https:\u002F\u002Fgithub.com\u002FSam-06060\u002Fjarvis-assistant\u002Fblob\u002Fmain\u002Fmodules\u002Fagent_skills\u002Fawesome-skills\u002Fplaybooks\u002Fzeroize-audit\u002FSKILL.md",[165],{"categoryNo":94,"categoryName":95,"taxonomyType":66,"taxonomyTypeDesc":67},[167,168,169,170,171,172,173,174,26,175,176,177,178,179,180,181,182,183,184,102],"zeroize audit","audit","write","passwords","get","project","c++","activate","assembly","read","Bash","secrets","analysis","data","flow","verification","code","rust"]