Files
acc-server-manager/README.md
2025-06-30 22:50:52 +02:00

116 lines
3.1 KiB
Markdown

# ACC Server Manager
A comprehensive web-based management system for Assetto Corsa Competizione (ACC) dedicated servers.
## 🚀 Quick Start
### Prerequisites
- Windows 10/11 or Windows Server 2016+
- Go 1.23.0+
- Administrative privileges
### Installation
1. **Clone and Build**
```bash
git clone <repository-url>
cd acc-server-manager
go mod download
go build -o api.exe cmd/api/main.go
```
2. **Generate Configuration**
```powershell
# Windows PowerShell
.\scripts\generate-secrets.ps1
# Or manually copy and edit
copy .env.example .env
```
3. **Run Application**
```bash
./api.exe
```
Access at: http://localhost:3000
## ✨ Key Features
- **Multi-Server Management** - Manage multiple ACC servers from one interface
- **Steam Integration** - Automated server installation and updates
- **Real-time Monitoring** - Live server status and performance metrics
- **Advanced Security** - JWT authentication, role-based access, rate limiting
- **Configuration Management** - Web-based configuration editor
- **Service Integration** - Windows Service management
## 🏗️ Architecture
- **Backend**: Go + Fiber web framework
- **Database**: SQLite with GORM
- **Authentication**: JWT with bcrypt
- **API**: RESTful with Swagger documentation
## 📚 Documentation
Comprehensive documentation is available in the [`documentation/`](documentation/) folder:
- **[Detailed README](documentation/DETAILED_README.md)** - Complete setup and usage guide
- **[Logging System](documentation/LOGGING_IMPLEMENTATION_SUMMARY.md)** - Enhanced error handling and logging
- **[Security Guide](documentation/SECURITY.md)** - Security features and best practices
- **[Configuration](documentation/CONFIGURATION.md)** - Advanced configuration options
- **[API Documentation](documentation/API.md)** - Complete API reference
- **[Deployment Guide](documentation/DEPLOYMENT.md)** - Production deployment instructions
- **[Migration Guides](documentation/)** - Database and feature migration instructions
## 🔒 Security Features
- JWT token authentication
- Role-based access control
- AES-256 encryption for sensitive data
- Comprehensive input validation
- Rate limiting and DoS protection
- Security headers and CORS protection
## 🛠️ Development
```bash
# Development with hot reload
go install github.com/cosmtrek/air@latest
air
# Run tests
go test ./...
# API Documentation
# Visit: http://localhost:3000/swagger/
```
## 📝 Environment Variables
Required variables (auto-generated by scripts):
- `JWT_SECRET` - JWT signing secret
- `APP_SECRET` - Application secret key
- `ENCRYPTION_KEY` - AES encryption key
Optional:
- `PORT` - HTTP port (default: 3000)
- `DB_NAME` - Database file (default: acc.db)
- `CORS_ALLOWED_ORIGIN` - CORS origins
## 🤝 Contributing
1. Fork the repository
2. Create feature branch: `git checkout -b feature/name`
3. Make changes and add tests
4. Submit pull request
## 📄 License
MIT License - see [LICENSE](LICENSE) file for details.
---
For detailed documentation, troubleshooting, and advanced configuration, see the [`documentation/`](documentation/) folder.
**Happy Racing! 🏁**