Skip to content
forked from varkaria/guweb

The frontend appearance for the osu! server protocol, gulag! 🧢

License

Notifications You must be signed in to change notification settings

velvet-moe/guweb

This branch is 15 commits behind varkaria/guweb:main.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

323c329 Β· Apr 29, 2022
Jul 26, 2021
Jun 16, 2021
Apr 1, 2022
Jun 16, 2021
Jun 16, 2021
Apr 29, 2022
Jan 3, 2022
Mar 2, 2022
Mar 25, 2022
Jul 28, 2021
Jun 16, 2021
Jan 19, 2022
Jun 27, 2021
Jan 3, 2022

Repository files navigation

Table of Contents

What is guweb?

guweb is the front-facing appearance of the osu! server protocol, gulag! Using native async/await syntax written on top of Quart and cmyui's multipurpose library, guweb achieves flexability, cleanliness, and efficiency not seen in other frontend implementations - all while maintaining the simplicity of Python.

Requirements

  • Some know-how with Linux (tested on Ubuntu 18.04), Python, and general-programming knowledge.
  • MySQL
  • NGINX

Setup

Setup is relatively simple - these commands should set you right up.

Notes:

  • Ubuntu 20.04 is known to have issues with NGINX and osu! for unknown reasons?
  • If you have any difficulties setting up guweb, feel free to join the Discord server at the top of the README, we now have a bit of a community!
# Install Python >=3.9 and latest version of PIP.
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt install python3.9 python3.9-dev python3.9-distutils
wget https://bootstrap.pypa.io/get-pip.py
python3.9 get-pip.py && rm get-pip.py

# Install MySQL and NGINX.
sudo apt install mysql-server nginx

# Clone guweb from GitHub.
git clone https://github.com/varkaria/guweb.git
cd guweb

# Initialize and update the submodules.
git submodule init && git submodule update

# Install requirements from pip.
python3.9 -m pip install -r ext/requirements.txt

# Add and configure guweb's NGINX config to your nginx/sites-enabled.
sudo ln -r -s ext/nginx.conf /etc/nginx/sites-enabled/guweb.conf
sudo nano ext/nginx.conf
sudo nginx -s reload

# Configure guweb.
cp ext/config.sample.py config.py
nano config.py

# Run guweb (on port 8000).
python3.9 main.py # Run directly to access debug features for development!
hypercorn main.py # Please run guweb with hypercorn when in production! It will improve performance drastically by disabling all of the debug features a developer would need!

Directory Structure

.
β”œβ”€β”€ blueprints   # Modular routes such as the API, Frontend, or Admin Panel.
β”œβ”€β”€ docs         # Markdown files used in guweb's documentation system.
β”œβ”€β”€ ext          # External files from guweb's primary operation.
β”œβ”€β”€ objects      # Code for representing privileges, global objects, and more.
β”œβ”€β”€ static       # Code or content that is not modified or processed by guweb itself.
β”œβ”€β”€ templates    # HTML that contains content that is rendered after the page has loaded.
    β”œβ”€β”€ admin    # Templated content for the admin panel (/admin).
    β”œβ”€β”€ settings # Templated content for settings (/settings).
    β”” ...         # Templated content for all of guweb (/).

The team

  • Yoru | Backend, Grammar Checking [Deprecated]
  • Varkaria | Frontend, Backend?

The End

Well know that you know everything, why not check out the original code guweb was based off of in this i think i should continue this work to finish work?

About

The frontend appearance for the osu! server protocol, gulag! 🧢

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 38.6%
  • CSS 33.7%
  • Python 18.2%
  • JavaScript 9.5%