Status: GPG Verification Testing β
A comprehensive multi-stack platform for managing Wix Studio client projects with Azure cloud deployment capabilities.
This platform provides a complete solution for a Wix Studio agency, including:
- Client Websites (Node.js/Express) - Host and manage Wix Studio client websites
- Internal Tools (React/Next.js) - Admin dashboard for project management
- API Services (Node.js/Express) - Backend services for Azure and client management
- Microservices (Python/FastAPI) - Custom integrations and data processing
- Azure Infrastructure - Complete cloud deployment with Bicep templates
wix-studio-agency/
βββ packages/
β βββ wix-websites/ # Node.js apps for client websites
β βββ internal-tools/ # React admin dashboard
β βββ api-services/ # Backend API services
β βββ microservices/ # Python microservices
βββ infrastructure/
β βββ bicep/ # Azure infrastructure templates
βββ .github/
β βββ workflows/ # GitHub Actions CI/CD
β βββ copilot-instructions.md
βββ azure.yaml # Azure Developer CLI config
βββ package.json # Root workspace configuration
- React 18 with Next.js 14
- TypeScript for type safety
- Tailwind CSS for styling
- Headless UI for components
- Node.js 18 with Express
- TypeScript for type safety
- Wix SDK for integrations
- Azure SDK for cloud management
- Python 3.11 with FastAPI
- Pydantic for data validation
- Uvicorn for ASGI server
- httpx for async HTTP requests
- Azure App Service (Basic B1) - Node.js applications
- Azure Static Web Apps - React applications
- Azure Container Apps - Python microservices
- Azure SQL Database (Basic) - Structured data
- Azure Cosmos DB (Free tier) - Document storage
- Azure Key Vault - Secrets management
- Azure Application Insights - Monitoring
- Azure CDN - Content delivery
- Node.js 18+ and npm
- Python 3.11+
- Azure CLI
- Azure Developer CLI (azd)
- Git
git clone <your-repo-url>
cd AZURE_DEPLOYMENT
# Install all dependencies
npm run install:all
# Copy environment template
copy .env.example .env.local
# Edit .env.local with your actual values# Start all services in development mode
npm run dev
# Or start individual services:
npm run dev:web # Wix websites (port 3000)
npm run dev:tools # Internal tools (port 3001)
npm run dev:api # API services (port 3002)
npm run dev:microservices # Python services (port 8000)# Build all packages
npm run build
# Run linting
npm run lint
# Run tests
npm test# Initialize Azure environment
azd auth login
azd init
# Set environment variables
azd env set AZURE_ENV_NAME dev
azd env set AZURE_LOCATION eastus
# Deploy to Azure
azd upNode.js Express application for hosting Wix Studio client websites.
Key Features:
- Wix SDK integration
- Client website hosting
- API endpoints for Wix data
- Health monitoring
Scripts:
npm run dev- Start development servernpm run build- Build TypeScript to JavaScriptnpm start- Start production server
React dashboard for managing clients, projects, and deployments.
Key Features:
- Client project management
- Azure resource monitoring
- Deployment dashboard
- Real-time status updates
Scripts:
npm run dev- Start Next.js development servernpm run build- Build for productionnpm start- Start production server
Backend API for Azure management and client operations.
Key Features:
- Azure resource management
- Client data management
- Project deployment APIs
- Authentication & authorization
Scripts:
npm run dev- Start development server with hot reloadnpm run build- Compile TypeScriptnpm start- Start production server
Python FastAPI services for custom integrations and data processing.
Key Features:
- Wix webhook handlers
- Data processing pipelines
- Custom integrations
- Analytics processing
Scripts:
python -m uvicorn main:app --reload- Development serverpython main.py- Production server
The architecture is designed to stay under $250/month:
- App Service Basic B1: ~$55/month
- Container Apps Consumption: ~$30/month
- SQL Database Basic: ~$5/month
- Cosmos DB Free Tier: $0 (1000 RU/s included)
- Key Vault Standard: ~$3/month
- Application Insights: ~$10/month (pay-as-you-go)
- CDN Standard: ~$20/month
- Static Web Apps: $0 (free tier)
Total Estimated Cost: ~$125-150/month
- Development: Local development with Azure services
- Staging: Dedicated Azure environment for testing
- Production: Production Azure environment
- Managed identities for Azure service authentication
- Key Vault for all secrets and connection strings
- HTTPS enforced on all services
- CORS configured for cross-origin requests
- Basic authentication and authorization
Copy .env.example to .env.local and configure:
# Wix Studio
WIX_CLIENT_ID=your_wix_client_id
WIX_ACCESS_TOKEN=your_wix_access_token
WIX_REFRESH_TOKEN=your_wix_refresh_token
# Azure
AZURE_SUBSCRIPTION_ID=your_subscription_id
AZURE_TENANT_ID=your_tenant_id
AZURE_CLIENT_ID=your_client_id
# Database
SQL_ADMIN_PASSWORD=secure_passwordThe following secrets should be configured in Azure Key Vault:
wix-client-idwix-access-tokenwix-refresh-tokensql-admin-password
Automated CI/CD pipeline with:
- Code linting and testing
- Multi-environment deployment
- Staging and production workflows
- Azure authentication via service principal
# Set environment
azd env set AZURE_ENV_NAME production
azd env set AZURE_LOCATION eastus
# Deploy infrastructure and applications
azd up --no-prompt- Real-time performance monitoring
- Error tracking and diagnostics
- Custom telemetry and metrics
- Application maps and dependencies
All services expose /health endpoints:
- Wix Websites: http://localhost:3000/health
- API Services: http://localhost:3002/health
- Internal Tools: http://localhost:3001
- Microservices: http://localhost:8000/health
- TypeScript for all JavaScript/Node.js code
- Type hints for all Python code
- ESLint and Prettier for formatting
- Jest for JavaScript/TypeScript testing
- Pytest for Python testing
mainbranch for production releasesdevelopbranch for staging deployments- Feature branches for new development
- Pull requests required for all changes
- Create feature branch from
develop - Implement changes in appropriate package
- Add tests and documentation
- Submit pull request
- Deploy to staging for testing
- Merge to main for production
Module not found errors: Run npm run install:all to install all dependencies
Azure authentication: Ensure you're logged in with azd auth login
Environment variables: Check .env.local file exists and has correct values
Port conflicts: Ensure ports 3000, 3001, 3002, 8000 are available
- Check Application Insights for runtime errors
- Review GitHub Actions logs for deployment issues
- Use
azd logsto view Azure application logs - Check individual package README files for specific guidance
MIT License - see LICENSE file for details
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request