Goapi

Goapi is a comprehensive web-based management platform designed for Unity
game development teams. It provides a suite of tools and services to streamline
the game development workflow, including version control management,
configuration management, and development tools integration.
Features
Project Structure
.
├── core/ # Core application framework
├── modules/ # Feature modules
│ ├── adminlog/ # Admin activity logging
│ ├── browse/ # Repository browser
│ ├── bugtracker/ # Bug tracking system
│ ├── citask/ # CI/CD task management
│ ├── filemanager/# File management
│ ├── gameconf/ # Game configuration
│ ├── git/ # Git integration
│ ├── luban/ # Luban tool integration
│ ├── svn/ # SVN integration
│ └── ... # Other modules
├── models/ # Data models
├── utils/ # Utility functions
├── templates/ # HTML templates
├── public/ # Static assets
└── sql/ # Database schemas
Technology Stack
-
Backend
- Go 1.22+
- Fiber web framework
- GORM database ORM
- HTML template engine
-
Frontend
- HTML/CSS/JavaScript
- Modern web components
- Responsive design
Getting Started
Prerequisites
- Go 1.22 or higher
- MySQL/MariaDB
- Git
- SVN (optional)
Installation
-
Clone the repository:
git clone https://github.com/andycai/unitool.git
-
Install dependencies:
go mod download
-
Configure the application:
- Copy
conf.toml.example to conf.toml
- Update the configuration settings
-
Build the application:
./build.sh # For Unix-like systems
build.bat # For Windows
Running
-
Start the server:
./start.sh # For Unix-like systems
start.bat # For Windows
-
Access the web interface at http://localhost:8080
Configuration
The main configuration file conf.toml includes settings for:
- Server configuration
- Database connection
- Version control systems
- Authentication settings
- Build paths and options
License
This project is licensed under the MIT License - see the LICENSE file
for details.
Contributing
Contributions are welcome! Please feel free to submit pull requests.
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a new Pull Request