PHP-GTK Client for Gemini Protocol
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
yggverse ca74a29ffa draft header update on page reload 2 months ago
src draft header update on page reload 2 months ago
.gitignore initial commit 2 months ago
Cargo.toml disable homepage link 2 months ago
LICENSE initial commit 2 months ago
README.md update readme 2 months ago
rustfmt.toml init rustfmt.toml 2 months ago

README.md

Yoda - Browser for Gemini protocol

Rust / GTK 4 implementation

[!IMPORTANT] Project in development!

Install

Stable

cargo install Yoda

Repository

git clone https://github.com/YGGverse/Yoda.git
cd Yoda
git checkout Rust-GTK4
cargo run

Development

This guide in process

Modules

browser

  • The codebase of module must be as minimal as possible: separate different tasks to submodules
  • Every module or it helper must contain and implement only one struct
  • Composition modules (like box for window) stored in sub-folders and following same principles as parent
  • Every mod access 1 level of child API, never parents (e.g.super)
  • One mod = one widget. Create new mod for new widget implementation

Contribution

  • before commit, make sure:
    • new branch created for every new PR git checkout -b 'contribution-name'
    • new code follows common rustfmt style cargo fmt --check

See also

  • CPP-GTK4 - C++ / GTK 4 implementation
  • PHP-GTK3 - PHP / GTK 3 experimental branch