Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/marci1175/ferris_draw
An educational tool aimed to teach the basics of programming to children.
https://github.com/marci1175/ferris_draw
bevy education egui imagine-logo mlua rust
Last synced: about 2 hours ago
JSON representation
An educational tool aimed to teach the basics of programming to children.
- Host: GitHub
- URL: https://github.com/marci1175/ferris_draw
- Owner: marci1175
- Created: 2024-12-02T22:12:58.000Z (about 1 month ago)
- Default Branch: master
- Last Pushed: 2025-01-10T22:57:01.000Z (about 8 hours ago)
- Last Synced: 2025-01-10T23:28:29.601Z (about 7 hours ago)
- Topics: bevy, education, egui, imagine-logo, mlua, rust
- Language: Rust
- Homepage: https://marci1175.github.io/ferris_draw/
- Size: 31.9 MB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Ferris draw
- An educational tool aimed to teach the basics of programming to children.
## Project
- This project was originally an [Imagine Logo](https://imagine.input.sk/international.html) port to rust.
- The reason I am creating this project is because I had a ton of fun with it when I was in elemntary school learning about this.### Project Features
- The project uses [lua](https://www.lua.org/) as its programming language, with [mlua](https://github.com/mlua-rs/mlua).
- Callbacks are implemented in this Application to further customize user experience, and allow the implementation of more complicated projects.
- You can import any library in your script, as the [lua](https://www.lua.org/) instance to support external libraries.
- The drawings are rendered with the [Bevy game engine](https://bevyengine.org/), to ensure flexibility, safety and speed.
- Ui components are created via [egui](https://crates.io/crates/egui).
- You can run scripts by utilizing the scripts tab but you can run quick commands via the Command Panel available in the application.
- Syntax highlighting is available in the Script Manager and the Command Panel.
- The Command Panel has the user friendly interface with features to enhance production.
- You can also save and open projects.
- You can record demos and play them back step by step, so they can be explained thoroughly.z
### Drawing Capabilities
- Create multiple drawers (with a unique ID).
- Draw lines forward and backward.
- Rotate the drawer to left and right.
- Set the color of the lines the user is drawing.### Documentation
Documentation is available [here](https://github.com/marci1175/ferris_draw/blob/master/DOCUMENTATION.md#introduction).### Project showcase
**An online demo is available for the application**
https://marci1175.github.io/ferris_draw/**The application is subject to change, this video depicts the second release**
https://youtu.be/pN9JmLXmT9c