Thank you for your interest in contributing to Linuxus.
This project is designed to provide a web-based Ubuntu shell environment for education, and we welcome contributions of all kinds — code, documentation, and ideas.
-
Fork the repository
-
Clone your fork:
git clone https://github.com/<YOUR_GITHUB_NAME>/linuxus cd linuxus
-
Create a new branch:
git checkout -b <YOUR_GITHUB_NAME>/<SIMPLE_PR_TITLE>
We use the following PR types. All pull requests must start with one of these prefixes:
| Type | Description |
|---|---|
[CHORE] |
Maintenance / config / build changes |
[REFACTOR] |
Code structure improvement (no behavior change) |
[DOCUMENT] |
Documentation update |
[FEATURE] |
Minor feature addition |
[GENESIS] |
Major update / architectural change |
[BUG] |
Bug fix |
[DUPLICATE] |
Duplicate or redundant PR |
[DOCUMENT] update README usage section
[BUG] fix login session issue
[FEATURE] add logout endpoint
[GENESIS] redesign container lifecycle system
Before submitting a PR:
- Make sure your PR title follows the required format (
[TYPE] ...) - Ensure the project builds and runs correctly
- Keep changes minimal and focused
- Update documentation if needed
- PR title uses correct prefix
- Code compiles and runs
- No unnecessary files included
- Related documentation updated (if applicable)
- Changes tested locally
- Keep code simple and readable
- Prefer explicit over implicit logic
- Avoid unnecessary abstraction
- Follow existing project structure
If you find a bug:
- Use the Bug Report template
- Provide steps to reproduce
- Include logs if possible
- Use the Feature Request template
- Clearly explain the motivation
- Avoid overly broad or vague ideas
Typical contribution flow:
fork → branch → commit → PR → review → merge
- Large changes (
[GENESIS]) should be discussed in an issue first - Duplicate or conflicting PRs may be marked as
[DUPLICATE] - Maintainers may request changes before merging
- Be respectful and constructive
- Focus on technical discussion
- Keep feedback concise and clear
By contributing to this project, you agree that your contributions will be licensed under the MIT License.