#idea #rectangle #sharing #learning #load #button #save-load

app rusticify

App for brainstorming & sharing ideas πŸ¦€ Learning Project

1 unstable release

0.1.0 Apr 1, 2023

#1103 in Game dev

MIT/Apache

5.5MB
3K SLoC

  • πŸ¦€icify

[file:rusticify.gif]

** Inspiration I use lucid.app at work quite often to brainstorm ideas with colleagues or even solo. I often share the ideas via sharing lucid.app diagrams or just screenshot of it. I don't use banch of features there. Just simple rectangles, arrows, why not build something similiar in rust, for the sake of learning rust and having some fun?

** What's implemented

  • βœ… add/remove rectangle
  • βœ… rectangle resizing
  • βœ… rectangle repositioning
  • βœ… wrapped text inside rectangles
  • βœ… paste screenshot from clipboard
  • βœ… connect nodes with arrows
  • βœ… make app snapshot in memory and load from it (command + s[l])
  • βœ… save app state to file and load from it (command + shift + s[l] or Save[Load] button)
  • βœ… change background color of rectangle
  • βœ… move rectangle to front/back
  • βœ… positioning text in rectangle
  • βœ… introduce tabs
  • βœ… buttons to cut/copy/paste text in rectangle and open all links in rectangle

** Run

Tested only on MacOS, should work on Linux and Windows as well #+BEGIN_SRC sh cargo r #+END_SRC

It runs on wasm as well, but it's not very useful, since it doesn't have clipboard/file system features, also only landscape mode is supported.

#+BEGIN_SRC sh cargo r --target wasm32-unknown-unknown --release wasm-server-runner target/wasm32-unknown-unknown/release/rusticify.wasm #+END_SRC

** Pre-commit actions

#+BEGIN_SRC cargo fmt cargo clippy --fix --allow-staged -- -A clippy::type_complexity #+END_SRC

** Screenshot [file:rusticify.png]

  • Contributing

Contributions are always welcome! Please adhere to this project's code of conduct.

Dependencies

~44–83MB
~1.5M SLoC