Installer
GA4Dataform provides a streamlined installation process that deploys directly to your Dataform repository without manual configuration.
Why an Automated Installer?
When working with Dataform, you have limited options for creating a repository programmatically:
- Dataform API - Programmatic repository management
- NPM package - Requires package publication and maintenance
- Git repository - Involves multiple manual setup steps
- Terraform - Infrastructure-as-code approach
We chose the Dataform API route because it provides:
- Fully automated deployment
- No manual file copying or configuration
- Consistent installation across all users
- Easy updates and version management
Technical Architecture
The installer is built with a modern web stack:
- Frontend: Alpine.js and Tailwind CSS for a responsive, interactive interface
- Backend: FastAPI (Python 3.10) handling deployment logic
- Hosting: Google Cloud Run for scalable, serverless execution
- CI/CD: Google Cloud Build for automated deployments
- Authentication: Google OAuth 2.0 for secure access
- Payment: LemonSqueezy integration for Premium subscriptions
How It Works
Initial Installation
- You authenticate via Google OAuth at setup.ga4dataform.com
- Enter your license key (Core or Premium 💎)
- Select your GCP project and GA4 dataset
- The installer:
- Validates your license and determines package type
- Creates a new Dataform repository in your GCP project
- Fetches the appropriate package files (Core or Premium)
- Deploys all modules and configurations via the Dataform API
- Sets up the complete directory structure
Updates
When updating to a newer version:
- Return to setup.ga4dataform.com and authenticate
- Enter your license key and select your existing project
- The installer:
- Validates your license
- Deploys updated core files to
definitions/core/andincludes/core/ - Preserves your custom files in
definitions/custom/andincludes/custom/
Custom Files Are Safe
The installer never modifies or deletes files in definitions/custom/ or includes/custom/. Your customizations are always preserved during updates.
Support
If you encounter any issues with the installation process, feel free to reach out to us at support@superformlabs.eu!