Deployment automation and configuration for the Temp Number application stack.
Stack: AdonisJS Backend β’ Vue.js Frontend β’ MySQL Database
New to this project? Run the interactive setup wizard:
./setup-wizard.shThis guided wizard will:
- β Help you choose between local Docker or Google Cloud deployment
- β Set up Firebase authentication (required)
- β Configure GCP project (if deploying to cloud)
- β Clone source code repositories (if needed)
- β Create and validate configuration files
- β Deploy your application automatically
Perfect for first-time setup! The wizard handles all the complexity for you.
π§ Setup Wizard Guide - First-time setup walkthrough
Note for Windows users: All bash scripts work seamlessly in WSL (Windows Subsystem for Linux). See the Windows WSL Setup Guide for detailed instructions.
Already configured? Use these direct deployment methods:
Run the entire stack locally for development and testing.
# Start all services (from project root)
./docker-start.shAccess:
- Web: http://localhost:8080
- API: http://localhost:3333
π Full guide: Docker Compose Local Testing
Deploy to Google Cloud Platform with automated setup.
# Interactive deployment (from project root)
./google-cloud-deploy.shThe script handles:
- CloudSQL database setup
- Backend API deployment
- Web frontend deployment
- Database migrations
- Secret management
π Full guide: Complete Deployment Guide
π Quick reference: Common Commands
If you prefer manual configuration over the setup wizard, you'll need:
For Local Docker:
- Docker and Docker Compose installed
For Google Cloud:
- gcloud CLI (Google Cloud SDK) installed and authenticated
- GCP project with billing enabled
The setup wizard creates these automatically, or you can create them manually:
# Copy templates
cp config/env/backend.env.example config/env/backend.env
cp config/env/web.env.example config/env/web.env
cp config/secrets/backend.secrets.example config/secrets/backend.secrets
# Edit with your values
nano config/env/backend.env
nano config/env/web.env
nano config/secrets/backend.secretsWhat you need:
config/env/backend.env- Database, server settingsconfig/env/web.env- Firebase config, web settingsconfig/secrets/backend.secrets- API keys, passwords, tokens, etc.
Firebase Admin SDK:
- Download from Firebase Console β Project Settings β Service Accounts
- Save as:
config/secrets/firebase-service-account.json
GCP Service Account (for cloud deployment only):
- Create in GCP Console β IAM & Admin β Service Accounts
- Save as:
config/cloud-providers/gcp-service-account.json
π Detailed setup guide: Configuration Guide
Clone backend and web repositories to the root of this project manually:
git clone https://github.com/platfone-com/temp-number-backend.git
git clone https://github.com/platfone-com/temp-number-web.git- Run
./setup-wizard.sh(easiest!) - Let the wizard guide you through all steps
- Deploy automatically when prompted
- Local:
./docker-start.sh - Cloud:
./google-cloud-deploy.sh
Use individual scripts in scripts/gcp/ for granular control:
setup_gcp_project.sh- GCP project setupsetup_firebase_project.sh- Firebase configurationcreate_sql_instance.sh- Database setupdeploy_backend.sh- Backend deploymentdeploy_web.sh- Frontend deployment
Never commit these files:
- β
config/cloud-providers/gcp-service-account.json - β
config/secrets/firebase-service-account.json - β
config/secrets/backend.secrets - β
config/env/backend.env - β
config/env/web.env
They are already in .gitignore for your protection.
temp-number-deploy/
βββ setup-wizard.sh # π§ Setup wizard wrapper (START HERE!)
βββ docker-start.sh # π³ Docker deployment wrapper
βββ google-cloud-deploy.sh # βοΈ GCP deployment wrapper
β
βββ scripts/
β βββ setup_wizard.sh # Interactive setup wizard (actual script)
β βββ common/ # Common helper functions
β β βββ helpers.sh
β βββ docker/ # Docker Compose files
β β βββ docker-compose.yml
β β βββ docker-start.sh # Start all services locally (actual script)
β βββ gcp/ # GCP deployment scripts
β βββ setup_gcp_project.sh # GCP project setup helper
β βββ setup_firebase_project.sh # Firebase setup helper
β βββ deploy_app.sh # Google Cloud deployment (actual script)
β
βββ config/
β βββ env/ # Environment configuration (git-ignored)
β β βββ backend.env # Backend settings
β β βββ web.env # Web frontend settings
β βββ secrets/ # Sensitive data (git-ignored)
β β βββ backend.secrets # API keys, passwords
β β βββ firebase-service-account.json
β βββ cloud-providers/ # Cloud credentials (git-ignored)
β βββ gcp-service-account.json
β
βββ docs/ # Documentation
β βββ SETUP_WIZARD.md # π§ Setup wizard guide
β βββ WINDOWS_WSL_GUIDE.md # πͺ Windows WSL setup guide
β βββ docker/
β β βββ DOCKER_COMPOSE_LOCAL.md
β βββ gcp/
β βββ DEPLOYMENT.md
β βββ QUICK_REFERENCE.md
β
βββ temp-number-backend/ # Backend project (git cloned from repo)
βββ temp-number-web/ # Frontend project (git cloned from repo)
β
βββ setup-wizard.sh # Wrapper script for setup wizard
βββ docker-start.sh # Wrapper script for Docker deployment
βββ google-cloud-deploy.sh # Wrapper script for GCP deployment
- π§ Setup Wizard Guide - First-time setup walkthrough
- π³ Docker Compose Local Environment
- βοΈ Google Cloud Deployment Guide
- π Google Cloud Quick Reference
- πͺ Windows WSL Setup Guide
Note for Windows users: All bash scripts work seamlessly in WSL (Windows Subsystem for Linux). See the Windows WSL Setup Guide for detailed instructions.
Setup wizard fails?
- Make sure you have
gcloudinstalled and authenticated - Check that Docker is running (for local deployment)
- Verify billing is enabled on your GCP project (for cloud deployment)
Need help?
- See Troubleshooting Guide
- Check individual script documentation in
docs/ - Open an issue in this repository
MIT with restrictions on API usage. See LICENSE for details.
For issues or questions:
- Getting Started: Run
./setup-wizard.shfor guided setup - Documentation: Check the guides in the
docs/folder - Bugs: Open an issue in this repository
- Cloud Deployment: See Troubleshooting Guide