WIP but feel free to take a look
src/
โโโ app.rs -> holds the state and application logic
โโโ buffer.rs -> holds the text buffer abstration
โโโ event.rs -> handles the terminal events (key press, mouse click, resize, etc.)
โโโ handler.rs -> handles the key press events and updates the application
โโโ lib.rs -> module definitions
โโโ main.rs -> entry-point
โโโ tui.rs -> initializes/exits the terminal interface
โโโ ui.rs -> renders the widgets / UI
โโโ ui/
โโโ widgets.rs -> holds the UI widgets
-- Flatten errors -- b, B
-- viewport & some kind of text_area abstraction (look at yazi)
-- flesh out git stuff -- action builder?