Skip to content

Commit 10d7446

Browse files
committed
docs: 更新 README 适应 BlockCommit 定位
- 更新项目标题和简介,突出 Scratch 项目支持 - 添加 SB3 项目支持功能说明 - 更新功能列表,区分 Scratch 特性和核心 Git 功能 - 添加 SB3 差异示例说明 - 更新贡献者和致谢信息
1 parent bb7da36 commit 10d7446

1 file changed

Lines changed: 92 additions & 13 deletions

File tree

README.md

Lines changed: 92 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,96 @@
1-
# Gitea
1+
# BlockCommit
22

3-
[![](https://github.com/go-gitea/gitea/actions/workflows/release-nightly.yml/badge.svg?branch=main)](https://github.com/go-gitea/gitea/actions/workflows/release-nightly.yml?query=branch%3Amain "Release Nightly")
4-
[![](https://img.shields.io/discord/322538954119184384.svg?logo=discord&logoColor=white&label=Discord&color=5865F2)](https://discord.gg/Gitea "Join the Discord chat at https://discord.gg/Gitea")
5-
[![](https://goreportcard.com/badge/code.gitea.io/gitea)](https://goreportcard.com/report/code.gitea.io/gitea "Go Report Card")
6-
[![](https://pkg.go.dev/badge/code.gitea.io/gitea?status.svg)](https://pkg.go.dev/code.gitea.io/gitea "GoDoc")
7-
[![](https://img.shields.io/github/release/go-gitea/gitea.svg)](https://github.com/go-gitea/gitea/releases/latest "GitHub release")
8-
[![](https://www.codetriage.com/go-gitea/gitea/badges/users.svg)](https://www.codetriage.com/go-gitea/gitea "Help Contribute to Open Source")
9-
[![](https://opencollective.com/gitea/tiers/backers/badge.svg?label=backers&color=brightgreen)](https://opencollective.com/gitea "Become a backer/sponsor of gitea")
10-
[![](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT "License: MIT")
11-
[![Contribute with Gitpod](https://img.shields.io/badge/Contribute%20with-Gitpod-908a85?logo=gitpod&color=green)](https://gitpod.io/#https://github.com/go-gitea/gitea)
12-
[![](https://badges.crowdin.net/gitea/localized.svg)](https://translate.gitea.com "Crowdin")
13-
14-
[繁體中文](./README.zh-tw.md) | [简体中文](./README.zh-cn.md)
3+
> A Git service designed specifically for Scratch visual programming projects, based on Gitea.
4+
5+
BlockCommit is an exclusive Git designed specifically for Scratch visual programming projects. Adapt to Scratch project file formats, provide easy-to-use version tracking, submission, and collaboration capabilities, allowing Scratch developers to easily implement project version management.
6+
7+
**Topics**: git · backend · gitea · scratch · scratch3 · turbowarp
8+
9+
## About
10+
11+
BlockCommit is based on [Gitea](https://github.com/go-gitea/gitea) and provides specialized support for Scratch/TurboWarp `.sb3` project files:
12+
13+
- **SB3 Project Support**: Native support for Scratch 3.0 project files with visual diff display
14+
- **Block-Level Diff**: Semantic diff visualization for Scratch blocks using ScratchBlocks syntax
15+
- **Multi-Language Support**: Available in multiple languages for international Scratch communities
16+
- **Easy Collaboration**: Seamless version control for Scratch projects
17+
- **Self-Hosted**: Deploy your own BlockCommit instance for privacy and control
18+
19+
As BlockCommit is written in Go, it works across **all** the platforms and architectures that are supported by Go, including Linux, macOS, and Windows on x86, amd64, ARM and PowerPC architectures.
20+
21+
## Features
22+
23+
### Scratch Project Support
24+
25+
- **SB3 File Parsing**: Automatic parsing and analysis of Scratch project files
26+
- **Visual Block Diff**: Display block changes in an intuitive visual format
27+
- **Script Tracking**: Track script additions, modifications, and deletions
28+
- **Asset Management**: Track changes to costumes, sounds, and other assets
29+
- **Variable & List Diff**: Monitor variable and list changes across versions
30+
31+
### Core Git Features
32+
33+
- Full Git integration with branch management, pull requests, and issue tracking
34+
- Collaborative code review and discussion
35+
- Wiki and project documentation
36+
- CI/CD integration with GitHub Actions compatibility
37+
- Team and organization management
38+
39+
## Building
40+
41+
From the root of the source tree, run:
42+
43+
TAGS="bindata sqlite sqlite_unlock_notify" make build
44+
45+
The `build` target is split into two sub-targets:
46+
47+
- `make backend` which requires [Go Stable](https://go.dev/dl/), the required version is defined in [go.mod](/go.mod).
48+
- `make frontend` which requires [Node.js LTS](https://nodejs.org/en/download/) or greater and [pnpm](https://pnpm.io/installation).
49+
50+
## Using
51+
52+
After building, a binary file named `gitea` will be generated in the root of the source tree by default. To run it, use:
53+
54+
./gitea web
55+
56+
Then access BlockCommit at `http://localhost:3000` (default port).
57+
58+
## SB3 Diff Examples
59+
60+
When viewing diffs for `.sb3` files, BlockCommit provides:
61+
62+
- **Script Changes**: Visual display of added, modified, and deleted scripts
63+
- **Block-Level Diff**: Detailed view of individual block changes
64+
- **Summary Statistics**: Quick overview of project changes (targets, scripts, blocks, variables, etc.)
65+
- **Asset Tracking**: Changes to costumes, sounds, and other resources
66+
67+
## Contributing
68+
69+
Expected workflow is: Fork -> Patch -> Push -> Pull Request
70+
71+
> [!NOTE]
72+
>
73+
> 1. **YOU MUST READ THE [CONTRIBUTORS GUIDE](CONTRIBUTING.md) BEFORE STARTING TO WORK ON A PULL REQUEST.**
74+
> 2. If you have found a vulnerability in the project, please write privately to the maintainer.
75+
76+
## Authors
77+
78+
- **Maintainer**: [NeuronPulse](https://github.com/NeuronPulse)
79+
- **Original Project**: [Gitea](https://github.com/go-gitea/gitea)
80+
81+
## License
82+
83+
This project is licensed under the MIT License.
84+
See the [LICENSE](LICENSE) file for the full license text.
85+
86+
## Acknowledgments
87+
88+
BlockCommit is based on [Gitea](https://github.com/go-gitea/gitea), a community-managed lightweight code hosting solution written in Go.
89+
90+
Thanks to:
91+
- The [Gitea](https://github.com/go-gitea/gitea) community for the excellent codebase
92+
- [scratchblocks](https://github.com/scratchblocks/scratchblocks) for block visualization
93+
- [parse-sb3-blocks](https://github.com/apple502j/parse-sb3-blocks) for SB3 parsing utilities
1594

1695
## Purpose
1796

0 commit comments

Comments
 (0)