diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 00000000..a5975fba
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,62 @@
+name: Report an issue 报告问题
+description: Use this template to report platform issues. To ask questions or to suggest new features, use GitHub discussions instead.
+
+body:
+ - type: checkboxes
+ id: dependencies
+ attributes:
+ label: Before submitting / 提交之前
+ description: Before submitting an issue please make sure that you use latest version and search for similar issues in the repository. / 提交问题之前,请确保您使用的是最新版本,并确保仓库中没有类似的问题。
+ options:
+ - label: I have verified that I use latest version and no similar issues were found. / 我已验证我使用的是最新版本,并且没有找到类似的问题。
+ required: true
+
+ - type: input
+ id: version
+ attributes:
+ placeholder: 0.0.0
+ label: What version of GZCTF are you using? / 您使用的 GZCTF 版本是什么?
+ validations:
+ required: true
+
+ - type: input
+ id: commit
+ attributes:
+ placeholder: 2b3c4d5
+ label: What is the commit hash for your build? (in About page and backend logs) / 您所使用的构建的提交哈希是什么?(在关于页面和后端日志中)
+ validations:
+ required: true
+
+ - type: dropdown
+ id: browser
+ attributes:
+ label: In which browsers you can reproduce the issue? / 您在哪些浏览器中可以重现此问题?
+ options:
+ - "All"
+ - "Chrome"
+ - "Safari"
+ - "Firefox"
+ - "Other, I will specify in the bug description"
+ - "Not applicable – issue is not related to the browser"
+
+ - type: textarea
+ id: description
+ attributes:
+ label: Describe the bug / 描述 bug
+ placeholder: A clear and concise description of what the bug is and how to reproduce it. / 清晰简洁地描述 bug 以及如何重现它。
+ validations:
+ required: true
+
+ - type: textarea
+ id: expectedBehavior
+ attributes:
+ label: Expected behavior / 期望行为
+ placeholder: A clear and concise description of what you expected to happen. / 清晰简洁地描述您期望的行为。
+ validations:
+ required: true
+
+ - type: textarea
+ id: possibleFix
+ attributes:
+ label: Possible fix / 可能的修复
+ description: If you have suggestions on how to fix the bug, please describe them here. / 如果您有关于如何修复 bug 的建议,请在此处描述。
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 00000000..4b370269
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1,7 @@
+contact_links:
+ - name: Read the docs 阅读文档
+ url: https://docs.ctf.gzti.me/
+ about: If you haven't read the docs yet, please check it out first. 如果你还没有阅读过文档,请先查阅。
+ - name: Community support 社区支持
+ url: https://github.com/GZTimeWalker/GZCTF/discussions
+ about: Please ask and answer questions in the user group or GitHub Discussions. 请在用户群或 GitHub Discussions 中提问交流。
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index aa72f1cd..4051e18b 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -2,7 +2,7 @@ name: Build & Publish Image
on:
push:
- branches: ["develop", "ci-test*", "v*"]
+ branches: ["develop", "ci/*", "v*"]
tags: ["v*"]
paths: ["src/GZCTF/**"]
workflow_dispatch:
@@ -23,7 +23,7 @@ jobs:
- uses: actions/setup-node@v4
with:
- node-version: 20
+ node-version: 22
- name: Get current date time
id: datetime
@@ -75,7 +75,8 @@ jobs:
latest=${{ startsWith(github.ref, 'refs/tags/v') && !contains(github.ref, '-') }}
tags: |
type=ref,event=branch
- type=semver,pattern={{raw}}
+ type=semver,pattern={{version}}
+ type=semver,pattern={{major}}.{{minor}}
type=sha,enable=true,priority=100,prefix=,suffix=,format=short
- name: Publish images
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e23b4088..5211b0f5 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,202 @@
All notable changes to [**GZCTF**](https://github.com/GZTimeWalker/GZCTF) will be documented in this file.
+---
+## [0.20.0](https://github.com/GZTimeWalker/GZCTF/compare/v0.19.4..v0.20.0) - 2024-05-08
+
+### ⛰️ Features
+
+- **(client)** download blob with filename - ([ea373a](https://github.com/GZTimeWalker/GZCTF/commit/ea373a)) by **Aether Chen**
+- **(deps)** upgrade to mantine v7 (#283) - ([a72e47](https://github.com/GZTimeWalker/GZCTF/commit/a72e47)) by **GZTime**
+- unify team info query hook - ([c46544](https://github.com/GZTimeWalker/GZCTF/commit/c46544)) by **GZTime**
+- update challenge accepted count - ([99650c](https://github.com/GZTimeWalker/GZCTF/commit/99650c)) by **GZTime**
+
+### 🐛 Bug Fixes
+
+- **(i18n)** set `lang` attr in `html` - ([9d8b39](https://github.com/GZTimeWalker/GZCTF/commit/9d8b39)) by **GZTime**
+- **(style)** footer color use css var - ([aafbf2](https://github.com/GZTimeWalker/GZCTF/commit/aafbf2)) by **GZTime**
+
+---
+## [0.19.4](https://github.com/GZTimeWalker/GZCTF/compare/v0.19.3..v0.19.4) - 2024-05-03
+
+### ⛰️ Features
+
+- **(db)** update string length limits - ([7a73a1](https://github.com/GZTimeWalker/GZCTF/commit/7a73a1)) by **GZTime**
+- **(deps)** use Ulid for key generation - ([bf2976](https://github.com/GZTimeWalker/GZCTF/commit/bf2976)) by **GZTime**
+- **(game)** use 204 to indicate the game has ended - ([f3c59b](https://github.com/GZTimeWalker/GZCTF/commit/f3c59b)) by **GZTime**
+- **(logs)** auto scroll to top & log filter - ([021a44](https://github.com/GZTimeWalker/GZCTF/commit/021a44)) by **GZTime**
+- **(proxy)** update traffic naming format - ([6c1533](https://github.com/GZTimeWalker/GZCTF/commit/6c1533)) by **GZTime**
+- **(review)** enhance team review page - ([cbb052](https://github.com/GZTimeWalker/GZCTF/commit/cbb052)) by **GZTime**
+- **(traffic)** sort challenge & teams - ([fe867b](https://github.com/GZTimeWalker/GZCTF/commit/fe867b)) by **GZTime**
+- **(traffic)** total size & no overflow - ([540793](https://github.com/GZTimeWalker/GZCTF/commit/540793)) by **GZTime**
+- **(traffic)** traffic file deletion - ([8374f0](https://github.com/GZTimeWalker/GZCTF/commit/8374f0)) by **GZTime**
+- use custom error codes in status - ([92999d](https://github.com/GZTimeWalker/GZCTF/commit/92999d)) by **GZTime**
+- capture traffic only when the game is active - ([46df11](https://github.com/GZTimeWalker/GZCTF/commit/46df11)) by **GZTime**
+- remove user role requirement for game notice signalr hub - ([108d75](https://github.com/GZTimeWalker/GZCTF/commit/108d75)) by **GZTime**
+
+### 🐛 Bug Fixes
+
+- **(style)** index page on widescreen - ([c8ce97](https://github.com/GZTimeWalker/GZCTF/commit/c8ce97)) by **GZTime**
+- **(style)** game challenge page - ([f8a62a](https://github.com/GZTimeWalker/GZCTF/commit/f8a62a)) by **GZTime**
+- **(traffic)** make deletion works as expected - ([c08607](https://github.com/GZTimeWalker/GZCTF/commit/c08607)) by **GZTime**
+- do not use Ulid for containers - ([bf4ad1](https://github.com/GZTimeWalker/GZCTF/commit/bf4ad1)) by **GZTime**
+- check isEnabled when creating the container - ([de747e](https://github.com/GZTimeWalker/GZCTF/commit/de747e)) by **GZTime**
+- handle deletion exceptions - ([d62554](https://github.com/GZTimeWalker/GZCTF/commit/d62554)) by **GZTime**
+
+### ⚙️ Miscellaneous Tasks
+
+- rename i18n key `Game_End` to `Game_Ended` - ([9dace0](https://github.com/GZTimeWalker/GZCTF/commit/9dace0)) by **GZTime**
+- tidy up - ([b45443](https://github.com/GZTimeWalker/GZCTF/commit/b45443)) by **GZTime**
+- remove dup key by crowdin - ([a092a5](https://github.com/GZTimeWalker/GZCTF/commit/a092a5)) by **GZTime**
+- add mutate for challenges - ([b032ef](https://github.com/GZTimeWalker/GZCTF/commit/b032ef)) by **GZTime**
+
+---
+## [0.19.3](https://github.com/GZTimeWalker/GZCTF/compare/v0.19.2..v0.19.3) - 2024-04-22
+
+### 🐛 Bug Fixes
+
+- **(excel)** deal with `Single` exceptions - ([5947ee](https://github.com/GZTimeWalker/GZCTF/commit/5947ee)) by **GZTime**
+- **(frontend)** unable to renew as expected - ([daa9a5](https://github.com/GZTimeWalker/GZCTF/commit/daa9a5)) by **GZTime**
+- **(mail)** DO NOT use `IStringLocalizer` after construction - ([fe589a](https://github.com/GZTimeWalker/GZCTF/commit/fe589a)) by **GZTime**
+
+---
+## [0.19.2](https://github.com/GZTimeWalker/GZCTF/compare/v0.19.1..v0.19.2) - 2024-04-21
+
+### 🐛 Bug Fixes
+
+- **(backedn)** add NPOI lib - ([c4b20e](https://github.com/GZTimeWalker/GZCTF/commit/c4b20e)) by **GZTime**
+- **(deps)** route not works - ([b37720](https://github.com/GZTimeWalker/GZCTF/commit/b37720)) by **GZTime**
+
+### ⚙️ Miscellaneous Tasks
+
+- adjust watermark - ([2d046b](https://github.com/GZTimeWalker/GZCTF/commit/2d046b)) by **GZTime**
+
+---
+## [0.19.1](https://github.com/GZTimeWalker/GZCTF/compare/v0.19.0..v0.19.1) - 2024-04-17
+
+### 🐛 Bug Fixes
+
+- **(style)** member info is not wide enough - ([399fd8](https://github.com/GZTimeWalker/GZCTF/commit/399fd8)) by **GZTime**
+- Override system default cipher list - ([240dfb](https://github.com/GZTimeWalker/GZCTF/commit/240dfb)) by **Steven He**
+
+---
+## [0.19.0](https://github.com/GZTimeWalker/GZCTF/compare/v0.18.5..v0.19.0) - 2024-04-16
+
+### ⛰️ Features
+
+- Allow customize total suffix for Prometheus - ([468b47](https://github.com/GZTimeWalker/GZCTF/commit/468b47)) by **Steven He**
+- Add version info to opentelemetry - ([e24950](https://github.com/GZTimeWalker/GZCTF/commit/e24950)) by **Steven He**
+- Map LogLevel to LogEventLevel - ([644eff](https://github.com/GZTimeWalker/GZCTF/commit/644eff)) by **Steven He**
+- Loki logging server support - ([54aa5c](https://github.com/GZTimeWalker/GZCTF/commit/54aa5c)) by **Steven He**
+- Enable dynamic adaptive GC - ([18567d](https://github.com/GZTimeWalker/GZCTF/commit/18567d)) by **Steve**
+- config cache & client message - ([c17708](https://github.com/GZTimeWalker/GZCTF/commit/c17708)) by **GZTime**
+- adding more instruments - ([91691e](https://github.com/GZTimeWalker/GZCTF/commit/91691e)) by **Steven He**
+- custom Prometheus settings - ([f06a09](https://github.com/GZTimeWalker/GZCTF/commit/f06a09)) by **Steven He**
+- control enabling of telemetry - ([93b00d](https://github.com/GZTimeWalker/GZCTF/commit/93b00d)) by **Steven He**
+- metrics and distributed tracing - ([4d807c](https://github.com/GZTimeWalker/GZCTF/commit/4d807c)) by **Steven He**
+
+### 🐛 Bug Fixes
+
+- **(frontend)** disable when update - ([a09af6](https://github.com/GZTimeWalker/GZCTF/commit/a09af6)) by **GZTime**
+- **(i18n)** missing translate - ([2fe800](https://github.com/GZTimeWalker/GZCTF/commit/2fe800)) by **GZTime**
+- **(style)** team unlock badge - ([e3a697](https://github.com/GZTimeWalker/GZCTF/commit/e3a697)) by **GZTime**
+- add ca-certificates for alpine (#269) - ([99d4ca](https://github.com/GZTimeWalker/GZCTF/commit/99d4ca)) by **GZTime**
+- Stack overflow while disposing stream - ([9a0a87](https://github.com/GZTimeWalker/GZCTF/commit/9a0a87)) by **Steven He**
+- Run Tasks with LongRunning options - ([bb8815](https://github.com/GZTimeWalker/GZCTF/commit/bb8815)) by **Steven He**
+- Properly dispose stream - ([4dfd1d](https://github.com/GZTimeWalker/GZCTF/commit/4dfd1d)) by **Steven He**
+- Exclude any exception due to cancellation - ([3d6dab](https://github.com/GZTimeWalker/GZCTF/commit/3d6dab)) by **Steven He**
+- Exclude /metrics from log - ([be3fa7](https://github.com/GZTimeWalker/GZCTF/commit/be3fa7)) by **Steven He**
+- prometheus endpoint mapping - ([8eabce](https://github.com/GZTimeWalker/GZCTF/commit/8eabce)) by **Steven He**
+- Add workaround for prometheus - ([5364a8](https://github.com/GZTimeWalker/GZCTF/commit/5364a8)) by **Steven He**
+- GlobalConfig scope - ([d1f5c5](https://github.com/GZTimeWalker/GZCTF/commit/d1f5c5)) by **Steven He**
+- Make MailSender singleton - ([133284](https://github.com/GZTimeWalker/GZCTF/commit/133284)) by **Steven He**
+- Refactor MailSender to use a queue - ([b72f99](https://github.com/GZTimeWalker/GZCTF/commit/b72f99)) by **Steven He**
+- Missing args in team localization - ([9913f3](https://github.com/GZTimeWalker/GZCTF/commit/9913f3)) by **Steven He**
+- `ClientCaptchaInfoModel` is not MemoryPackable - ([a9c3d0](https://github.com/GZTimeWalker/GZCTF/commit/a9c3d0)) by **GZTime**
+- `ClientConfig` is not registered for MemoryPack - ([7fed35](https://github.com/GZTimeWalker/GZCTF/commit/7fed35)) by **GZTime**
+- disable `AutomountServiceAccountToken` for pods - ([1e139f](https://github.com/GZTimeWalker/GZCTF/commit/1e139f)) by **GZTime**
+
+### 🎨 Styling
+
+- fix Badge padding - ([6e5e53](https://github.com/GZTimeWalker/GZCTF/commit/6e5e53)) by **GZTime**
+
+### ⚙️ Miscellaneous Tasks
+
+- update CHANGELOG - ([d9c119](https://github.com/GZTimeWalker/GZCTF/commit/d9c119)) by **GZTime**
+- add platform in mail title - ([817232](https://github.com/GZTimeWalker/GZCTF/commit/817232)) by **GZTime**
+- tidy up - ([82d624](https://github.com/GZTimeWalker/GZCTF/commit/82d624)) by **GZTime**
+- Adding comments for AsyncManualResetEvent - ([d51382](https://github.com/GZTimeWalker/GZCTF/commit/d51382)) by **Steven He**
+- bump dependencies - ([130632](https://github.com/GZTimeWalker/GZCTF/commit/130632)) by **Steven He**
+- tidy up - ([ccf056](https://github.com/GZTimeWalker/GZCTF/commit/ccf056)) by **GZTime**
+
+### 📦 Other Changes
+
+- use alpine as base (#268) - ([4810c0](https://github.com/GZTimeWalker/GZCTF/commit/4810c0)) by **GZTime**
+
+---
+## [0.18.5](https://github.com/GZTimeWalker/GZCTF/compare/v0.18.4..v0.18.5) - 2024-04-01
+
+### ⛰️ Features
+
+- custom container lifetime - ([906598](https://github.com/GZTimeWalker/GZCTF/commit/906598)) by **GZTime**
+- check that the data path is configured correctly - ([26cfac](https://github.com/GZTimeWalker/GZCTF/commit/26cfac)) by **GZTime**
+
+### 🐛 Bug Fixes
+
+- **(docs)** cannot get theme config - ([40ae61](https://github.com/GZTimeWalker/GZCTF/commit/40ae61)) by **GZTime**
+- write test file to base - ([0810ef](https://github.com/GZTimeWalker/GZCTF/commit/0810ef)) by **GZTime**
+- disable experimental features - ([204551](https://github.com/GZTimeWalker/GZCTF/commit/204551)) by **Steven He**
+- write version instead - ([314cd1](https://github.com/GZTimeWalker/GZCTF/commit/314cd1)) by **Steven He**
+- rw check and fix service init orders - ([93dfdc](https://github.com/GZTimeWalker/GZCTF/commit/93dfdc)) by **Steven He**
+
+---
+## [0.18.4](https://github.com/GZTimeWalker/GZCTF/compare/v0.18.3..v0.18.4) - 2024-04-01
+
+### ⛰️ Features
+
+- use Dictionary for scoreboard item cache - ([332356](https://github.com/GZTimeWalker/GZCTF/commit/332356)) by **GZTime**
+- enhance searching and use string.Contains - ([43d215](https://github.com/GZTimeWalker/GZCTF/commit/43d215)) by **Steven He**
+
+### 🐛 Bug Fixes
+
+- response message & try get value - ([133c3d](https://github.com/GZTimeWalker/GZCTF/commit/133c3d)) by **GZTime**
+- cidr and dns config not being overwritten - ([37d9cb](https://github.com/GZTimeWalker/GZCTF/commit/37d9cb)) by **Steven He**
+
+### 🎨 Styling
+
+- pointer cursor when hover to link - ([7928fb](https://github.com/GZTimeWalker/GZCTF/commit/7928fb)) by **GZTime**
+
+### ⚙️ Miscellaneous Tasks
+
+- customize the GitHub Issues creation (#258) - ([039beb](https://github.com/GZTimeWalker/GZCTF/commit/039beb)) by **Aether Chen**
+
+---
+## [0.18.3](https://github.com/GZTimeWalker/GZCTF/compare/v0.18.2..v0.18.3) - 2024-03-25
+
+### ⛰️ Features
+
+- **(tag)** add tag for AI - ([73831d](https://github.com/GZTimeWalker/GZCTF/commit/73831d)) by **GZTime**
+
+---
+## [0.18.2](https://github.com/GZTimeWalker/GZCTF/compare/v0.18.1..v0.18.2) - 2024-03-20
+
+### 🐛 Bug Fixes
+
+- **(post)** i18n without value - ([12c7bb](https://github.com/GZTimeWalker/GZCTF/commit/12c7bb)) by **GZTime**
+- **(proxy)** can not proxy with test container - ([ea4bcd](https://github.com/GZTimeWalker/GZCTF/commit/ea4bcd)) by **GZTime**
+- remove user participation when leaving team (#250) - ([8822e6](https://github.com/GZTimeWalker/GZCTF/commit/8822e6)) by **Kengwang**
+- model validation attribute need ErrorMessageResourceType - ([383d03](https://github.com/GZTimeWalker/GZCTF/commit/383d03)) by **GZTime**
+- Error Handling (#246) - ([3c6968](https://github.com/GZTimeWalker/GZCTF/commit/3c6968)) by **Kengwang**
+
+### 🎨 Styling
+
+- add missing `noWrap` for some titles - ([ec19c5](https://github.com/GZTimeWalker/GZCTF/commit/ec19c5)) by **GZTime**
+
+### ⚙️ Miscellaneous Tasks
+
+- **(trans)** update strings - ([9c5b9a](https://github.com/GZTimeWalker/GZCTF/commit/9c5b9a)) by **GZTime**
+- update ci - ([a841cb](https://github.com/GZTimeWalker/GZCTF/commit/a841cb)) by **GZTime**
+
---
## [0.18.1](https://github.com/GZTimeWalker/GZCTF/compare/v0.18.0..v0.18.1) - 2024-03-03
diff --git a/README.ja.md b/README.ja.md
index d6f7f831..347cc5a1 100644
--- a/README.ja.md
+++ b/README.ja.md
@@ -61,19 +61,24 @@ GZ::CTF は ASP.NET Core を基づいたオープンソース CTF プラット
- チャレンジに対するトラフィック **TCP over WebSocket プロキシ転送**、トラフィック キャプチャの設定ができます
- Redis ベースのクラスター キャッシュ、PGSQL をデータベースとして使用
- グローバル設定でプラットフォームタイトルと他の情報を設定可能
+- マトリクスと分散トレーシングのサポート
- その他...
## Demo 🗿
-![](assets/demo-1.png)
-![](assets/demo-2.png)
-![](assets/demo-3.png)
-![](assets/demo-4.png)
-![](assets/demo-5.png)
-![](assets/demo-6.png)
-![](assets/demo-7.png)
-![](assets/demo-8.png)
-![](assets/demo-9.png)
+![index.png](docs/public/images/index.png)
+![game.challenges.png](docs/public/images/game.challenges.png)
+![game.scoreboard.png](docs/public/images/game.scoreboard.png)
+![admin.settings.png](docs/public/images/admin.settings.png)
+![admin.challenges.png](docs/public/images/admin.challenges.png)
+![admin.challenge.info.png](docs/public/images/admin.challenge.info.png)
+![admin.challenge.flags.png](docs/public/images/admin.challenge.flags.png)
+![admin.game.info.png](docs/public/images/admin.game.info.png)
+![admin.game.review.png](docs/public/images/admin.game.review.png)
+![admin.teams.png](docs/public/images/admin.teams.png)
+![admin.instances.png](docs/public/images/admin.instances.png)
+![monitor.game.events.png](docs/public/images/monitor.game.events.png)
+![monitor.game.submissions.png](docs/public/images/monitor.game.submissions.png)
## i18n について 🌐
@@ -109,6 +114,7 @@ GZ::CTF は ASP.NET Core を基づいたオープンソース CTF プラット
- **南陽師範学院新人戦 NYNUCTF S4**
- **商丘師範学院初回ネットワークセキュリティ新人戦**
- **蘇州市職業大学 2023 年冬季新人戦 [SVUCTF-WINTER-2023](https://github.com/SVUCTF/SVUCTF-WINTER-2023)**
+- **北京航空航天大学 BUAACTF 2024**
_順番は順位との関係はありません。追加ための PR は大歓迎。_
@@ -118,4 +124,4 @@ THUCTF 2022 の主催者である NanoApe によるスポンサーシップと
## Stars ✨
-[![Stargazers over time](https://starchart.cc/GZTimeWalker/GZCTF.svg)](https://starchart.cc/GZTimeWalker/GZCTF)
+[![Stargazers over time](https://starchart.cc/GZTimeWalker/GZCTF.svg?variant=adaptive)](https://starchart.cc/GZTimeWalker/GZCTF)
diff --git a/README.md b/README.md
index 321ac455..e8b93eb5 100644
--- a/README.md
+++ b/README.md
@@ -64,19 +64,24 @@ GZ::CTF is an open source CTF platform based on ASP.NET Core.
- Challenges traffic forwarding based on **TCP over WebSocket proxy**, configurable traffic capture
- Cluster cache based on Redis, database storage backend based on PGSQL
- Customizable global configuration, platform title, record information
+- Support metrics and distributed tracing
- And more...
## Demo 🗿
-![](assets/demo-1.png)
-![](assets/demo-2.png)
-![](assets/demo-3.png)
-![](assets/demo-4.png)
-![](assets/demo-5.png)
-![](assets/demo-6.png)
-![](assets/demo-7.png)
-![](assets/demo-8.png)
-![](assets/demo-9.png)
+![index.png](docs/public/images/index.png)
+![game.challenges.png](docs/public/images/game.challenges.png)
+![game.scoreboard.png](docs/public/images/game.scoreboard.png)
+![admin.settings.png](docs/public/images/admin.settings.png)
+![admin.challenges.png](docs/public/images/admin.challenges.png)
+![admin.challenge.info.png](docs/public/images/admin.challenge.info.png)
+![admin.challenge.flags.png](docs/public/images/admin.challenge.flags.png)
+![admin.game.info.png](docs/public/images/admin.game.info.png)
+![admin.game.review.png](docs/public/images/admin.game.review.png)
+![admin.teams.png](docs/public/images/admin.teams.png)
+![admin.instances.png](docs/public/images/admin.instances.png)
+![monitor.game.events.png](docs/public/images/monitor.game.events.png)
+![monitor.game.submissions.png](docs/public/images/monitor.game.submissions.png)
## About i18n 🌐
@@ -112,6 +117,8 @@ Some event organizers have already chosen GZCTF and successfully completed their
- **NYNUCTF S4: Recruitment Competition of Xuantian Network Security Laboratory of Nanyang Normal University**
- **The First Network Security Freshman Challenge of Shangqiu Normal University**
- **SVUCTF-WINTER-2023: Suzhou Vocational University 2023 Winter Freshman Competition**
+- **BIEM CTF 2024:Beijing Institute Of Economics And Management - The first BIEM "Xin'an Cup" CTF competition**
+- **BUAACTF 2024: Beihang University CTF**
_The list is not in any particular order, and PRs are welcome for additions._
@@ -121,4 +128,4 @@ Thanks to NanoApe, the organizer of THUCTF 2022, for providing sponsorship and c
## Stars ✨
-[![Stargazers over time](https://starchart.cc/GZTimeWalker/GZCTF.svg)](https://starchart.cc/GZTimeWalker/GZCTF)
+[![Stargazers over time](https://starchart.cc/GZTimeWalker/GZCTF.svg?variant=adaptive)](https://starchart.cc/GZTimeWalker/GZCTF)
diff --git a/README.zh.md b/README.zh.md
index a7679e9f..5873970a 100644
--- a/README.zh.md
+++ b/README.zh.md
@@ -61,19 +61,24 @@ GZ::CTF 是一个基于 ASP.NET Core 的开源 CTF 平台。
- 题目流量 **TCP over WebSocket 代理转发**、可配置流量捕获
- 基于 Redis 的集群缓存、基于 PGSQL 的数据库存储后端
- 全局配置项自定义、平台标题、备案信息
+- 支持测量和分布式追踪
- 以及更多……
## Demo 🗿
-![](assets/demo-1.png)
-![](assets/demo-2.png)
-![](assets/demo-3.png)
-![](assets/demo-4.png)
-![](assets/demo-5.png)
-![](assets/demo-6.png)
-![](assets/demo-7.png)
-![](assets/demo-8.png)
-![](assets/demo-9.png)
+![index.png](docs/public/images/index.png)
+![game.challenges.png](docs/public/images/game.challenges.png)
+![game.scoreboard.png](docs/public/images/game.scoreboard.png)
+![admin.settings.png](docs/public/images/admin.settings.png)
+![admin.challenges.png](docs/public/images/admin.challenges.png)
+![admin.challenge.info.png](docs/public/images/admin.challenge.info.png)
+![admin.challenge.flags.png](docs/public/images/admin.challenge.flags.png)
+![admin.game.info.png](docs/public/images/admin.game.info.png)
+![admin.game.review.png](docs/public/images/admin.game.review.png)
+![admin.teams.png](docs/public/images/admin.teams.png)
+![admin.instances.png](docs/public/images/admin.instances.png)
+![monitor.game.events.png](docs/public/images/monitor.game.events.png)
+![monitor.game.submissions.png](docs/public/images/monitor.game.submissions.png)
## 关于 i18n 🌐
@@ -109,6 +114,8 @@ GZ::CTF 是一个基于 ASP.NET Core 的开源 CTF 平台。
- **南阳师范学院招新赛 NYNUCTF S4**
- **商丘师范学院首届网络安全新生挑战赛**
- **苏州市职业大学 2023 年冬季新生赛 [SVUCTF-WINTER-2023](https://github.com/SVUCTF/SVUCTF-WINTER-2023)**
+- **北京经济管理职业学院 首届BIEM“信安杯”CTF竞赛**
+- **北京航空航天大学 BUAACTF 2024**
_排名不分先后,欢迎提交 PR 进行补充。_
@@ -118,4 +125,4 @@ _排名不分先后,欢迎提交 PR 进行补充。_
## Stars ✨
-[![Stargazers over time](https://starchart.cc/GZTimeWalker/GZCTF.svg)](https://starchart.cc/GZTimeWalker/GZCTF)
+[![Stargazers over time](https://starchart.cc/GZTimeWalker/GZCTF.svg?variant=adaptive)](https://starchart.cc/GZTimeWalker/GZCTF)
diff --git a/assets/demo-1.png b/assets/demo-1.png
deleted file mode 100644
index 1e34c35d..00000000
Binary files a/assets/demo-1.png and /dev/null differ
diff --git a/assets/demo-2.png b/assets/demo-2.png
deleted file mode 100644
index 4ec62317..00000000
Binary files a/assets/demo-2.png and /dev/null differ
diff --git a/assets/demo-3.png b/assets/demo-3.png
deleted file mode 100644
index 4ad38362..00000000
Binary files a/assets/demo-3.png and /dev/null differ
diff --git a/assets/demo-4.png b/assets/demo-4.png
deleted file mode 100644
index 1c0b3e45..00000000
Binary files a/assets/demo-4.png and /dev/null differ
diff --git a/assets/demo-5.png b/assets/demo-5.png
deleted file mode 100644
index fa9ba437..00000000
Binary files a/assets/demo-5.png and /dev/null differ
diff --git a/assets/demo-6.png b/assets/demo-6.png
deleted file mode 100644
index 827611a7..00000000
Binary files a/assets/demo-6.png and /dev/null differ
diff --git a/assets/demo-7.png b/assets/demo-7.png
deleted file mode 100644
index 854e425e..00000000
Binary files a/assets/demo-7.png and /dev/null differ
diff --git a/assets/demo-8.png b/assets/demo-8.png
deleted file mode 100644
index 68f343a9..00000000
Binary files a/assets/demo-8.png and /dev/null differ
diff --git a/assets/demo-9.png b/assets/demo-9.png
deleted file mode 100644
index 53adc1cd..00000000
Binary files a/assets/demo-9.png and /dev/null differ
diff --git a/cliff.toml b/cliff.toml
index 8b405f93..dff072c7 100644
--- a/cliff.toml
+++ b/cliff.toml
@@ -61,7 +61,7 @@ commit_parsers = [
{ message = "^feat|Feat", group = "⛰️ Features" },
{ message = "^fix", group = "🐛 Bug Fixes" },
{ message = "^style", group = "🎨 Styling" },
- { message = "^chore\\(release\\): prepare for", skip = true },
+ { message = "^chore\\(release\\)", skip = true },
{ message = "^chore\\(deps\\)|deps", skip = true },
{ message = "^chore\\(pr\\)", skip = true },
{ message = "^chore\\(pull\\)", skip = true },
diff --git a/docs/components/LogoHeader.tsx b/docs/components/LogoHeader.tsx
index d2837aeb..cdcc78b1 100644
--- a/docs/components/LogoHeader.tsx
+++ b/docs/components/LogoHeader.tsx
@@ -1,16 +1,16 @@
import { FC } from "react";
import MainIcon from "@Components/icon/MainIcon";
-import { useTheme } from "next-themes";
+import { useTheme } from "nextra-theme-docs";
export const LogoHeader: FC = () => {
const { resolvedTheme } = useTheme();
- const isDark = resolvedTheme === "dark";
- const color = isDark ? "#fff" : "#414141";
- const highlightColor = isDark ? "#0AD7AF" : "#02BFA5";
+ const darkMode = resolvedTheme === "dark";
+ const color = darkMode ? "#fff" : "#414141";
+ const highlightColor = darkMode ? "#0AD7AF" : "#02BFA5";
return (
-
+
GZ::CTF
diff --git a/docs/components/icon/MainIcon.tsx b/docs/components/icon/MainIcon.tsx
index 86738a03..0406c0aa 100644
--- a/docs/components/icon/MainIcon.tsx
+++ b/docs/components/icon/MainIcon.tsx
@@ -1,5 +1,5 @@
+import { useTheme } from "nextra-theme-docs";
import { SVGProps, FC } from "react";
-import { useTheme } from "next-themes";
interface MainIconProps extends SVGProps {
ignoreTheme?: boolean;
@@ -9,8 +9,9 @@ const MainIcon: FC = (props: MainIconProps) => {
const { ignoreTheme, ...svgProps } = props;
const { resolvedTheme } = useTheme();
- const isDark = resolvedTheme === "dark";
- const color = isDark ? "#fff" : "#414141";
+ const color = resolvedTheme === "dark" ? "#fff" : "#414141";
+
+ console.log("color", color, resolvedTheme);
return (