Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

i18n, redesign, admin panel #45

Open
wants to merge 321 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
321 commits
Select commit Hold shift + click to select a range
416d479
forget bulma.css
TrueRou Jun 7, 2022
47cf90d
fix hypercorn
TrueRou Jun 7, 2022
905d407
fix gulag avatar
TrueRou Jun 7, 2022
cd5d7a2
fix home.css
TrueRou Jun 7, 2022
4ba1ba3
update
arily Jun 7, 2022
bb313ae
new generator test
arily Jun 7, 2022
4ac5f1e
add watch
arily Jun 7, 2022
65c6a02
formatter
arily Jun 7, 2022
89abcf5
formatter result
arily Jun 7, 2022
4963d8f
fix i18n ally config
arily Jun 7, 2022
74c7c5f
update to unfinish page
DAYGoodTime Jun 8, 2022
818e7df
resolve the conflict
DAYGoodTime Jun 8, 2022
5ba6646
resolve the conflict
DAYGoodTime Jun 8, 2022
a2c7edb
add new i18 structure and completed some translation
DAYGoodTime Jun 8, 2022
2503a5d
resolve the conflict
DAYGoodTime Jun 9, 2022
43b8cfb
Merge pull request #2 from ppy-sb/i18n
DAYGoodTime Jun 9, 2022
bd5ee43
resolve the conflict
DAYGoodTime Jun 9, 2022
bcbdf92
Merge remote-tracking branch 'origin/i18n' into i18n
DAYGoodTime Jun 9, 2022
574926c
resolve the conflict
DAYGoodTime Jun 10, 2022
783132d
Merge pull request #8 from DAYGoodTime/i18n
DAYGoodTime Jun 10, 2022
17014ca
auto save & format
arily Jun 12, 2022
4c17429
work @ jun 12
arily Jun 12, 2022
078c0ec
follow status
arily Jun 12, 2022
e84f5f0
do not format yaml while saving
arily Jun 12, 2022
113294a
no space
arily Jun 12, 2022
1d7b11e
workspace plugins
arily Jun 12, 2022
d746727
i18n ally jinja-html
arily Jun 12, 2022
e4c2df7
follow 'success' 'error' pattern from python
arily Jun 12, 2022
a0c1911
leaderboard, profile, password
arily Jun 12, 2022
1e39acc
captured all literals
arily Jun 12, 2022
7fa31a9
all translations
arily Jun 12, 2022
1ae0c54
Update zh-CN.yml
arily Jun 12, 2022
171f0ff
python translations
arily Jun 12, 2022
ea11278
remove upper case PP
arily Jun 13, 2022
de468f9
python translation
arily Jun 13, 2022
6f62db6
server side literals
arily Jun 13, 2022
3fae2eb
format file name
arily Jun 13, 2022
e424bf1
complete capture
arily Jun 13, 2022
635c20b
defaults to non-parallel i18n utils
arily Jun 13, 2022
36c032c
lint
arily Jun 13, 2022
68423e4
single lined formatting
arily Jun 13, 2022
7ebb23c
new formatter
arily Jun 13, 2022
5eaa65e
compiled
arily Jun 13, 2022
83c89d8
Merge branch 'ppy-sb:i18n' into i18n
DAYGoodTime Jun 19, 2022
c440963
completed python translation
DAYGoodTime Jun 19, 2022
12fc198
Merge pull request #9 from DAYGoodTime/i18n
DAYGoodTime Jun 19, 2022
f720e01
_string overload
arily Jun 20, 2022
dd69508
Squashed commit of the following:
arily Jun 20, 2022
f03c629
resolov
DAYGoodTime Jun 20, 2022
ede940e
Merge pull request #4 from DAYGoodTime/preMege2
DAYGoodTime Jun 20, 2022
c7a676e
Merge pull request #5 from DAYGoodTime/preMege
DAYGoodTime Jun 20, 2022
aeeda24
true add
DAYGoodTime Jun 20, 2022
1de3831
solve confilct
DAYGoodTime Jun 20, 2022
341c05c
Merge pull request #6 from DAYGoodTime/preMege3
DAYGoodTime Jun 20, 2022
2749f35
Merge pull request #10 from DAYGoodTime/i18n
DAYGoodTime Jun 20, 2022
2258d71
add for python translations
DAYGoodTime Jun 20, 2022
d1792c9
Merge pull request #11 from DAYGoodTime/preMege3
DAYGoodTime Jun 20, 2022
f54bf1e
add python transaltion file
DAYGoodTime Jun 20, 2022
e81bd99
Merge branch 'i18n' of https://github.com/ppy-sb/guweb into i18n
DAYGoodTime Jun 20, 2022
1c2a773
wrong indent
arily Jun 20, 2022
37fe1fe
string with same key support
arily Jun 20, 2022
0e93bc2
fix bugs
arily Jun 20, 2022
1194d19
fix avatars upload error
DAYGoodTime Jun 22, 2022
d14826a
Merge branch 'i18n' of https://github.com/ppy-sb/guweb into i18n
DAYGoodTime Jun 22, 2022
8eabc76
Merge pull request #12 from ppy-sb/i18n
DAYGoodTime Jun 22, 2022
485b347
Add rank display
TrueRou Jul 30, 2022
a086ddb
Add search bar
TrueRou Jul 30, 2022
2c3651d
Merge remote-tracking branch 'upstream/main'
TrueRou Jul 30, 2022
ae8b737
Merge remote-tracking branch 'upstream/admin-panel'
TrueRou Jul 30, 2022
d335f7c
profile change
TrueRou Jul 30, 2022
2951654
gitignore add locker file
arily Jul 30, 2022
a05e7af
update merger
arily Jul 30, 2022
745b71a
fixup update merger
arily Jul 30, 2022
78880ed
locale overwrite
arily Jul 30, 2022
b808de8
change .overwrite to .custom
arily Jul 30, 2022
d52df32
add build step readme
arily Jul 30, 2022
b79a997
remove compiled locales
arily Jul 30, 2022
5b4e2b0
totally remake admin panel
TrueRou Jul 30, 2022
fdd12c9
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Jul 30, 2022
bc4ead8
add permissions to BN
TrueRou Jul 30, 2022
0ea9824
fix js not refresh
TrueRou Jul 30, 2022
a9441b3
useless print
TrueRou Jul 30, 2022
90ded2d
fix cn locale
arily Jul 30, 2022
32cf279
add space after comma
arily Jul 30, 2022
7c00dd3
style
arily Jul 30, 2022
6bf5281
overall styling & quality upgrade?
arily Jul 30, 2022
c1e6322
create api_key automatically
TrueRou Jul 31, 2022
74124ab
remove debug stuff
arily Jul 31, 2022
ae1f8cb
update visual
arily Jul 31, 2022
54b2038
add sync beatmaps
TrueRou Jul 31, 2022
09e4e9b
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Jul 31, 2022
4ff0ff6
table
arily Jul 31, 2022
1da31a5
add bid
arily Jul 31, 2022
f46e8e7
move styles to where it should be
arily Jul 31, 2022
49655eb
update icon
arily Jul 31, 2022
80b03b6
fix status frozen and color
TrueRou Jul 31, 2022
180d0d3
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Jul 31, 2022
21e29e8
remove debug
TrueRou Jul 31, 2022
d9dd4fb
table
arily Jul 31, 2022
b16eb15
forget diffname
TrueRou Jul 31, 2022
35df769
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Jul 31, 2022
3425a17
lots of style and i18n
arily Jul 31, 2022
14f6112
add style to loading status
TrueRou Jul 31, 2022
1584df7
add about me
TrueRou Aug 1, 2022
8952d31
markdown is not needed
TrueRou Aug 1, 2022
09a464c
animations
arily Aug 1, 2022
7f8adb8
update
arily Aug 1, 2022
3c34c88
update rand
arily Aug 1, 2022
b99d44c
rename it
arily Aug 1, 2022
05f5ace
version control on all self-hosted assets
arily Aug 1, 2022
a277395
properly show version
arily Aug 1, 2022
de4a9ff
upgrade
arily Aug 1, 2022
3c5b050
dumb
arily Aug 1, 2022
ace6298
ts-check code
arily Aug 1, 2022
77d57e7
scope control, code check, error return
arily Aug 1, 2022
d44de4b
nowrap
arily Aug 1, 2022
1fcac9a
forgot page(not finished)
TrueRou Aug 1, 2022
523ac11
hide badge
TrueRou Aug 1, 2022
8200bab
remove useless requirements
TrueRou Aug 1, 2022
71fa325
revert
TrueRou Aug 1, 2022
4daae49
I hate sql very much
arily Aug 3, 2022
73f7201
id search
arily Aug 3, 2022
589fae2
Merge pull request #14 from ppy-sb/main
DAYGoodTime Aug 4, 2022
846e637
complete admin plane translation
DAYGoodTime Aug 4, 2022
33377a0
conditional rendering discord, add config sample
arily Aug 4, 2022
281793c
default locale
arily Aug 4, 2022
8f5bfb1
safe check
TrueRou Aug 4, 2022
7b183f7
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Aug 4, 2022
c2dd119
online-infomation
arily Aug 4, 2022
231c71c
clean and improve code
TrueRou Aug 4, 2022
94638c5
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Aug 4, 2022
7a9a219
Merge pull request #15 from ppy-sb/i18n
TrueRou Aug 4, 2022
d79e734
totally optimize
TrueRou Aug 4, 2022
ed95b9d
fix priv
TrueRou Aug 4, 2022
2ae2936
fix priv
TrueRou Aug 4, 2022
e4f3556
fix glob not import
TrueRou Aug 4, 2022
f484b79
fix breaking profile.html
arily Aug 4, 2022
c9a23cb
fix typo
TrueRou Aug 4, 2022
12a9dc0
edit readme
TrueRou Aug 4, 2022
74cde19
render markdown
arily Aug 4, 2022
e045b58
styling (UGLY)
arily Aug 4, 2022
43208d9
sid not id
TrueRou Aug 4, 2022
03ccf31
move style to macro
arily Aug 4, 2022
fd93187
bump version & enter key when beatmaps search
TrueRou Aug 4, 2022
eb5a4f0
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Aug 4, 2022
b420141
numq should pass to where clause
TrueRou Aug 4, 2022
028427e
align center
arily Aug 4, 2022
548fe18
fix permission
TrueRou Aug 4, 2022
854333e
fix styling
arily Aug 4, 2022
48e9139
table, newlinw
arily Aug 4, 2022
9449ee2
extras
arily Aug 4, 2022
0bf5503
modStr frontend side & remove ts check
TrueRou Aug 4, 2022
0931fcd
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Aug 4, 2022
a293cc4
add placeholder
TrueRou Aug 4, 2022
4ee64ec
return NM if mods not exist
TrueRou Aug 4, 2022
6b0409c
profile.html margins, padding
arily Aug 5, 2022
ede9929
move getScoreModes in to vue component
arily Aug 5, 2022
41e5f3a
Merge pull request #16 from ppy-sb/main
DAYGoodTime Aug 6, 2022
3c50196
Patch missing translations,and fix language errors
DAYGoodTime Aug 6, 2022
99f5fce
password in admin panel
TrueRou Aug 11, 2022
777ea99
fix avatar image mode
TrueRou Aug 11, 2022
3d6793f
bump version
TrueRou Aug 11, 2022
6d55816
Merge remote-tracking branch 'origin/i18n'
arily Aug 11, 2022
fc6a21c
new meta for i18n
arily Aug 11, 2022
9686a8f
how are these two route different?
arily Aug 12, 2022
7b73713
advanced language pack function
arily Aug 12, 2022
49c9a70
Translate proprietary ppy-sb text
DAYGoodTime Aug 12, 2022
ae588d0
Translate proprietary ppy-sb text
arily Aug 12, 2022
a36adf6
code clean
TrueRou Aug 12, 2022
c3a86e2
Merge branch 'main' of https://github.com/ppy-sb/guweb
TrueRou Aug 12, 2022
c6e78af
remove sync & fix time and aboutme
TrueRou Aug 12, 2022
196559d
Translate proprietary ppy-sb text
DAYGoodTime Aug 12, 2022
d83bd57
Merge branch 'main' into i18n+
DAYGoodTime Aug 12, 2022
c8b8043
Merge pull request #17 from ppy-sb/i18n+
DAYGoodTime Aug 12, 2022
0f2b77d
uploads
arily Aug 12, 2022
534702b
upload
arily Aug 12, 2022
31878ce
parse osr frontend
TrueRou Aug 12, 2022
3f1eb1c
update
arily Aug 12, 2022
9301129
working?
arily Aug 12, 2022
11d1dce
should done
arily Aug 12, 2022
2debaba
Merge branch 'tsify' into score_submit
arily Aug 12, 2022
6f3a244
update
arily Aug 12, 2022
81a4cec
last error
arily Aug 12, 2022
b60be19
should work but untested
arily Aug 12, 2022
bc22f65
authorite with api_key
TrueRou Aug 13, 2022
73a6fb5
update
arily Aug 13, 2022
8f96239
remove is right
arily Aug 13, 2022
b8d9f76
add translation
arily Aug 13, 2022
006b7b4
validation
arily Aug 13, 2022
34518e4
fix default flag
arily Aug 13, 2022
4278efa
class list
arily Aug 13, 2022
5f254e9
update js
arily Aug 13, 2022
2329c98
translate score_submit page
DAYGoodTime Aug 13, 2022
7988fbb
update
arily Aug 13, 2022
bcc5499
format html template & fix bad link
arily Aug 13, 2022
00332f5
remove N grade
arily Aug 13, 2022
700ae5d
patch new translation key
DAYGoodTime Aug 13, 2022
dfcf02b
Merge pull request #18 from ppy-sb/score_submit
TrueRou Aug 14, 2022
09019aa
bump version (1.4.0)
TrueRou Aug 14, 2022
d6f32e3
remove config, rename 'using' to 'useLocales'
arily Aug 14, 2022
becdde9
patch missing translation and reset some key
DAYGoodTime Aug 14, 2022
3845837
patch missing translation and reset some key (Merge)
DAYGoodTime Aug 14, 2022
7d6d159
style update
arily Aug 16, 2022
297201e
add error report
arily Aug 16, 2022
0916110
eslint
arily Aug 25, 2022
3a9da38
switch to fetch
arily Aug 25, 2022
01ba127
lint
arily Aug 25, 2022
d7c62d9
use state manager
arily Aug 25, 2022
f78cefd
check globals
arily Aug 25, 2022
f4af391
use dot access
arily Aug 25, 2022
ab2ef83
format
arily Aug 25, 2022
fba384f
remove rounded border
arily Aug 27, 2022
6cf6f8e
back to cloudflare cdn for now. Goal is remove jq requirement
arily Aug 27, 2022
565ae54
switch to self-hosted
arily Aug 27, 2022
d52d919
update css
arily Aug 29, 2022
4c5c8ab
give dangerous priv access to bn panel
arily Aug 29, 2022
d339b75
render list of privs
arily Aug 30, 2022
6b134ab
remove 'TODO', add admin panel
arily Sep 1, 2022
0964df0
fixup
arily Sep 1, 2022
d62a259
JSON formatter
arily Sep 3, 2022
f0e7ea3
remove unnecessarily javascript
arily Sep 3, 2022
700091e
responsive table
arily Sep 3, 2022
3394bdc
no need to show admin avatar & responsive design
arily Sep 3, 2022
ac16627
format css, increase load more step size, fix full, fix css
arily Sep 3, 2022
4c29454
full responsive
arily Sep 3, 2022
6273ead
todo: delete old tags
arily Sep 3, 2022
e43ee2a
responsive design
arily Sep 3, 2022
67c79fc
fix api call breaking page
arily Sep 3, 2022
4e37c28
bump ver
arily Sep 3, 2022
95cb903
defer img
arily Oct 30, 2022
267cf9a
use black formatter
arily Oct 30, 2022
705f15a
format
arily Oct 30, 2022
75162fe
profile__literal
arily Dec 2, 2022
5e2cfe7
navbar.profile
arily Dec 2, 2022
ed80f36
fix missing i18n keys
arily Dec 2, 2022
0de9ca9
render table properly now
arily Dec 3, 2022
046a191
strict mode
arily Dec 8, 2022
f4eda83
imported twice wtf
arily Dec 8, 2022
2deaca2
typo
arily Dec 8, 2022
77f71c0
test
arily Dec 8, 2022
04b40ba
beatmap force update
TrueRou Dec 26, 2022
f4aa3f0
Merge remote-tracking branch 'upstream/main'
TrueRou Jan 25, 2023
3f5c9ff
bump version
TrueRou Jan 25, 2023
0c4750e
adapt to apiv1 structure
TrueRou Jan 25, 2023
f594a49
don't mess up!
arily Jan 27, 2023
8d79a25
undo ppy.sb
arily Jan 27, 2023
749cf08
remove upload score stuff
arily Jan 27, 2023
ba1fd9a
update readme
arily Jan 27, 2023
4dd1132
readme
arily Jan 31, 2023
d2dc55d
rename gulag
arily Jan 31, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
const globals = {
_testGlobals: 'readonly'
}
;`togglenavbar,
searchUser,
searchMaps,
searchUsers,
createState`.split(',').forEach(name => {
globals[name] = true
})
module.exports = {
extends: [
'plugin:jquery/deprecated',
'plugin:vue/recommended',
'standard-with-typescript'
],
parserOptions: {
project: './tsconfig.json'
},
plugins: [
'jquery'
],
rules: {
// disable the rule for all files
'@typescript-eslint/explicit-function-return-type': 'off'
},
globals
}
14 changes: 13 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,19 @@ cython_debug/

# Project specific
config.py
.vscode/
.data/*
!.data/backgrounds/.gitkeep
!.data/banners/.gitkeep

node_modules/
package-lock.json
yarn.lock

.vscode/launch.json

# js utils config
config.js
# compiled locales
.locales

.DS_Store
9 changes: 9 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"recommendations": [
"samuelcolvin.jinjahtml",
"lokalise.i18n-ally",
"ms-python.vscode-pylance",
"ms-python.python",
"emeraldwalk.RunOnSave"
]
}
29 changes: 29 additions & 0 deletions .vscode/i18n-ally-custom-framework.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# .vscode/i18n-ally-custom-framework.yml

# An array of strings which contain Language Ids defined by VS Code
# You can check avaliable language ids here: https://code.visualstudio.com/docs/languages/overview#_language-id
languageIds:
- html
- jinja-html
- python

# An array of RegExes to find the key usage. **The key should be captured in the first match group**.
# You should unescape RegEx strings in order to fit in the YAML file
# To help with this, you can use https://www.freeformatter.com/json-escape.html
usageMatchRegex:
# The following example shows how to detect `t("your.i18n.keys")`
# the `{key}` will be placed by a proper keypath matching regex,
# you can ignore it and use your own matching rules as well
- "[^\\w\\d]t\\('({key})'"
- "[^\\w\\d]t\\(\"({key})\""
- "[^\\w\\d]t\\(`({key})`"

# An array of strings containing refactor templates.
# The "$1" will be replaced by the keypath specified.
# Optional: uncomment the following two lines to use

refactorTemplates:
- t("$1")

# If set to true, only enables this custom framework (will disable all built-in frameworks)
monopoly: true
64 changes: 64 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"i18n-ally.namespace": true,
"i18n-ally.pathMatcher": "{namespaces}/{locale}.{ext}",
"i18n-ally.localesPaths": ["locales/default", "locales/ppy.sb"],
"i18n-ally.extract.keygenStyle": "kebab-case",
"i18n-ally.translate.engines": ["google"],
"i18n-ally.extract.keyMaxLength": 50,
"i18n-ally.extract.parsers.html": {
"attributes": [
"text",
"title",
"alt",
"placeholder",
"label",
"aria-label",
"content",
"empty-text",
"prev-text",
"next-text",
"confirmText",
"range-separator",
"start-placeholder",
"end-placeholder"
],
"ignoredTags": ["script", "style"],
"vBind": true,
"inlineText": true
},
"i18n-ally.extract.autoDetect": true,
// Make sure that particular refactoring templates would be picked up be the bulk extraction depending on the context
"i18n-ally.refactor.templates": [
{
// affect scope (optional)
// see https://github.com/lokalise/i18n-ally/blob/master/src/core/types.ts#L156-L156
"source": "html-inline",
"templates": ["t('{key}'{args})", "t(\"{key}\"{args})"],
// accept globs, resolved to project root (optional)
"include": ["templates/**/*.html"]
},
{
"templates": ["t('{key}'{args})", "t(\"{key}\"{args})"],
"include": ["blueprints/**/*.py", "objects/**/*.py", "constants/**/*.py"]
}
// ...
],
"i18n-ally.keystyle": "nested",
"emeraldwalk.runonsave": {
"commands": [
{
"match": ".(yml|yaml)$",
"cmd": "yarn i18n:build"
},
{
"match": ".html$",
"cmd": "yarn i18n:format:templates"
}
]
},
"files.associations": {
"*.html": "jinja-html"
},
"python.formatting.provider": "black",
"githubPullRequests.ignoredPullRequestBranches": ["main"]
}
48 changes: 46 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,22 @@
Table of Contents
==================

- [Table of Contents](#table-of-contents)
- [What is guweb?](#what-is-guweb)
- [Requirements](#requirements)
- [Setup](#setup)
- [Prepare Locales](#prepare-locales)
- [requirements](#requirements-1)
- [prepare](#prepare)
- [how to](#how-to)
- [Directory Structure](#directory-structure)
- [The team](#the-team)
- [The End](#the-end)

What is guweb?
------

guweb is the front-facing appearance of the osu! server protocol, [gulag](https://github.com/cmyui/gulag)!
guweb is the front-facing appearance of the osu! server protocol, [bancho.py](https://github.com/cmyui/bancho.py)!
Using native async/await syntax written on top of [Quart](https://github.com/pgjones/quart) and
[cmyui's multipurpose library](https://github.com/cmyui/cmyui_pkg), guweb achieves flexability, cleanliness,
and efficiency not seen in other frontend implementations - all while maintaining the simplicity of Python.
Expand All @@ -22,6 +27,7 @@ Requirements
- Some know-how with Linux (tested on Ubuntu 18.04), Python, and general-programming knowledge.
- MySQL
- NGINX
- NodeJS

Setup
------
Expand All @@ -41,8 +47,13 @@ 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


# Install Nodejs and npm or yarn
# see https://nodejs.org/en/download/ .

# Clone guweb from GitHub.
git clone https://github.com/varkaria/guweb.git
cd guweb
Expand All @@ -53,20 +64,51 @@ 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

# Configure locales
cp config.sample.js config.js
# edit the copied file to meet yor needs


# build locales
npm run i18n:build
# or use yarn
yarn i18n:c

# 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!
```

Prepare Locales
------

### requirements

- VSCode (recommend)
- VSCode plugin: i18n-ally (recommend)
- Node

### prepare

`npm install -D`

### how to

- open any html files with i18n-ally plugin enabled.
- translate keys
- run `npm run i18n:build` to generate files for python-i18n

Directory Structure
------

Expand All @@ -76,16 +118,18 @@ Directory Structure
β”œβ”€β”€ 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.
β”œβ”€β”€ locales # translations
β”œβ”€β”€ 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](https://github.com/Yo-ru) | Backend, Grammar Checking [Deprecated]
- [Varkaria](https://github.com/Varkaria) | Frontend, Backend?
- [ppysb-Team](https://github.com/ppy-sb) | i18n, Maintainer

The End
------
Expand Down
Loading