7.1 KiB
AeThex OS Distribution - Complete Setup Guide
🎯 Overview
You now have a complete Roblox-style distribution system with:
- ✅ Beautiful download page at
/download - ✅ Server API endpoints for downloading installers
- ✅ Auto-update system built into desktop app
- ✅ Web launcher for one-click installs
- ✅ Marketing materials and embed codes
📦 Build the Production Installer
Before users can download, you need to build the production installer:
# Build desktop app (takes ~5-10 minutes first time)
cd shell/aethex-shell
npm run tauri build
# Creates two installers:
# 1. shell/aethex-shell/src-tauri/target/release/bundle/nsis/AeThex-OS_0.1.0_x64-setup.exe (2.5 MB)
# 2. shell/aethex-shell/src-tauri/target/release/bundle/msi/AeThex-OS_0.1.0_x64_en-US.msi (3.7 MB)
🚀 Server Setup
1. Start Your Server
# From project root
npm run dev
# Server runs on: http://localhost:5000
# React app: http://localhost:5000/download
2. API Endpoints (Automatic)
These endpoints are already configured:
http://localhost:5000/api/download/desktop → NSIS installer
http://localhost:5000/api/download/desktop/msi → MSI installer
http://localhost:5000/api/download/version → Version info (for auto-updates)
🌐 How Users Install
Method 1: Website Download Page
User visits: http://localhost:5000/download
Clicks: "Download for Windows"
Downloads: AeThex-OS-setup.exe
Runs installer → App installed!
Method 2: Direct Download Link
User clicks: http://localhost:5000/api/download/desktop
Browser downloads installer immediately
Method 3: Web Launcher (Auto-start)
User visits: http://localhost:5000/launcher.html?autoinstall=true
Download starts automatically
🔄 Auto-Update System
The desktop app automatically checks for updates:
How It Works
- On launch, app checks:
https://aethex.dev/api/download/version - Compares current version (0.1.0) with latest version
- If new version available, shows update dialog
- User clicks "Update" → downloads and installs new version
To Release an Update
-
Increment version in
shell/aethex-shell/package.json:{ "version": "0.2.0" } -
Rebuild the installer:
cd shell/aethex-shell npm run tauri build -
Deploy new installers to your server
-
Users get notified automatically on next launch
🎨 Marketing Materials
All created in MARKETING_MATERIALS.md:
Social Media Posts
- ✅ Twitter/X post
- ✅ LinkedIn announcement
- ✅ Discord message
- ✅ Reddit post
Embed Codes
- ✅ HTML buttons
- ✅ JavaScript widgets
- ✅ React components
- ✅ Email signatures
All embed codes in EMBED_CODES.html
📊 Testing Locally
1. Test Download Page
# Start server
npm run dev
# Visit in browser
http://localhost:5000/download
# Click "Download for Windows"
# Should see 404 if installer not built yet
2. Build Installer (Recommended)
cd shell/aethex-shell
npm run tauri build
# Wait 5-10 minutes
# Installer will be created at:
# src-tauri/target/release/bundle/nsis/AeThex-OS_0.1.0_x64-setup.exe
3. Test Download Again
# Restart server if needed
npm run dev
# Visit download page
http://localhost:5000/download
# Click "Download for Windows"
# Should download AeThex-OS-setup.exe
🌍 Production Deployment
Option 1: Deploy to aethex.dev (Recommended)
-
Build installer locally:
cd shell/aethex-shell npm run tauri build -
Deploy to your server (Railway, Vercel, etc.)
git add . git commit -m "feat: add download system and installers" git push -
Upload installers to your server or CDN
- Option A: Commit installers to repo (not recommended, large files)
- Option B: Upload to S3/R2/DigitalOcean Spaces
- Option C: Host on GitHub Releases
Option 2: Use GitHub Releases
-
Create release on GitHub:
git tag v0.1.0 git push origin v0.1.0 -
Upload installers to GitHub release page
-
Update download routes in
server/download-routes.ts:const installerPath = 'https://github.com/[username]/[repo]/releases/download/v0.1.0/AeThex-OS-setup.exe';
Option 3: CDN Hosting
-
Upload to CDN (Cloudflare R2, AWS S3, DigitalOcean Spaces)
-
Update download routes to point to CDN URLs:
const installerPath = 'https://cdn.aethex.dev/downloads/AeThex-OS-setup.exe';
🔐 Production Checklist
Before going live:
- Build production installer (
npm run tauri build) - Test download locally
- Choose hosting method (GitHub Releases / CDN / Server)
- Update production URLs in code if needed
- Test auto-update system
- Verify installers work on clean Windows machine
- Set up analytics tracking
- Prepare social media posts
- Create launch announcement
📈 Analytics & Monitoring
Track Downloads
Add to your download page (client/src/pages/download.tsx):
const handleDownload = async () => {
// Track with your analytics
gtag('event', 'download_start', {
event_category: 'installer',
event_label: 'windows_desktop'
});
// ... download logic
};
Monitor Active Users
The /api/download/version endpoint logs all update checks:
- Track how many users check for updates
- Monitor active installations
- Track update adoption rate
🎬 Launch Strategy
Week Before Launch
- Build and test installer thoroughly
- Set up hosting infrastructure
- Prepare social media posts
- Notify mailing list subscribers
Launch Day
- Deploy download system
- Post on all social media channels
- Share on Reddit, Hacker News, IndieHackers
- Email announcement to users
- Monitor download metrics
Week After Launch
- Gather user feedback
- Fix critical bugs
- Share success metrics
- Plan first update (v0.2.0)
🆘 Troubleshooting
"Port 1420 already in use"
# Kill the process
taskkill //F //PID [process-id-from-netstat]
"Installer not found" error
# Build the installer first
cd shell/aethex-shell
npm run tauri build
Download fails in browser
- Check if installer exists at expected path
- Verify server has read permissions
- Check browser console for errors
- Test direct API endpoint:
http://localhost:5000/api/download/desktop
Auto-update not working
- Verify
tauri.conf.jsonupdater endpoint is correct - Check version endpoint returns valid JSON
- Ensure app has internet connection
- Look at console logs in desktop app
📞 Support & Help
- Documentation: See
MARKETING_MATERIALS.mdfor full guide - Embed Codes: See
EMBED_CODES.htmlfor ready-to-use code - Issues: File bugs on GitHub
- Community: Discord server
Next Steps:
- Build the production installer:
cd shell/aethex-shell && npm run tauri build - Test download locally:
npm run dev→ visithttp://localhost:5000/download - Deploy to production when ready
Built: 2026-02-12 Version: MVP Distribution System Status: Ready for Testing ✅