Skip to content

Commit 8733fb2

Browse files
committed
docs: update README.md with info for community
...and move information about our release process into a separate `Release.md` file.
1 parent fd229df commit 8733fb2

File tree

2 files changed

+65
-8
lines changed

2 files changed

+65
-8
lines changed

README.md

Lines changed: 48 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,51 @@
1-
# scratch-editor
1+
# scratch-editor: The Scratch Editor Monorepo
22

3-
Scratch editor mono-repo
3+
If you'd like to use Scratch, please visit the [Scratch website](https://scratch.mit.edu/). You can build your own
4+
Scratch project by pressing "Create" on that website or by visiting <https://scratch.mit.edu/projects/editor/>.
45

5-
## Release monorepo
6+
This is a source code repository for the packages that make up the Scratch editor and a few additional support
7+
packages. Use this if you'd like to learn about how the Scratch editor works or to contribute to its development.
68

7-
1. On GitHub, navigate to the main page of the [repository](https://github.com/scratchfoundation/scratch-editor/tree/develop).
8-
2. To the right of the list of files, click **Releases**, click **Draft a new release**.
9-
3. To create a tag for the release, select the **Choose a tag** dropdown menu, type a version number for your release, then click **Create new tag**. The tag of the release is used to determine and update package versions.
10-
4. In the **Describe this release** field, type a description for your release. If you @mention anyone in the description, the published release will include a Contributors section with an avatar list of all the mentioned users. Alternatively, you can automatically generate your release notes by clicking **Generate release notes**. This provides a list with the **Pull Requests** included in the release and their creators.
11-
5. Clicking **Publish release** triggers the publishing workflow that will publish the monorepo packages to **NPM**
9+
## What's in this repository?
10+
11+
The `packages` directory in this repository contains:
12+
13+
- `scratch-gui` provides the buttons, menus, and other elements that you interact with when creating and editing a
14+
project. It's also the "glue" that brings most of the other modules together at runtime.
15+
- `scratch-render` draws backdrops, sprites, and clones on the stage.
16+
- `scratch-svg-renderer` processes SVG (vector) images for use with Scratch projects.
17+
- `scratch-vm` is the virtual machine that runs Scratch projects.
18+
19+
_Please add to this list as more packages are migrated to the monorepo._
20+
21+
Each package has its own `README.md` file with more information about that package.
22+
23+
## Monorepo migration
24+
25+
### What's going on?
26+
27+
We're migrating the Scratch editor packages into this monorepo. This will allow us to manage all the packages that
28+
make up the Scratch editor in one place, making it easier to manage dependencies and make changes that affect
29+
multiple packages.
30+
31+
### Why are there only a few packages in this repo?
32+
33+
We're migrating packages in stages. The current plan, which is subject to change, has us migrating repositories in
34+
four batches. We plan to complete the migration within 2025.
35+
36+
### What will happen to the existing repositories?
37+
38+
The existing repositories will be archived and made read-only. Those repositories contain valuable work and
39+
information, including but not limited to issues and pull requests. We plan to keep that information available for
40+
reference, and to selectively migrate it to this new repository.
41+
42+
## Thank you!
43+
44+
Scratch would not be what it is today without help from the global community of Scratchers and open-source
45+
contributors. Thank you for your contributions and support. _[Scratch on!](https://scratch.mit.edu/projects/65347738/fullscreen/)_
46+
47+
## Donate
48+
49+
We provide [Scratch](https://scratch.mit.edu) free of charge, and want to keep it that way! Please consider making a
50+
[donation](https://secure.donationpay.org/scratchfoundation/) to support our continued engineering, design, community,
51+
and resource development efforts. Donations of any size are appreciated. Thank you!

Release.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Release process
2+
3+
_For maintainers of this monorepo._
4+
5+
All packages in this monorepo will be published to NPM when a new release is created. They'll all share the same
6+
version number. To create a new release:
7+
8+
1. Select "Draft a new release" from [the repository's "Releases"
9+
tab](https://github.com/scratchfoundation/scratch-editor/releases) or "Create a new release" from [the main page of
10+
the repository](https://github.com/scratchfoundation/scratch-editor/).
11+
2. To create a tag for the release, select the **Choose a tag** dropdown menu, type a version number for your release,
12+
then click **Create new tag**. The tag of the release is used to determine and update package versions.
13+
3. In the **Describe this release** field, type a description for your release. If you @mention anyone in the
14+
description, the published release will include a Contributors section with an avatar list of all the mentioned
15+
users. Alternatively, you can automatically generate your release notes by clicking **Generate release notes**.
16+
This provides a list with the **Pull Requests** included in the release and their creators.
17+
4. Clicking **Publish release** triggers the publishing workflow that will publish the monorepo packages to NPM.

0 commit comments

Comments
 (0)