Skip to content

Commit de809fa

Browse files
Move directory 'website' to 'docsite'. Add architecture page for docsite
1 parent 4ad1acf commit de809fa

51 files changed

Lines changed: 1266 additions & 842 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/deploy-docsite.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ on:
99

1010
defaults:
1111
run:
12-
working-directory: website
12+
working-directory: docsite
1313

1414
jobs:
1515
build:
@@ -26,19 +26,19 @@ jobs:
2626
run_install: false
2727
- uses: actions/setup-node@v4
2828
with:
29-
cache-dependency-path: website/pnpm-lock.yaml
29+
cache-dependency-path: docsite/pnpm-lock.yaml
3030
node-version: 20
3131
cache: pnpm
3232

3333
- name: Install dependencies
3434
run: pnpm i
35-
- name: Build website
35+
- name: Build docsite
3636
run: pnpm run build
3737

3838
- name: Upload Build Artifact
3939
uses: actions/upload-pages-artifact@v3
4040
with:
41-
path: website/build
41+
path: docsite/build
4242

4343
deploy:
4444
name: Deploy to GitHub Pages

.github/workflows/test-deploy-docsite.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77

88
defaults:
99
run:
10-
working-directory: ./website
10+
working-directory: docsite
1111

1212
jobs:
1313
test-deploy:
@@ -24,11 +24,11 @@ jobs:
2424
run_install: false
2525
- uses: actions/setup-node@v4
2626
with:
27-
cache-dependency-path: website/pnpm-lock.yaml
27+
cache-dependency-path: docsite/pnpm-lock.yaml
2828
node-version: 20
29-
cache: npm
29+
cache: pnpm
3030

3131
- name: Install dependencies
32-
run: npm ci
33-
- name: Test build website
34-
run: npm run build
32+
run: pnpm i
33+
- name: Test build docsite
34+
run: pnpm run build
File renamed without changes.
File renamed without changes.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
title: Starting Grindcord
3+
authors: [aureateAnatidae]
4+
tags: [technical]
5+
---
6+
7+
8+
<!--truncate-->

docsite/blog/about.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
title: About Grindcord
3+
description: What is Grindcord?
4+
---
5+
Hello world
6+
7+
<!-- truncate -->
8+
9+
Whether competitive fighting game players want to have fun, get better, or meet people, we need a community. Currently, these communities are mostly reliant on Discord, a fairly ubiquitous messaging platform among videogame enthusiasts.
10+
11+
Grindcord is a set of tools for Discord servers for gamers. Features include:

docsite/blog/authors.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
aureateAnatidae:
2+
name: aureateAnatidae
3+
title: Creator of Grindcord
4+
url: https://auan.ca
5+
image_url: https://github.com/slorber.png
6+
page: true
7+
socials:
8+
x: aureateAnatidae
9+
linkedin: ecfung1
10+
github: aureateAnatidae
11+
newsletter: https://auan.ca

docsite/blog/tags.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
updates:
2+
label: Updates
3+
permalink: /updates
4+
description: Detailed information about our apps' updates
5+
6+
technical:
7+
label: Technical
8+
permalink: /technical
9+
description: About our technical decisions
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
---
2+
title: Architecture
3+
---
4+
5+
This document describes some of the major internal components of Grindcord and their functionality.
6+
7+
## User Interfaces (Discord, Website)
8+
9+
To communicate with Discord, Grindcord uses the [Gateway API](https://discord.com/developers/docs/reference#gateway-websocket-api) provided by Discord.
10+
Grindcord receives events and commands from the Discord interface.
11+
12+
For a more fluid user experience, a web interface implements all features of the Discord Interface.
13+
14+
## HTTP Backend
15+
16+
For compatibility and extensibility, Grindcord provides a decoupled stateless backend which interfaces primarily with the User Interfaces detailed above, but can interact with any HTTP client.
17+
18+
Multiple backends MAY utilize the same database.
19+
20+
## Database
21+
22+
Grindcord is capable of using most relational database management systems, however, it is developed with SQLite.
23+
24+
We recommend Postgres.
25+
26+
```mermaid
27+
block-beta
28+
columns 1
29+
db[("Database")]
30+
space
31+
backend["HTTP Backend"]
32+
space
33+
space
34+
block:interface
35+
discord["Discord"]
36+
webapp["Web App"]
37+
http_client["Other HTTP Client"]
38+
end
39+
40+
db --> backend
41+
backend --> db
42+
43+
discord --> backend
44+
backend --> discord
45+
46+
webapp --> backend
47+
backend --> webapp
48+
49+
http_client --> backend
50+
backend --> http_client
51+
52+
style interface stroke-dasharray: 5 5
53+
```
54+
###### Block diagram for Grindcord.

docsite/docs/intro.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
title: Welcome to Grindcord!
3+
sidebar_position: 1
4+
---
5+
6+
# Welcome to Grindcord!
7+
8+
We have some user-friendly guides appropriate for all levels of expertise!
9+
10+
# Reporting a set
11+
# Checking the leaderboard
12+
# Checking my sets
13+
# Checking other people's sets

0 commit comments

Comments
 (0)