Skip to content

Katnip-org/Katnip

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Disclaimer! The main branch is heavily outdated. For more recent updates and preview, check out next-gen

Katnip

Katnip

A text-based language for Scratch programming

About

This is the version 2 of Katnip, a completely re-written version of the original.

This project aims to provide a test-based implementation of Scratch programming, to enable faster, clearer, and cleaner development of Scratch projects.

Links:

Setup:

  • Set up offline editor path (should be an .exe file, either turbowarp or scratch). This is done by changing the file path specified in references/secrets.txt next to Program=
  • Edit and make code within a file such as app_static/scripts/code.katnip. The .katnip file extension is not necessary, but is required for the vscode syntax coloring extension
  • Run using run.py, and changing the file path to your script. If everything is set up correctly, it will generate your project in generated_projects/program.sb3 and open it up.

Example syntax:

say("Check out the Wiki!")
if(equals(mouse(), "true")) {
     set($mouse_down, 1)
}

Credits:

Changelog:

12/13/2024 - Release 12/14/2024 - Completed README.md

TODO:

  • Add custom block support
    • func function(argument1,argument2) {}
    • f.function
  • Create custom return function for custom blocks (since this is an interpreted language)
  • Create packages system to allow others to easily share and use functions from others in their projects
  • Add support for loading custom extensions
  • Add decompiler

About

A text-based language for Scratch programming, written in Python

Resources

Stars

Watchers

Forks

Contributors