
Welcome to Sketchware Pro! Here you'll find the source code of many classes in Sketchware Pro and, most importantly, the place to contribute to Sketchware Pro.
To build the app, you must use Gradle. It's highly recommended to use Android Studio for the best experience.
| Class | Role |
|---|---|
a.a.a.ProjectBuilder |
Helper for compiling an entire project |
a.a.a.Ix |
Responsible for generating AndroidManifest.xml |
a.a.a.Jx |
Generates source code of activities |
a.a.a.Lx |
Generates source code of components, such as listeners, etc. |
a.a.a.Ox |
Responsible for generating XML files of layouts |
a.a.a.qq |
Registry of built-in libraries' dependencies |
a.a.a.tq |
Responsible for the compiling dialog's quizzes |
a.a.a.yq |
Organizes Sketchware projects' file paths |
[!TIP] You can also check the
modpackage, which contains the majority of contributors' changes.
If you'd like to contribute to Sketchware Pro, follow these steps:
We welcome contributions of any size, whether they are major features or bug fixes, but please note that all contributions will be thoroughly reviewed.
When you make changes to one or more files, you need to commit those changes with a commit message. Here are some guidelines:
feat: for a feature, possibly improving something already existing.fix: for a fix, such as a bug fix.style: for features and updates related to styling.refactor: for refactoring a specific section of the codebase.test: for everything related to testing.docs: for everything related to documentation.chore: for code maintenance (you can also use emojis to represent commit types).Examples:
- feat: Speed up compiling with new technique
- fix: Fix crash during launch on certain phones
- refactor: Reformat code in File.java
[!IMPORTANT] If you want to add new features that don't require editing other packages other than
pro.sketchware, make your changes inpro.sketchwarepackage, and respect the directories and files structure and names. Also, even though the project compiles just fine with Kotlin classes that you might add, try to make your changes or additions in Java, not Kotlin unless it is more than necessary.
Thank you for contributing to Sketchware Pro! Your contributions help keep Sketchware Pro alive. Each accepted contribution will be noted down in the "About Team" activity. We'll use your GitHub name and profile picture initially, but they can be changed, of course.
Want to chat with us, discuss changes, or just hang out? We have a Discord server just for that.
This mod was not created for any harmful purposes, such as harming Sketchware; quite the opposite, actually. It was made to keep Sketchware alive by the community for the community. Please use it at your own discretion and consider becoming a Patreon backer to support the developers. Unfortunately, other ways to support them are not working anymore, so Patreon is the only available option currently. You can find their Patreon page here.
We do NOT permit publishing Sketchware Pro as it is, or with modifications, on Play Store or on any other app store. Keep in mind that this project is still a mod. Unauthorized modding of apps is considered illegal and we discourage such behavior.
We love Sketchware very much and are grateful to Sketchware's developers for creating such an amazing app. However, we haven't received updates for a long time. That's why we decided to keep Sketchware alive by creating this mod, and it's completely free. We don't demand any money :)
$ claude mcp add Sketchware-Pro \
-- python -m otcore.mcp_server <graph>