-
+
@@ -145,7 +145,14 @@
-
+
+
+A basic starter bar which will be very helpful to beginners, see examples/ewwii-bar.
+
+This starter bar is installable via eiipm: ewwii's package manager.
+Just run the following command and have the template ready in the current working directory in an instant!
+eiipm i starter_template
+
@@ -193,6 +200,7 @@
+
diff --git a/docs/book/examples/theming.html b/docs/book/examples/theming.html
index da4006b..5d61f5c 100644
--- a/docs/book/examples/theming.html
+++ b/docs/book/examples/theming.html
@@ -3,7 +3,7 @@
-
Theming Tricks - Ewii documentation
+
Theming Tricks - Ewwii documentation
@@ -81,7 +81,7 @@
@@ -110,13 +110,13 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -202,7 +202,7 @@ The following list of package names should work for arch linux:
Once you have the prerequisites ready, you're ready to install and build ewwii.
First clone the repo:
-
git clone https://github.com/byson94/ewwii
+git clone https://github.com/Ewwii-sh/ewwii
cd ewwii
@@ -227,8 +227,25 @@ When you're on Wayland, build with:
If you don't want to go through the very tedious task of cloning and building ewwii, you can install it using Cargo (Rust crate manager).
You can run the following command to install ewwii from cargo:
-cargo install --git https://github.com/byson94/ewwii
+cargo install --git https://github.com/Ewwii-sh/ewwii
+
+Before diving deeper into Ewwii and Rhai (Ewwii’s configuration language), check out Statictranspl.
+Rhai layouts are dynamic and can be verbose, which may feel overwhelming for users without experience in languages like Rust, C, or JavaScript. Statictranspl simplifies Rhai by abstracting much of the complexity, adding stricter compilation, and providing clearer error messages. Many issues can be caught at compile time, making it more beginner-friendly.
+How it works:
+Statictranspl compiles a custom language called stpl into Rhai quickly and efficiently. For users creating static-only widgets, it can be a powerful way to simplify development.
+
+Note:
+Statictranspl is experimental. It currently does not support most dynamic Rhai features, such as:
+
+- Variables and updates
+- Polling and listeners
+- Functions and conditionals (
if/else)
+- Loops (
for/while)
+- Imports/exports
+
+While excellent for static widgets, it cannot yet match the full flexibility of raw Rhai.
+
This section introduces the foundational systems that define how you configure your UI, express logic, and work with dynamic data in Rahi (Ewwii's configuration language).
The configuration model is imparative by nature but will be used in a declarative format that is made to make configuring ewwii easy as well as to provide a logical way of configuring. You'll also work with special built in functions and modules that expose live system state and other information.
@@ -278,7 +295,7 @@ These files must be placed under $XDG_CONFIG_HOME/ewwii (this is mo
}, label(#{ text: "example content" }))
])
Here, we are defining a window named example, which we then define a set of properties for. Additionally, we set the content of the window to be the text "example content".
-You can now open your first window by running eww open example! Glorious!
+You can now open your first window by running ewwii open example! Glorious!
| Property | Description |
monitor | Which monitor this window should be displayed on. See below for details. |
@@ -719,7 +736,7 @@ or use the GTK-Debugger
Modules undoubtedly are one of the most powerful features in Rhai. They provide infinite extensibility to ewwii.
Every module follows the syntax:
import "std::env" as env;
-let home = env::get_home_dir();
+let home = env::get_home_dir(); // returns `$HOME` env var value
This allows you to write expressive, modular Rhai code with functions grouped logically under std or custom namespaces.
The std::env module provides access to common system-level environment queries. It is supported on Unix-based systems (Linux, macOS).
@@ -1064,11 +1081,27 @@ let lower = text::to_lower("HELLO"); // output: "hello"
max: float maximum value
-
+This section provides hands-on, practical demonstrations of everything covered so far. Real layouts, interactive components, and theming techniques will be used in these examples.
+Each example is minimal but complete, focusing on a particular design pattern or technique. You can copy-paste them into your own config to experiment.
+Included:
+
+- Common layout patterns (e.g., bars, panels, dashboards)
+- Interactive elements like buttons, sliders, toggles
+- Theming techniques and tricks to override or enhance GTK styles
+
+If you're stuck or just looking for inspiration, this is your go-to reference.
+
+
+A basic starter bar which will be very helpful to beginners, see examples/ewwii-bar.
+
+This starter bar is installable via eiipm: ewwii's package manager.
+Just run the following command and have the template ready in the current working directory in an instant!
+eiipm i starter_template
+
-Here you will find help if something doesn't work. If the issue isn't listed here, please open an issue on the GitHub repo.
+Here you will find help if something doesn't work. If the issue isn't listed here, please open an issue on the GitHub repo.
- Make sure that you are compiling ewwii using a recent version of rust (run
rustup update to be sure you have the latest version available)
@@ -1096,7 +1129,7 @@ let lower = text::to_lower("HELLO"); // output: "hello"
- Update to the latest ewwii version.
- Sometimes hot reloading doesn't work. In that case, you can make use of
ewwii reload manually.
-Remember, if your issue isn't listed here, open an issue on the GitHub repo.
+Remember, if your issue isn't listed here, open an issue on the GitHub repo.
@@ -1132,6 +1165,7 @@ let lower = text::to_lower("HELLO"); // output: "hello"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Before diving deeper into Ewwii and Rhai (Ewwii’s configuration language), check out Statictranspl.
+Rhai layouts are dynamic and can be verbose, which may feel overwhelming for users without experience in languages like Rust, C, or JavaScript. Statictranspl simplifies Rhai by abstracting much of the complexity, adding stricter compilation, and providing clearer error messages. Many issues can be caught at compile time, making it more beginner-friendly.
+How it works:
+Statictranspl compiles a custom language called stpl into Rhai quickly and efficiently. For users creating static-only widgets, it can be a powerful way to simplify development.
+
+Note:
+Statictranspl is experimental. It currently does not support most dynamic Rhai features, such as:
+
+- Variables and updates
+- Polling and listeners
+- Functions and conditionals (
if/else)
+- Loops (
for/while)
+- Imports/exports
+
+While excellent for static widgets, it cannot yet match the full flexibility of raw Rhai.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+