68 lines
1.9 KiB
Bash
Executable File
68 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
echo "🚀 Setting up Python 3.13 Boilerplate development environment..."
|
|
|
|
# Ensure we're in the right directory
|
|
cd /workspaces/boilerplate
|
|
|
|
# Create virtual environment with uv
|
|
echo "📦 Creating virtual environment..."
|
|
uv venv .venv
|
|
source .venv/bin/activate
|
|
|
|
# Install project dependencies
|
|
echo "📥 Installing dependencies..."
|
|
uv pip install -e .[dev]
|
|
|
|
# Install pre-commit hooks
|
|
echo "🪝 Setting up pre-commit hooks..."
|
|
pre-commit install --install-hooks
|
|
|
|
# Create reports directory for test outputs
|
|
mkdir -p reports
|
|
|
|
# Set up shell environment
|
|
echo "🐚 Configuring shell environment..."
|
|
cat /tmp/bashrc-append.sh >> ~/.bashrc
|
|
cat /tmp/bashrc-append.sh >> ~/.zshrc
|
|
|
|
# Initialize git if not already done
|
|
if [ ! -d .git ]; then
|
|
echo "🔧 Initializing git repository..."
|
|
git init
|
|
git add .
|
|
git commit -m "Initial commit from devcontainer setup"
|
|
fi
|
|
|
|
# Run initial checks to ensure everything works
|
|
echo "✅ Running initial health checks..."
|
|
ruff --version
|
|
pyright --version
|
|
behave --version
|
|
|
|
# Try a quick test
|
|
echo "🧪 Running a quick test..."
|
|
python -m boilerplate --version || echo "⚠️ CLI not ready yet (normal for initial setup)"
|
|
|
|
# Set up MCP servers
|
|
echo "🔧 Setting up Claude Code MCP servers..."
|
|
bash /workspaces/boilerplate/.devcontainer/setup-mcp.sh
|
|
|
|
echo ""
|
|
echo "🎉 Development environment setup complete!"
|
|
echo ""
|
|
echo "Quick start commands:"
|
|
echo " nox -s behave # Run BDD tests"
|
|
echo " nox -s lint # Run linting"
|
|
echo " nox -s format # Format code"
|
|
echo " nox -s docs # Build documentation"
|
|
echo ""
|
|
echo "Claude Code + MCP commands:"
|
|
echo " claude # Start Claude Code with MCP servers"
|
|
echo " mcp-status # Check MCP server status"
|
|
echo " mcp-logs # View MCP server logs"
|
|
echo ""
|
|
echo "🔧 Configure tokens in ~/.local/share/mcp-env-template for full MCP functionality"
|
|
echo ""
|
|
echo "Happy coding! 🐍✨🤖" |