AeThex-OS/LAUNCHER_README.md

222 lines
6.4 KiB
Markdown

# AeThex Desktop Launcher
A modern desktop application launcher for AeThex OS, inspired by Battle.net and Epic Games Launcher.
![AeThex Launcher](https://img.shields.io/badge/Platform-Windows%20%7C%20macOS%20%7C%20Linux-blue)
![Build Status](https://img.shields.io/badge/build-passing-brightgreen)
![License](https://img.shields.io/badge/license-MIT-green)
## Features
### 🚀 Modern Launcher Experience
- **Game Launcher Style UI** - Beautiful, modern interface similar to Battle.net and Epic Games Store
- **App Library Management** - View, install, and launch all your AeThex applications
- **Download Management** - Track installations with progress bars and status updates
- **Auto-Updates** - Automatic updates for the launcher and installed apps
### 💻 Desktop Integration
- **System Tray** - Minimize to system tray for quick access
- **Native Performance** - Built with Tauri for optimal performance and small binary size
- **Cross-Platform** - Works on Windows, macOS, and Linux
- **Offline Mode** - Launch installed apps even without internet connection
### 🎨 User Interface
- **Grid/List Views** - Switch between grid cards and list views
- **Featured Apps** - Discover new AeThex applications
- **Play Time Tracking** - See your usage statistics
- **Dark/Light Themes** - Automatic theme switching
## Screenshots
### Library View
The main library shows all your installed applications with play buttons and stats.
### Store View
Browse and install new AeThex applications from the integrated store.
### Updates View
Keep all your apps up to date with automatic update notifications.
## Installation
### Pre-built Binaries
Download the latest release for your platform:
**Windows**
- Download `AeThex-Launcher-Setup.msi`
- Run the installer and follow the prompts
- Launch from Start Menu or Desktop shortcut
**macOS**
- Download `AeThex-Launcher.dmg`
- Open the DMG and drag AeThex Launcher to Applications
- Launch from Applications folder or Launchpad
**Linux**
- **Ubuntu/Debian**: Download `.deb` and run `sudo dpkg -i aethex-launcher*.deb`
- **Fedora/RHEL**: Download `.rpm` and run `sudo rpm -i aethex-launcher*.rpm`
- **Universal**: Download `.AppImage`, make executable, and run
### Build from Source
See [LAUNCHER_BUILD.md](LAUNCHER_BUILD.md) for detailed build instructions.
## Usage
### Launching Apps
1. **Open AeThex Launcher** - Find it in your applications menu or system tray
2. **Browse Library** - See all your installed apps
3. **Click Launch** - Click the play button to launch any installed app
4. **Install New Apps** - Go to the Store tab to discover and install new apps
### Managing Apps
- **Install**: Click "Install" button on any app in the Store
- **Uninstall**: Click the menu icon (⋮) on any installed app and select uninstall
- **Update**: Go to the Updates tab to update apps with new versions
- **Open Folder**: Access app installation folders from the menu
### System Tray
The launcher can run in the background in your system tray:
- **Left Click** - Show/hide the launcher window
- **Right Click** - Open context menu with options
- **Quit** - Close the launcher completely
## Development
### Prerequisites
- Node.js 18+
- Rust toolchain
- Platform-specific dependencies (see [LAUNCHER_BUILD.md](LAUNCHER_BUILD.md))
### Running in Development Mode
```bash
# Install dependencies
npm install
# Run in development mode with hot reload
npm run dev:launcher
```
### Building
```bash
# Build for current platform
npm run build:launcher
# Platform-specific builds
npm run build:launcher:windows # Windows
npm run build:launcher:macos # macOS
npm run build:launcher:linux # Linux
```
## Architecture
### Technology Stack
- **Frontend**: React + TypeScript + Vite
- **UI Framework**: Tailwind CSS + shadcn/ui components
- **Desktop Framework**: Tauri 2.0
- **Backend**: Rust (Tauri commands)
- **State Management**: React hooks + localStorage
### Project Structure
```
├── client/src/
│ ├── components/
│ │ └── DesktopLauncher.tsx # Main launcher component
│ └── pages/
│ └── launcher.tsx # Launcher page
├── src-tauri/
│ ├── src/
│ │ └── lib.rs # Tauri commands and system integration
│ ├── Cargo.toml # Rust dependencies
│ └── tauri.conf.json # Tauri configuration
```
### Tauri Commands
The launcher exposes several Tauri commands for app management:
- `launch_app(app_id)` - Launch an installed application
- `install_app(app_id)` - Install a new application
- `uninstall_app(app_id)` - Uninstall an application
- `check_for_updates()` - Check for available updates
- `get_installed_apps()` - Get list of installed apps
- `open_app_folder(app_id)` - Open app installation folder
## Configuration
### Launcher Settings
Configuration is stored in:
- **Windows**: `%APPDATA%/com.aethex.os/`
- **macOS**: `~/Library/Application Support/com.aethex.os/`
- **Linux**: `~/.config/com.aethex.os/`
### Auto-Update Server
Configure the update server in `src-tauri/tauri.conf.json`:
```json
{
"plugins": {
"updater": {
"endpoints": ["https://your-update-server.com/{{target}}/{{arch}}/{{current_version}}"]
}
}
}
```
## Troubleshooting
### Launcher won't start
- Check that all system requirements are met
- On Linux, ensure webkitgtk is installed
- Try running from terminal to see error messages
### Apps won't install
- Check internet connection
- Verify disk space is available
- Check firewall settings
### System tray icon missing
- On Linux, ensure system tray support is enabled in your desktop environment
- Try restarting the launcher
## Contributing
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
## License
MIT License - see [LICENSE](LICENSE) for details.
## Support
- **Documentation**: [docs.aethex.com](https://docs.aethex.com)
- **Issues**: [GitHub Issues](https://github.com/AeThex-Corporation/AeThex-OS/issues)
- **Discord**: [Join our community](https://discord.gg/aethex)
## Acknowledgments
Built with:
- [Tauri](https://tauri.app/) - Desktop framework
- [React](https://react.dev/) - UI framework
- [shadcn/ui](https://ui.shadcn.com/) - UI components
- [Lucide Icons](https://lucide.dev/) - Icon library
Inspired by:
- Battle.net Launcher (Blizzard Entertainment)
- Epic Games Launcher (Epic Games)
- Steam (Valve Corporation)
---
**AeThex Corporation** © 2025-2026 | Building the future of web desktop platforms