Discuss Scratch
- Discussion Forums
- » Advanced Topics
- » LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server
Please note LibreKitten is still in alpha, so blocks and features are subject to change.

or click here to try out LibreKitten.
Please share this mod with other Scratchers if you like it. It will help build a community around it!
Please say what you like or don't like, but remember to provide constructive criticism. You should be already be constructive on Scratch anyway.
FAQ:
How can I use LibreKitten?
Here is an example LibreKitten script.
Currently, there are no server builds. We're planning on building them soon. For now, you can clone the source code to try it out.
Please do contribute! I can't maintain this by myself. If there are any issues at the moment, please help us with them: https://codeberg.org/LibreKitten/LibreKitten/issues. If you want to add a new feature or anything else, please make a pull request!
Useful links for contributing to LibreKitten:
For Contributors page: https://librekitten.org/for-contributors.html
Source code: https://codeberg.org/LibreKitten/LibreKitten (preferred) or https://github.com/LibreKitten/LibreKitten
Development Wiki (WIP): https://codeberg.org/LibreKitten/LibreKitten/wiki
Join LibreKitten development: https://scratch.mit.edu/projects/1050320070/
We encourage you to help with:
Pspspsps! Like LibreKitten? Want to promote it? Add this badge to your signature.
We are looking for developers! First, read https://librekitten.org/for-contributors.html for information, then click here to fill in the form in the comment section of a project.LibreKitten is an alpha-quality block-based visual programming language based on TurboWarp. The primary feature is being able to function as a web server, but it is also an experimentation ground to push the limits of block-based languages.
Please note LibreKitten is still in alpha, so blocks and features are subject to change.

or click here to try out LibreKitten.
Please share this mod with other Scratchers if you like it. It will help build a community around it!
Please say what you like or don't like, but remember to provide constructive criticism. You should be already be constructive on Scratch anyway.
FAQ:
How can I use LibreKitten?
Here is an example LibreKitten script.
when @stopSign clicked :: hat eventsHow do I run the server?
ask [What is your favorite animal?] and wait
check if (answer) matches to my tests {
if [cats] matches, then {
explain code [Runs the check under, as it wasn't stopped.] :: #454545
} :: control
if [cat] matches, then {
say [Meow!] for (2) seconds
stop looping or checking :: control cap
} :: control
if nothing matches, then {
say [How dare cats not be your favourite animal, hiss!] for (2) seconds
stop looping or checking :: control cap
} :: control cap
} :: control
Currently, there are no server builds. We're planning on building them soon. For now, you can clone the source code to try it out.
- Clone LibreKitten using git and enter it in the terminal.
- Install Node.js and pnpm (if you haven't already.)
- Run "pnpm install --shamefully-hoist" in the terminal.
- Run “node /path/to/LibreKitten/packages/vm/src/cli/server.js /path/to/Project.lb” in the terminal.
Please do contribute! I can't maintain this by myself. If there are any issues at the moment, please help us with them: https://codeberg.org/LibreKitten/LibreKitten/issues. If you want to add a new feature or anything else, please make a pull request!
Useful links for contributing to LibreKitten:
For Contributors page: https://librekitten.org/for-contributors.html
Source code: https://codeberg.org/LibreKitten/LibreKitten (preferred) or https://github.com/LibreKitten/LibreKitten
Development Wiki (WIP): https://codeberg.org/LibreKitten/LibreKitten/wiki
Join LibreKitten development: https://scratch.mit.edu/projects/1050320070/
We encourage you to help with:
here.— Modding question: How would I go about running code when no edge-activated hats of a certain opcode succeed? You can see where the hats are defined
Pspspsps! Like LibreKitten? Want to promote it? Add this badge to your signature.
[url=https://librekitten.org/][img]https:{remove this seperator including the brackets}//u.cubeupload.com/gl12/LibreKittenBadge.png[/img][/url]
Last edited by o97doge (June 2, 2025 07:18:51)
- Steve0Greatness
-
1000+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
Could you update librekitten to no longer link to the forums since it's no longer a thing? Also the Codeberg repos as well.
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
(#2)I'm going to do that once I'm able to.
Could you update librekitten to no longer link to the forums since it's no longer a thing? Also the Codeberg repos as well.
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
(#3)Done.(#2)I'm going to do that once I'm able to.
Could you update librekitten to no longer link to the forums since it's no longer a thing? Also the Codeberg repos as well.
Edit: The website is borked, but my local build is working fine.

Edit 2: It seems like not the entire file is getting served… Ugh.
Edit 3: The file is getting served fully, but it's still borked.
Edit 4: For some reason it works fine if you use https://librekitten.org/editor, weird.
Edit 5: But it doesn't work if you append ?fps=0&hqpen&offscreen&limitless, I have came to the concusion that this is an issue on the web hoster's side.
Last edited by o97doge (July 27, 2024 04:55:37)
- Lavthegreat
-
7 posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
what if…What if it had uploading?
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
How to run a LibreKitten server instance:
- Clone the LibreKitten VM using git.
- Install Node.js and pnpm. (if you haven't already.)
- Run "pnpm install --shamefully-hoist".
- Run “node /path/to/LibreKitten-vm/src/cli/server.js /path/to/Project.lb” in the terminal.
Last edited by o97doge (Feb. 18, 2025 06:41:12)
- dumorando
-
100+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
i'm gonna try How to run a LibreKitten server instance:Edit: It would be funny if someone made a public website using LibreKitten.
- Clone the LibreKitten VM using git.
- Install Node.js and pnpm. (if you haven't already.)
- Run “pnpm install”.
- Run “node /path/to/LibreKitten-vm/src/cli/server.js /path/to/Project.lb” in the terminal.

update: it works
now please make database blocks /j
Last edited by dumorando (July 27, 2024 20:09:17)
- Mr_rudy
-
100+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
you could make it have the exact same rules as scratch, but you would be very limited (i couldn't find the source, so just take this lightly)(#5)Problem is, I don't know how to make an upload system while keeping it mentionable on Scratch.what if…What if it had uploading?
Last edited by Mr_rudy (July 27, 2024 21:04:09)
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
- kookiree
-
1 post
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
Feedback: Make it seem like its own thing. Like make it unique to turbowarp and scratch. Maybe flip the screen? Change some blocks colors or size. Change some wording. Do you get what I mean.
- dumorando
-
100+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]

- BigNate469
-
1000+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
Even so, I doubt that the ST would allow mentioning it then, under the same logic behind why cloud chatrooms with moderation (that you provide, independently of the ST) are not allowed.you could make it have the exact same rules as scratch, but you would be very limited (i couldn't find the source, so just take this lightly)(#5)Problem is, I don't know how to make an upload system while keeping it mentionable on Scratch.what if…What if it had uploading?
Last edited by BigNate469 (July 30, 2024 00:07:21)
- dumorando
-
100+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
i modified some code to make a development server using on the frontend and a ws server for the backend
heres a demo of it.
https://www.youtube.com/watch?v=9003P1ldwl0
await window.vm.saveProjectSb3()
heres a demo of it.
https://www.youtube.com/watch?v=9003P1ldwl0
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
[deleted]
Last edited by o97doge (Aug. 9, 2024 06:14:15)
- BigNate469
-
1000+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
When running JavaScript from the App Utilities extension, make it so that there is only one warning dialogue, when the first “execute JavaScript” block is called, because otherwise this can get fairly annoying when running a few blocks with JavaScript.
- o97doge
-
500+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
(#17)The JavaScript blocks are mainly meant for server and packager (when that's supported) environment (which it won't show you the warnings in those environments) and allowing you to bypass the dialogues would be a security risk, as what if the first executed JavaScript is a decoy and there's another JavaScript to be executed which is malicious? If we don't give users a chance to review it after the first dialogue, there could be security issues! Yikes!
When running JavaScript from the App Utilities extension, make it so that there is only one warning dialogue, when the first “execute JavaScript” block is called, because otherwise this can get fairly annoying when running a few blocks with JavaScript.

- BigNate469
-
1000+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
Then you could allow users to optionally turn off warnings, and run it in a sandboxed environment that doesn't have access to any APIs.(#17)The JavaScript blocks are mainly meant for server and packager (when that's supported) environment (which it won't show you the warnings in those environments) and allowing you to bypass the dialogues would be a security risk, as what if the first executed JavaScript is a decoy and there's another JavaScript to be executed which is malicious? If we don't give users a chance to review it after the first dialogue, there could be security issues! Yikes!
When running JavaScript from the App Utilities extension, make it so that there is only one warning dialogue, when the first “execute JavaScript” block is called, because otherwise this can get fairly annoying when running a few blocks with JavaScript.
- 2D4eter
-
100+ posts
LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]
The cat mascot looks smart
- Discussion Forums
- » Advanced Topics
-
» LibreKitten - A mod of Scratch and TurboWarp that can function as a web server [We are looking for developers!]