Build Process
Using Makefile
cd frontend && npm run build- Builds frontendgo build -o ./bin/server cmd/server/main.go- Builds Go binary with embedded frontend
Manual Build
What Happens During Build
1. Frontend Build (Vite)
- Transpiles TypeScript to JavaScript
- Bundles modules together
- Minifies JavaScript and CSS
- Optimizes images
- Adds content hashes to filenames
- Generates source maps
- Creates build manifest
2. Go Build with Embed
- Embeds
dist/into the binary - Creates self-contained executable
- No external dependencies needed
Build Configuration
Vite Configuration
Environment Variables
Build Optimization
1. Code Splitting
Split code into smaller chunks:2. Tree Shaking
Import only what you need:3. Minification
Vite minifies automatically:4. Asset Optimization
Multi-Environment Builds
Environment Files
Build Scripts
Build Analysis
Bundle Size
Visualize Bundle
stats.html to see bundle composition.
CI/CD Integration
GitHub Actions
Troubleshooting
Build Fails
Large Bundle Size
- Check bundle analysis
- Enable code splitting
- Use dynamic imports
- Remove unused dependencies
Missing Assets
Ensure assets are inpublic/ or imported in code:
Next Steps
Deployment
Deploy your application
Production
Production optimization
Caching
Caching strategies