2.9 KiB
2.9 KiB
Contributing to LANCommander
Thanks for your interest in contributing to LANCommander! This project is primarily developed by a single developer, so community contributions are greatly appreciated.
Getting Started
Prerequisites
- .NET 10.0 SDK
- Node.js (for the server UI's TypeScript/SCSS assets)
- A code editor such as Visual Studio, Rider, or VS Code
Building the Project
-
Clone the repository:
git clone https://github.com/LANCommander/LANCommander.git cd LANCommander -
Restore dependencies:
dotnet restore -
Build the server:
dotnet build LANCommander.Server -
Build the launcher:
dotnet build LANCommander.Launcher
Running Locally
To run the server in development mode:
dotnet run --project LANCommander.Server
The server will be available at http://localhost:1337 by default.
How to Contribute
Reporting Bugs
Use the GitHub Issues page with the bug report template. Include:
- Steps to reproduce the issue
- Expected vs. actual behavior
- Your OS and LANCommander version
- Relevant logs or screenshots
Submitting Changes
- Fork the repository
- Create a feature branch from
main(git checkout -b my-feature) - Make your changes
- Test your changes locally
- Commit with a clear, descriptive message
- Push to your fork and open a Pull Request
What to Work On
- Check open issues for bugs or feature requests
- Documentation improvements are always welcome at our documentation site
- Game packaging scripts and guides for the community
Code Guidelines
- Follow existing code style and conventions in the project
- Keep PRs focused, one feature or fix per PR when possible
- Include screenshots in your PR if you're changing UI
Project Structure
| Directory | Description |
|---|---|
LANCommander.Server |
ASP.NET Blazor web application (server/admin) |
LANCommander.Launcher |
Avalonia desktop client (launcher) |
LANCommander.Packager |
Game packaging tool |
LANCommander.SDK |
.NET SDK for building custom clients |
LANCommander.Server.Data |
Entity Framework data models and migrations |
LANCommander.Server.Services |
Server business logic |
LANCommander.Documentation |
Docusaurus documentation site |
Community
- Discord: Best place for discussion, help, and sharing game packages
License
By contributing to LANCommander, you agree that your contributions will be licensed under the MIT License.