A Java-based web frontend for bancho.py-ex osu! private servers, with extensive features and plugin support.
- Java 21 (OpenJDK 21)
- Maven
- bancho.py-ex (standard bancho.py is not currently supported)
make install- installs dependencies and compiles the project- Copy all files in
.config/with.exampleextension and remove the.examplesuffixcp .config/.env.example .config/.env cp .config/customization.yml.example .config/customization.yml cp .config/logger.env.example .config/logger.env - Configure the files in
.config/directory according to your needs make run- starts the Shiina web frontend
- ✅ User authentication and authorization
- ✅ Homepage with server statistics
- ✅ User profiles with customizable userpages
- ✅ Profile picture changing
- ✅ Beatmap browsing and search
- ✅ Comprehensive leaderboard system
- Global leaderboards
- Country-specific leaderboards
- Clan leaderboards with competitive statistics
- ✅ Score tracking and display
- First place scores
- Personal best scores
- Most recent scores
- Playcount graphs
- ✅ Admin panel with extensible functionality
- ✅ Multiple theme support (Classic, Modern, Elegant) seen in THEMING
- ✅ Java plugin system with event hooks
- ✅ Extensive API integration
- ✅ Donation system (Kofi)
- ✅ API request caching for improved performance
- ✅ Configurable error and request logging
- ✅ Easy customization via
.config/customization.yml - ✅ Multiple webhook support
- 🧩 SEO optimization
Shiina features a Java plugin system that allows extending functionality without modifying the core codebase.
Custom plugins can be added to the /plugins directory. To learn making plugins for shiina check out PLUGINS
shiina/
├── .config/ # Configuration files
├── data/ # Application data storage
├── docs/ # Documentation
├── logs/ # Application logs
├── plugins/ # Java plugins and configurations
├── src/ # Source code
├── static/ # Static web assets (CSS, JS, images)
├── target/ # Compiled output
└── templates/ # HTML templates
This project is licensed under the MIT LICENSE found in the LICENSE file.
Contributions are welcome! Please feel free to submit a Pull Request.