From cdb473c0713f9e8e6d0628612605b636d32d0a11 Mon Sep 17 00:00:00 2001 From: Syed Daanish Date: Wed, 4 Nov 2026 09:14:28 +0000 Subject: [PATCH] Start writing a devlog. --- writeup/devlog.md | 531 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 531 insertions(+) create mode 100644 writeup/devlog.md diff --git a/writeup/devlog.md b/writeup/devlog.md new file mode 100644 index 0000000..f485bbe --- /dev/null +++ b/writeup/devlog.md @@ -0,0 +1,531 @@ +# Project Misth devlog. + +### Initial setup + +> Apr 29, 2026, 9:54 PM + +Added files: + +- `pch.h` this file imports all the libraries I use. + +- `utils.h` This file adds helper functions to be used across the project: + - `MIN`, a macro that takes 2 numbers and returns the smaller one. + - `MAX`, a macro that takes 2 numbers and returns the larger one. + - `Color`, a struct with 8 bit fields for red, green, blue and alpha (transparency). + - `Vec2`, a struct with 2 number fields used to store a vector + - It has the methods: + - `*` Scalar multiplier. + - `/` Scalar division. + - `+` Vector addition. + - `-` vector subtraction. + - `dot` Vector dot product. + - `dist` distance to another vector. + - `normalized` normalizes a vector. + - `angle_to` returns angle to another vector (in radians). + - `Line`, a (struct) set of 2 vectors start, end. + - Adds function: `intersects` returns true if it intersects given line, else false. + - `Rect`, a sturct, stores a single Line (its diagonal). + - Adds functions: + - `contains` returns if a point given is in the rectangle. + - `intersects` returns true if given rectangle or line intersects with any side. + +- `window.h` & `window.cc`, this file adds an api layer over sdl to extract all the useful functions from sdl. + - `Font`, a struct to store and reference a font. + - `Event`, a struct to represent an sdl event in a more generic format. + - TODO: add list of actual events here. + - `Window`, the main class binding sdl functions to my project. + - It adds the functions: (TODO: explain each.) + - `load_image` + - `unload_image` + - `load_font` + - `unload_font` + - `create_text` + - `unload_text` + - `write` + - `draw` + - `draw_rect` + - `render` + - `clear` + - `poll` + - `consume` + - `start_text_input` + - `stop_text_input` + - `paste` + - `get_time` + - `delta_time` + - And a few more private ones. + +- `Makefile`, The compilation commands. + +### Sample files + +> May 3, 2026, 11:04 PM + +Added test files of how the final API should behave. +- `main.rb` & `button.rb` + +## Dependency + +> May 3, 2026, 23:04 + +Added the library mruby as a depenedancy. + +## Setup C++ classes. + +> May 3, 2026, 23:04 + +Files added: + +- `ruby.h` + - Defines class to hold a ruby block called `Block` + - Defines a global variable `mrb` that stores a pointer to the running mrb instance. + +- `app.h` + - Defines the class `Element`, an element stores the data of a particular object on the screen. + - with fields: + - `Vec2 position` + - `float rotation` + - `Vec2 scale` + - `float z` front/back + - `Ruby::Block on_click` - runs attached function on click + - `Ruby::Block on_update` + - `Ruby::Block on_hover` + - Defines the class `Scene`, a scene is a collection of elements. + - has field: + - `vector elements` + - Defines the class `App`, which owns the scenes, current scene and the actual display information (`Window`). + +- Added a lot of stdlib dependencies to `pch.h` to not need importing every now and then and speed up compilation. + +## Add basic interface + +> May 4, 2026, 15:49 + +Major changes made: + +Added a `Pool` class that can be used to store a performance efficient set of elements (compared to a `std::vector`). +- It has methods: +- `operator[]` to index a particular element by id. +- `all` to get the entire set as a std::vector. +- `aquire` to store an object. +- `release` to release an object. + +In `window.h` added types for - `ImageID`, `FontID` & `TextID` +And used the pool system to recyle and gc these resources. +`window.cc` updated to reflect this change. + +Added `localization.h` and localization semantics: +- defines a localization key as a 16bit integer. +- has a mapping from string to keys, the programmer refers to the keys by their string name. +- defines a language as a 32bit integer. +- a global variable for the current language. +- A mapping from a key+language to actual text. +- The function `get(Key)` that gtes a text based on the given key and current language. + +In `app.h` updated `Element` class: +- Added defaults for the position, rotation, scale & z values. +- Added a field `click_through` to specify if object is mouse interactable. +- Added virtual functions: + - `~Element` destructor. + - `render` called each frame with frame time and a reference to the window object. + - `size` returns the current actual size of element (for click testing). + +And Added class `Image` that inherits from and is an `Element`: +- Adds the fields: + - `animation` stores an ID to the animation displayed for this image. + - `alpha` a float that defines the opacity of the image. +- And definitions forthe virtual functions `size` and `render` + +And added class `Text` which also inherits from `Element`: +- Adds the fields: + - `key` a localization key. + +## + +``` +55f4b4d Add basic app interface + include/app/app.h | 184 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------- + include/binding/ruby.h | 15 +++++++++++++- + include/localization/localization.h | 28 ++++++++++++++++++++++++++ + include/utils.h | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ + include/window/window.h | 41 +++++++++++++++++++------------------ + samples/button.rb | 2 +- + samples/main.rb | 17 ++++++++-------- + src/main.cc | 6 +++--- + src/window/window.cc | 100 +++++++++++++++++++++++++++--------------------------------------------------------------- + 9 files changed, 334 insertions(+), 113 deletions(-) +a51eb90 Fix main loop, add example and cleanup + include/app/app.h | 64 ++++++++++++++++++++++++++++++++++++++++------------------------ + include/binding/ruby.h | 2 +- + include/utils.h | 9 ++------- + include/window/window.h | 19 +++++++++++++------ + samples/button.rb | 8 ++++++-- + samples/main.rb | 18 +++++++++--------- + src/main.cc | 70 +++++++++++----------------------------------------------------------- + src/window/window.cc | 65 +++++++++++++++++++++++++++++++++++++++++++++-------------------- + 8 files changed, 127 insertions(+), 128 deletions(-) +1b15f51 Finish basic ui binding to ruby + include/app/app.h | 48 +++++++++++++++++-- + include/binding/ruby.h | 16 +++++++ + include/localization/localization.h | 43 +++++++++++++++-- + include/pch.h | 3 ++ + include/utils.h | 2 +- + samples/button.rb | 20 +++++--- + samples/main.rb | 2 +- + src/main.cc | 423 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- + src/window/window.cc | 1 + + tst.rb | 1 + + 10 files changed, 536 insertions(+), 23 deletions(-) +6a29c11 Refractor + include/binding/ruby.h | 65 ++++++++++++++++++++++++++++- + src/main.cc | 408 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------------------------------------------------------- + 2 files changed, 216 insertions(+), 257 deletions(-) +d362bbc Refractor and cleanup binding logic + .clang-format | 3 +- + include/app/app.h | 2 ++ + include/binding/definitions.h | 327 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + include/binding/ruby.h | 15 ++++++++ + include/utils.h | 16 ++++----- + src/main.cc | 294 ++-------------------------------------------------------------------------------------------------------------------------------------------------------- + src/window/window.cc | 6 ++-- + 7 files changed, 357 insertions(+), 306 deletions(-) +0da950c Fix major incorrect usage of mrb class definitions causing segfaults + Makefile | 4 +-- + include/app/app.h | 47 ++++++++------------------------ + include/binding/definitions.h | 258 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------- + include/binding/ruby.h | 33 +++++++++++++++------- + include/pch.h | 16 +++++++++++ + include/utils.h | 63 ++++++++++++++++++++++++++++++++---------- + include/window/window.h | 12 +++++++- + samples/button.rb | 19 +++++++++---- + src/window/window.cc | 73 ++++++++++++++++++++++++++++++------------------- + 9 files changed, 383 insertions(+), 142 deletions(-) +306a053 Fix textures/font lifetimes + include/app/app.h | 33 ++++++++++++++++++++++++++------- + include/binding/definitions.h | 17 +++++++++-------- + include/window/window.h | 40 ++++++++++++++++++++++++++-------------- + src/window/window.cc | 38 -------------------------------------- + 4 files changed, 61 insertions(+), 67 deletions(-) +7e9a5a7 Cleanup / refractor + include/app/app.h | 6 +----- + include/binding/definitions.h | 13 +------------ + src/window/window.cc | 6 ------ + 3 files changed, 2 insertions(+), 23 deletions(-) +08a642e Resolve macros and cleanup + include/binding/definitions.h | 640 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------------------- + include/binding/ruby.h | 28 -------- + samples/button.rb | 53 +++++++++++++++ + 3 files changed, 457 insertions(+), 264 deletions(-) +3894b90 Make pools with generations and bind mouse position logic + include/app/app.h | 75 ++++++++++++++++++++++++++++++++++++++++++++++++++------------------------- + include/binding/definitions.h | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------- + include/binding/ruby.h | 4 +++- + include/pch.h | 1 + + include/utils.h | 52 +++++++++++++++++++++++++++++++--------------------- + include/window/window.h | 23 ++++++++++++----------- + samples/button.rb | 20 +++++++++++--------- + src/window/window.cc | 55 ++++++++++++++++++++++++++++++------------------------- + 8 files changed, 221 insertions(+), 125 deletions(-) +65109cc Add ruby bindings for internal structures, allow better controlled localization + include/app/app.h | 45 +++++--- + include/binding/definitions.h | 941 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------- + include/binding/ruby.h | 2 + + include/localization/localization.h | 92 +++++++++++++++-- + include/utils.h | 6 +- + include/window/window.h | 13 ++- + samples/button.rb | 39 +++---- + src/window/window.cc | 27 +++-- + 8 files changed, 1049 insertions(+), 116 deletions(-) +a77f75d Cleanup + src/app/app.cc | 0 + src/test.c++ | 110 -------------------------------------------------------------------------------------------------------------- + 2 files changed, 110 deletions(-) +0f693a5 Fix inputs and add methods + include/app/app.h | 34 ++++++++++++++++++++++++- + include/binding/definitions.h | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- + include/window/window.h | 239 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------- + samples/button.rb | 50 +++++++++--------------------------- + src/window/window.cc | 37 +++++---------------------- + tests/a.out | Bin 0 -> 97008 bytes + tests/array_vs_hash.cc | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + tests/benchmark.csv | 31 +++++++++++++++++++++++ + tests/benchmark.png | Bin 0 -> 152360 bytes + tests/grapher.py | 24 ++++++++++++++++++ + tests/o0-N20.png | Bin 0 -> 148198 bytes + tests/o0-N3.png | Bin 0 -> 145431 bytes + 12 files changed, 499 insertions(+), 92 deletions(-) +820d6c1 analysis outline + notes.md | 16 ++++++++++++++++ + 1 file changed, 16 insertions(+) +1a1d399 Analysis update + notes.md | 16 ---------------- + samples/main.rb | 6 ++---- + writeup/analysis.md | 151 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 153 insertions(+), 20 deletions(-) +14e5cca Update analysis doc + writeup/analysis.md | 96 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------- + 1 file changed, 79 insertions(+), 17 deletions(-) +8ddc314 Analysis update + writeup/analysis.md | 79 +++++++++++++++++++++++++++++++++++++++++++++---------------------------------- + 1 file changed, 45 insertions(+), 34 deletions(-) +a692bfb Analysis suvey addition + writeup/analysis.md | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------- + 1 file changed, 68 insertions(+), 22 deletions(-) +7bdb74e trynna fix click handler being garbage collected + include/app/app.h | 5 +++-- + include/binding/ruby.h | 11 +---------- + samples/main.rb | 7 +++++++ + src/main.cc | 2 ++ + writeup/analysis.md | 25 +++++++++++++++++++++++++ + 5 files changed, 38 insertions(+), 12 deletions(-) +1a33760 Fix gc issue + include/app/app.h | 5 +---- + include/binding/ruby.h | 11 +++++++++-- + 2 files changed, 10 insertions(+), 6 deletions(-) +7d48b22 Fix loop to be more accuratly timed, and added custom ruby libs inclusion setup + .gitignore | 4 +- + Makefile | 16 ++- + include/app/app.h | 22 ++-- + include/binding/ruby.h | 10 ++ + include/window/window.h | 4 +- + libs/l_mgems/compile.sh | 40 +++++++ + libs/l_mgems/pp.rb | 1010 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + samples/button.rb | 29 ++++-- + src/main.cc | 1 + + src/window/window.cc | 7 +- + writeup/analysis.md | 1 + + 11 files changed, 1117 insertions(+), 27 deletions(-) +75b1bc5 Added .inspect and .to_s for debug help + include/binding/definitions.h | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-- + include/localization/localization.h | 8 ++++++++ + include/utils.h | 2 +- + 3 files changed, 64 insertions(+), 3 deletions(-) +6ff16e3 Added proper hit test with rotation and pivoting + include/app/app.h | 54 +++++++++++++++++++++++++++++++++++++----------------- + include/binding/definitions.h | 109 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- + include/binding/ruby.h | 1 + + include/utils.h | 9 +++++++-- + include/window/window.h | 7 ++++--- + samples/button.rb | 6 ++++-- + src/window/window.cc | 30 ++++++++++++++++++++++++------ + 7 files changed, 181 insertions(+), 35 deletions(-) +2bff3eb Improve loop with fps control + include/app/app.h | 33 +++++++++++++++++++++++---------- + include/binding/definitions.h | 24 ++++++++++++++++++++++-- + include/window/window.h | 3 +-- + samples/button.rb | 12 ++++++++---- + src/window/window.cc | 11 ----------- + 5 files changed, 54 insertions(+), 29 deletions(-) +72304ee Add better click through semantics + include/app/app.h | 15 ++++++++++----- + include/binding/definitions.h | 165 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------------- + include/binding/ruby.h | 5 ++++- + samples/button.rb | 12 ++++++------ + samples/main.rb | 9 --------- + writeup/analysis.md | 31 ++++++++++++++++++++++++++++--- + 6 files changed, 180 insertions(+), 57 deletions(-) +e1d1874 Add global update loop, and cleanup + include/app/app.h | 13 ++++++++++--- + include/binding/definitions.h | 26 ++++++++++++++++++++++---- + samples/button.rb | 27 +++++++++++++++++++-------- + writeup/analysis.md | 2 ++ + 4 files changed, 53 insertions(+), 15 deletions(-) +582b2fc Make localization parameters better, and add a single frame animation helper + include/app/app.h | 21 ++++++--------------- + include/binding/definitions.h | 125 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------ + include/binding/ruby.h | 6 ++++++ + include/localization/localization.h | 11 ++++------- + samples/button.rb | 9 +++++---- + 5 files changed, 122 insertions(+), 50 deletions(-) +872d878 bugs and perfomance cleanup. + include/app/app.h | 14 ++++++++++---- + include/binding/definitions.h | 6 ++++-- + include/binding/ruby.h | 2 -- + include/localization/localization.h | 2 +- + include/utils.h | 6 +++++- + samples/stress.rb | 129 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 6 files changed, 149 insertions(+), 10 deletions(-) +dcb8b46 chore: split monolithic header to proper program files, add vec2 ruby class to proxy element position etc., other cleanup + Makefile | 39 ++-- + include/app/app.h | 2 +- + include/binding/definitions.h | 1986 -------------------------------------------------------------------------------------------------------------------------------------------------------------------- + include/bindings/definitions.h | 63 ++++++ + include/{binding => bindings}/ruby.h | 2 +- + include/bindings/ruby_compiled.h | 1038 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + libs/l_mgems/compile.sh | 4 +- + samples/button.rb | 7 +- + samples/stress.rb | 8 +- + src/bindings/animation.cc | 187 ++++++++++++++++ + src/bindings/app.cc | 206 +++++++++++++++++ + src/bindings/element_image.cc | 326 +++++++++++++++++++++++++++ + src/bindings/element_rect.cc | 349 +++++++++++++++++++++++++++++ + src/bindings/element_text.cc | 411 ++++++++++++++++++++++++++++++++++ + src/bindings/font.cc | 72 ++++++ + src/bindings/image.cc | 78 +++++++ + src/bindings/params.cc | 68 ++++++ + src/bindings/scene.cc | 199 +++++++++++++++++ + src/bindings/vec2.cc | 90 ++++++++ + src/main.cc | 2 +- + writeup/analysis.md | 53 ++--- + 21 files changed, 3153 insertions(+), 2037 deletions(-) +c24285b Refractor headers and split code into program files for app & localization files. Split keybinds from window.h file. General cleanup + include/app/app.h | 332 ++++------------------------------------------------------------------------------------------------------------------------------------------------------------------ + include/app/elements.h | 87 ++++++++++++++++++++++++++++++++++++++++++++ + include/app/scene.h | 33 +++++++++++++++++ + include/localization/localization.h | 116 ++++++---------------------------------------------------- + include/window/keybinds.h | 221 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + include/window/window.h | 215 +---------------------------------------------------------------------------------------------------------- + samples/stress.rb | 4 +- + src/app/app.cc | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + src/app/elements.cc | 77 +++++++++++++++++++++++++++++++++++++++ + src/app/scene.cc | 91 ++++++++++++++++++++++++++++++++++++++++++++++ + src/localization/localization.cc | 114 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 11 files changed, 755 insertions(+), 646 deletions(-) +55241b9 Fix missing function declaration. + include/localization/localization.h | 2 ++ + 1 file changed, 2 insertions(+) +e7418fd Added pixel texture element + include/app/elements.h | 34 ++++++++++++++++++-- + include/bindings/definitions.h | 3 ++ + include/window/window.h | 29 +++++++++++++++-- + samples/button.rb | 14 +++++++-- + samples/main.rb | 10 +++--- + src/bindings/element_script.cc | 291 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + src/bindings/scene.cc | 76 ++++++++++++++++++++++++++++++++++----------- + src/window/window.cc | 138 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + writeup/analysis.md | 2 +- + 9 files changed, 567 insertions(+), 30 deletions(-) +419e95a Remove element script and allow images to be pixel updated for similar behaviour + include/app/elements.h | 31 +------------------ + include/bindings/definitions.h | 3 -- + include/window/window.h | 22 ++----------- + samples/button.rb | 26 ++++++++++------ + src/bindings/animation.cc | 7 ++--- + src/bindings/element_script.cc | 291 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + src/bindings/image.cc | 47 +++++++++++++++++++++++++--- + src/bindings/scene.cc | 14 --------- + src/window/window.cc | 252 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------------------------------------------------------ + 9 files changed, 176 insertions(+), 517 deletions(-) +821255a Add tileset loading + include/bindings/ruby.h | 2 ++ + include/window/window.h | 1 + + samples/button.rb | 9 ++++++++- + src/bindings/image.cc | 45 ++++++++++++++++++++++++++++++++++++++++++++- + src/window/window.cc | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + writeup/analysis.md | 4 ---- + 6 files changed, 118 insertions(+), 6 deletions(-) +4c53e5f Setup ecs system scaffolding + include/app/elements.h | 14 +++++++++++++- + include/ecs/ecs.h | 10 ++++++++++ + writeup/analysis.md | 2 ++ + 3 files changed, 25 insertions(+), 1 deletion(-) +dd34bc6 Updare writeup and gitignore + .gitignore | 4 +++- + writeup/analysis.md | 37 +++++++++++++++++++++++++------------ + 2 files changed, 28 insertions(+), 13 deletions(-) +11135a5 Writeup update + writeup/analysis.md | 22 ++++++++++++++++++++++ + 1 file changed, 22 insertions(+) +5e1b92e Rearrange writeup + writeup/analysis.md | 45 ++++++++++++++++++++++----------------------- + 1 file changed, 22 insertions(+), 23 deletions(-) +4eae85c Add design stage and touch up analysis writeup + writeup/analysis.md | 10 +++++++++- + writeup/design.md | 12 ++++++++++++ + 2 files changed, 21 insertions(+), 1 deletion(-) +9620b57 Merge notes and analysis + notes.md | 103 ----------------------------------------------------------------------------- + writeup/analysis.md | 243 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------- + 2 files changed, 189 insertions(+), 157 deletions(-) +fabcad8 Add flake.nix + .gitignore | 2 +- + Makefile | 8 +- + flake.lock | 27 +++++ + flake.nix | 41 +++++++ + include/bindings/ruby_compiled.h | 1038 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ + libs/mruby | 2 +- + 6 files changed, 74 insertions(+), 1044 deletions(-) +9bd1ee7 Cleanup + setup.rb | 4 ++-- + tst.rb | 1 - + 2 files changed, 2 insertions(+), 3 deletions(-) +8f73f09 Remove setup script + .gitignore | 2 +- + Makefile | 9 +-------- + flake.nix | 1 + + include/app/scene.h | 2 +- + setup.rb | 14 -------------- + 5 files changed, 4 insertions(+), 24 deletions(-) +7a9b44a Fix clangd + .gitignore | 4 ++++ + Makefile | 4 ++-- + flake.nix | 1 + + include/pch.h | 3 +-- + src/main.cc | 2 +- + 5 files changed, 9 insertions(+), 5 deletions(-) +a9054b3 Cleanup + flake.nix | 23 +++++++++++++++-------- + include/app/elements.h | 4 ++-- + include/ecs/ecs.h | 8 ++++++-- + samples/button.rb | 8 +++++++- + src/app/app.cc | 2 +- + 5 files changed, 31 insertions(+), 14 deletions(-) +1935be5 try fixing flake + Makefile | 33 ++++++++++++++++----------------- + flake.nix | 152 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------------------- + libs/changes.patch | 30 ++++++++++++++++++++++++++++++ + {libs/l_mgems => scripts}/compile.sh | 6 +++--- + {libs/l_mgems => scripts}/pp.rb | 0 + 5 files changed, 164 insertions(+), 57 deletions(-) +edad8ff Refractor directory name + Makefile | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) +9f4c345 Fix nix flake and use gcc as compiler + .gitignore | 2 ++ + Makefile | 16 +++++++--------- + flake.nix | 67 +++++++++++++++++++++++++++++-------------------------------------- + 3 files changed, 38 insertions(+), 47 deletions(-) +2006ee5 Remove clang specific warning + Makefile | 2 -- + 1 file changed, 2 deletions(-) +2f70c44 Fix incorrect comparision + include/utils.h | 5 ++--- + 1 file changed, 2 insertions(+), 3 deletions(-) +f82ab71 Make fread call error handle + src/main.cc | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) +d484db4 Format files (using clang-format) + include/app/app.h | 2 +- + include/bindings/definitions.h | 2 +- + include/bindings/ruby.h | 2 +- + include/localization/localization.h | 2 +- + include/window/keybinds.h | 2 +- + src/app/elements.cc | 2 +- + src/app/scene.cc | 2 +- + src/bindings/element_image.cc | 2 +- + src/bindings/element_rect.cc | 2 +- + src/bindings/element_text.cc | 2 +- + src/bindings/font.cc | 2 +- + src/bindings/image.cc | 2 +- + src/bindings/params.cc | 2 +- + src/bindings/vec2.cc | 2 +- + src/localization/localization.cc | 2 +- + src/ruby/query.rb | 2 +- + src/window/window.cc | 2 +- + 17 files changed, 17 insertions(+), 17 deletions(-) +e0994b4 Add some useful mgems + .gitmodules | 9 +++++++++ + libs/changes.patch | 23 +++++++++++++++++++++++ + libs/mgems/mruby-env | 1 + + libs/mgems/mruby-marshal-c | 1 + + libs/mgems/mruby-process | 1 + + samples/button.rb | 2 +- + 6 files changed, 36 insertions(+), 1 deletion(-) +e188501 Setup python env + flake.nix | 11 +++++++++++ + tests/grapher.py | 2 +- + 2 files changed, 12 insertions(+), 1 deletion(-) +8a3da07 (HEAD -> main, origin/main) Cleanup + src/main.cc | 1 + + 1 file changed, 1 insertion(+) +```