Skip to content

circles-fun/circles-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Table of Contents

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 circles-web, 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 circles-web from GitHub.
git clone https://github.com/circles-fun/circles-web.git
cd circles-web

# 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 circles-web's NGINX config to your nginx/sites-enabled.
sudo ln -r -s ext/nginx.conf /etc/nginx/sites-enabled/circles-web.conf
sudo nano ext/nginx.conf
sudo nginx -s reload

# Configure circles-web.
cp ext/config.sample.py config.py
nano config.py

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

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?