Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
af2c033
Merge pull request #1 from qianmoQ/dev
qianmoQ Aug 8, 2025
f6bb7ad
Merge pull request #2 from qianmoQ/dev
qianmoQ Aug 8, 2025
cbbd3c8
Merge pull request #3 from qianmoQ/dev
qianmoQ Aug 9, 2025
18ee71a
feat (core): 添加关于页面
qianmoQ Aug 9, 2025
777edc1
fix (core): 修复默认语言指定错误
qianmoQ Aug 9, 2025
dd6265c
Merge pull request #4 from qianmoQ/dev-25.0.0
qianmoQ Aug 9, 2025
946efdd
fix (core): 修复编辑器无法使用快捷键问题
qianmoQ Aug 9, 2025
ac35baa
feat (core): 拆分菜单为独立控制
qianmoQ Aug 9, 2025
f9a8ae7
fix (core): 修复粘贴导致弹出菜单问题
qianmoQ Aug 9, 2025
894a0b7
feat (core): 添加日志记录功能
qianmoQ Aug 9, 2025
978f333
Merge pull request #5 from qianmoQ/dev-25.0.0
qianmoQ Aug 9, 2025
801c05a
feat (core): 增加日志设置功能
qianmoQ Aug 9, 2025
7b32876
feat (core): 拆分 Select 为独立组件
qianmoQ Aug 9, 2025
2b0730a
fix (core): 修复 clippy 错误
qianmoQ Aug 9, 2025
bbc5890
Merge pull request #6 from qianmoQ/dev-25.0.0
qianmoQ Aug 9, 2025
2853007
feat (core): 拆分 Toast 为独立组件
qianmoQ Aug 9, 2025
533d56f
Merge pull request #7 from qianmoQ/dev-25.0.0
qianmoQ Aug 9, 2025
15725ef
feat (core): 拆分 Button 为独立组件
qianmoQ Aug 9, 2025
891f2fe
fix (core): 修复 Button 组件异常代码
qianmoQ Aug 9, 2025
5cf7765
Merge pull request #8 from qianmoQ/dev-25.0.0
qianmoQ Aug 9, 2025
d6ef680
feat (docs): 添加文档
qianmoQ Aug 10, 2025
1efc7c6
Create CNAME
qianmoQ Aug 10, 2025
fbb8859
Merge pull request #9 from qianmoQ/dev-25.0.0
qianmoQ Aug 10, 2025
14f0b6c
feat (core): 拆分 Modal 为独立组件
qianmoQ Aug 10, 2025
b5d89a1
fix (core): 修复 Toast 展示窗口优先性
qianmoQ Aug 10, 2025
8b56a86
feat (core): 构建 Tabs 组件
qianmoQ Aug 10, 2025
5d291f4
feat (core): 拆分日志配置为独立组件
qianmoQ Aug 10, 2025
b0e463c
feat (core): 适配插件定制配置
qianmoQ Aug 10, 2025
a6cba84
feat (core): 支持语言配置更新
qianmoQ Aug 10, 2025
9ff82a9
fix (core): 修复代码错误引用
qianmoQ Aug 10, 2025
21c3c86
feat (core): 优化 Tabs 组件
qianmoQ Aug 10, 2025
27267c6
fix (core): 修复 execute_home 为空导致进入空目录
qianmoQ Aug 10, 2025
8c336d8
feat (core): 日志根据 level 拆分独立文件
qianmoQ Aug 10, 2025
7f47912
feat (core): 优化 execute_hook 返回
qianmoQ Aug 10, 2025
2249220
feat (core): 支持程序实时输出
qianmoQ Aug 10, 2025
f232413
feat (core): 支持停止运行代码
qianmoQ Aug 10, 2025
e098681
feat (core): 拆分为独立模块
qianmoQ Aug 11, 2025
597d9c2
feat (core): 支持 timeout
qianmoQ Aug 11, 2025
727ab7d
feat (core): 添加语言 Logo
qianmoQ Aug 11, 2025
aef3607
feat (core): 优化 before_compile 指定命令
qianmoQ Aug 11, 2025
54271b7
fix (core): 修复命令指向错误语法
qianmoQ Aug 11, 2025
66c1194
feat (ci): 添加 release
qianmoQ Aug 11, 2025
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
37 changes: 37 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Publish docs via GitHub Pages

on:
push:
pull_request:
types: [closed]
workflow_dispatch:

jobs:
deploy:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [ 18.x ]

steps:
- uses: actions/checkout@v3

- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}

- name: Install dependencies
run: npm install pageforge -g

- name: Build
run: |
cd docs
pageforge build
echo 'codeforge.devlive.org' > dist/CNAME

- name: Deploy
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GH_TOKEN }}
publish_dir: docs/dist
144 changes: 144 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,144 @@
name: Release

on:
# 新发布触发
release:
types: [published]

# 手动触发
workflow_dispatch:
inputs:
tag:
description: 'Release tag (e.g., v1.0.0)'
required: true
type: string

env:
CARGO_TERM_COLOR: always
NODE_VERSION: '18'
RUST_VERSION: '1.85.0'
PNPM_VERSION: '8'

jobs:
# 构建发布版本
build-release:
name: Build Release
runs-on: ${{ matrix.platform }}

strategy:
fail-fast: false
matrix:
platform: [macos-latest, windows-latest]
include:
- platform: macos-latest
os: macos
target: universal-apple-darwin
- platform: windows-latest
os: windows
target: x86_64-pc-windows-msvc

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ env.NODE_VERSION }}

- name: Setup pnpm
uses: pnpm/action-setup@v2
with:
version: ${{ env.PNPM_VERSION }}

- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ env.RUST_VERSION }}

- name: Add Rust targets (macOS)
if: matrix.platform == 'macos-latest'
run: |
rustup target add aarch64-apple-darwin
rustup target add x86_64-apple-darwin

- name: Rust Cache
uses: Swatinem/rust-cache@v2
with:
workspaces: src-tauri

- name: Install frontend dependencies
run: |
if [ -f "pnpm-lock.yaml" ]; then
pnpm install --frozen-lockfile
else
pnpm install
fi
shell: bash

- name: Build application
run: pnpm tauri build --target ${{ matrix.target }}

- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: release-${{ matrix.os }}
path: src-tauri/target/release/bundle/
retention-days: 30

# 创建或更新 GitHub Release
create-release:
name: Create Release
needs: build-release
runs-on: ubuntu-latest
if: github.event_name == 'workflow_dispatch'

steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts

- name: Prepare release assets
run: |
mkdir -p release-assets
find artifacts -name "*.dmg" -exec cp {} release-assets/ \;
find artifacts -name "*.msi" -exec cp {} release-assets/ \;
find artifacts -name "*.exe" -exec cp {} release-assets/ \;

- name: Create Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.event.inputs.tag }}
name: Release ${{ github.event.inputs.tag }}
files: release-assets/*
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}

# 更新现有 Release
update-release:
name: Update Release
needs: build-release
runs-on: ubuntu-latest
if: github.event_name == 'release'

steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts

- name: Prepare release assets
run: |
mkdir -p release-assets
find artifacts -name "*.dmg" -exec cp {} release-assets/ \;
find artifacts -name "*.msi" -exec cp {} release-assets/ \;
find artifacts -name "*.exe" -exec cp {} release-assets/ \;

- name: Upload to existing release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.event.release.tag_name }}
files: release-assets/*
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,4 @@ dist-ssr
pnpm-lock.yaml
*.csv
*.json
!config*.json
6 changes: 0 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,6 @@ pnpm tauri dev
pnpm tauri build
```

## 使用

1. 在左侧编辑器输入代码
2. 点击 "执行代码" 按钮执行
3. 在右侧面板查看输出结果

## 技术栈

- **前端:** Vue 3 + TypeScript + Tailwind CSS
Expand Down
18 changes: 18 additions & 0 deletions config/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"log_directory": null,
"auto_clear_logs": true,
"keep_log_days": 30,
"theme": "system",
"plugins": [
{
"enabled": true,
"execute_home": null,
"extensions": [],
"language": "python2",
"before_compile": null,
"after_compile": null,
"run_command": null,
"template": null
}
]
}
1 change: 1 addition & 0 deletions docs/CNAME
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
codeforge.devlive.org
84 changes: 84 additions & 0 deletions docs/assets/logo.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
64 changes: 64 additions & 0 deletions docs/content/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
title: 欢迎使用 CodeForge
template: home

config:
sidebar: false
toc: false

hero:
title: 轻量级桌面代码执行器
description: 轻量级、高性能的桌面代码执行器,专为开发者、学生和编程爱好者设计。
primaryCta:
url: /download.html
text: 立即下载
secondaryCta:
url: /<%= pageData.language %>/usage/href.html
text: 了解更多

features:
subtitle: 核心优势
title: 为什么选择我们
description: 轻量级、高性能,专为开发者、学生和编程爱好者设计。
items:
- icon: >-
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" class="w-6 h-6 text-indigo-600">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z" />
</svg>
title: 高性能
description: 可扩展的语言支持系统

- icon: >-
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" class="w-6 h-6 text-indigo-600">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z" />
</svg>
title: 操作简洁
description: 一键运行代码

- icon: >-
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" class="w-6 h-6 text-indigo-600">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2" />
</svg>
title: 易于使用
description: 直观的界面设计,简单易上手

stats:
title: 用数据说话
description: 我们取得的成就
items:
- label: GitHub Stars
value: 0+
- label: Gitee Stars
value: 0+
- label: 正常运行时间
value: 99.99%
- label: 客户满意度
value: 0%

cta:
title: 准备好开始了吗?
description: 立即下载,开启您的技术创新之旅
button:
url: /download.html
text: 立即下载
---
21 changes: 21 additions & 0 deletions docs/pageforge.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
site:
title: CodeForge
description: CodeForge 是一款轻量级、高性能的桌面代码执行器,专为开发者、学生和编程爱好者设计。
hiddenTitle: true
keywords: CodeForge, Markdown, Python 2, Python 3, Rust
logo: /assets/logo.svg
favicon: assets/logo.svg
baseUrl: https://codeforge.devlive.org

repo:
owner: devlive-community
name: codeforge
url: https://github.com/devlive-community/codeforge
branch: dev

footer:
copyright: © 2025 CodeForge All Rights Reserved.
social:
github:
title: GitHub
href: https://github.com/devlive-community/codeforge
Loading
Loading