diff --git a/apps/portfolio/public/img/portfolio/llama-bot.avif b/apps/portfolio/public/img/portfolio/llama-bot.avif deleted file mode 100644 index 6df4a94..0000000 Binary files a/apps/portfolio/public/img/portfolio/llama-bot.avif and /dev/null differ diff --git a/apps/portfolio/public/img/portfolio/pomky.avif b/apps/portfolio/public/img/portfolio/pomky.avif deleted file mode 100644 index f7890f5..0000000 Binary files a/apps/portfolio/public/img/portfolio/pomky.avif and /dev/null differ diff --git a/apps/portfolio/public/img/portfolio/pompup.avif b/apps/portfolio/public/img/portfolio/pompup.avif deleted file mode 100644 index c957e5e..0000000 Binary files a/apps/portfolio/public/img/portfolio/pompup.avif and /dev/null differ diff --git a/apps/portfolio/public/img/portfolio/wbtimeline.avif b/apps/portfolio/public/img/portfolio/wbtimeline.avif deleted file mode 100644 index 0fa8188..0000000 Binary files a/apps/portfolio/public/img/portfolio/wbtimeline.avif and /dev/null differ diff --git a/packages/content/markdown/projects/llama bot.md b/packages/content/markdown/projects/llama bot.md deleted file mode 100644 index 5ea1be8..0000000 --- a/packages/content/markdown/projects/llama bot.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -name: Llama Bot -overview: A discord bot. -image: /img/portfolio/llama-bot.avif -repo: https://github.com/developomp/llama-bot -badges: - - typescript - - firebase ---- - -## Introduction - -The llama bot is a discord bot made for the -[Llama's Pyjamas community discord server](discord.gg/2fsar34APa). -It is written in typescript and uses the -[sapphire framework](https://sapphirejs.dev). diff --git a/packages/content/markdown/projects/pomky.md b/packages/content/markdown/projects/pomky.md deleted file mode 100644 index 2e5e8cb..0000000 --- a/packages/content/markdown/projects/pomky.md +++ /dev/null @@ -1,94 +0,0 @@ ---- -name: pomky -overview: A gtk-based, conky-like system monitor written in rust. -image: /img/portfolio/pomky.avif -repo: https://github.com/developomp/pomky -badges: - - rust - - gtk - - cairographics - - linux ---- - -## Introduction - -If you're into desktop customization, chances are, you're using (or used) -[rainmeter][rainmeter]. In case you don't know what that is, it is by far the -most popular desktop customization tool. Think of Windows 7 widgets on steroid. - -However, rainmeter only works in the Windows Operating System. Which means Linux -users like me have to look elsewhere for alternatives. Fortunately, there are -projects like [conky][conky] and [polybar][polybar], so getting started should -not be too difficult especially with the endless supply of ideas, references, -and guides from communities such as [r/unixporn][unixporn]. - -When I first switched to Linux back in 2017, I was somewhat satisfied with my -simple conky widgets, but I knew I had to eventually do something about its -primitive configuration system that prevented me from making anything with -complexity without looking like a card pyramid that could collapse at the -slightest disturbance. So one day in December 2021, after finishing -[The Rust Book][the-rust-book], I decided to make my own tailor-made system -monitor as my first rust project. - -## Challenges - -### What framework to use - -When I first started the project, I considered using [tauri][tauri] which is -basically [ElectronJS][electronjs] but with rust & WebKit for backend and is -much more lightweight. - -However, that plan quickly fall apart when it turned out to be impossible to -make a window that acted like it's part of the desktop (like the task bar) -instead of a regular window without access to the lower level code. In technical -terms, I wasn't able to mark the window as `_NET_WM_WINDOW_TYPE_DESKTOP` -([FreeDesktop Documentation][freedesktop-docs]). This is now possible thanks to -[tauri-apps/tao#522][tauri-always-on-bottom] PR being merged, but at the time, -there was no simple and clean solution. - -After going through different options, I ended up implementing everything from -scratch using the [rust binding for gtk][gtk-rs]. This allowed me to simply set -a `WindowTypeHint` ([GDK documentation][gdk-docs]) and expect everything to work -flawlessly. This also allowed me to use powerful GUI design tools such as -[glade][glade]. - -### Drawing graphs - -Although GTK doesn't provide any usable built-in graph & chart components, -developers can still implement their own using the -[Cairo Graphics Library][cairographics] which is part of the -[GTK architecture][gtk-architecture]. - -After reading some documentations and way more google searches than I'd like to -admit, I was able to make a simple graph and bar component I was happy with. - -## Future - -Although the end result looks rather marvelous if you ask me, there are several -rough edges I'd like to smooth out. For starters, it acts erratically on -[Wayland][wayland] (getting a title bar all of a sudden, moving out of its set -position, etc.), gets drawn over other window when switching workspaces, has -higher CPU usage than other system monitors, has unpredictable CPU spikes, etc. - -Which is why in the future, I'll be using [eww][eww]: yet another Linux widget -system written in rust. The way it works is very similar to pomky behind the -scenes (uses gtk, draws with cairo, custom components, all the good stuff), but -it is better than pomky in almost every conceivable way. It is more configurable -, more lightweight, more modular, and solves the previously mentioned issues. - -[rainmeter]: https://www.rainmeter.net "rainmeter" -[conky]: https://github.com/brndnmtthws/conky "conky" -[polybar]: https://github.com/polybar/polybar "polybar" -[unixporn]: https://www.reddit.com/r/unixporn "unixporn" -[the-rust-book]: https://doc.rust-lang.org/book "The Rust Book" -[tauri]: https://tauri.app "tauri" -[electronjs]: https://www.electronjs.org "ElectronJS" -[freedesktop-docs]: https://specifications.freedesktop.org/wm-spec/wm-spec-latest.html#idm45299620502752 "Freedesktop Documentation" -[tauri-always-on-bottom]: https://github.com/tauri-apps/tao/pull/522 "tauri-apps/tao PR #522" -[gtk-rs]: https://gtk-rs.org "gtk-rs" -[gdk-docs]: https://docs.gtk.org/gdk3/enum.WindowTypeHint.html#desktop "GDK Documentation" -[glade]: https://wiki.gnome.org/Apps/Glade "Glade" -[cairographics]: https://www.cairographics.org "Cairo Graphics" -[gtk-architecture]: https://www.gtk.org/docs/architecture "GTK architecture" -[wayland]: https://wayland.freedesktop.org "Wayland" -[eww]: https://github.com/elkowar/eww "eww" diff --git a/packages/content/markdown/projects/pompup.md b/packages/content/markdown/projects/pompup.md deleted file mode 100644 index 10c24ad..0000000 --- a/packages/content/markdown/projects/pompup.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -name: Pompup -overview: My Arch Linux desktop setup -image: /img/portfolio/pompup.avif -repo: https://github.com/developomp/pompup -badges: - - go - - python - - gnubash - - linux ---- - -## Introduction - -Pompup is my third attempt at making my personal post-install utility for -[Arch Linux](https://archlinux.org). - -Here are the past versions: - -1. [https://github.com/developomp/setup-script-sh][setup-script-sh] - Third version written in Shell Script -2. [https://github.com/developomp/setup-script-py][setup-script-py] - Second version written in Python -3. [https://github.com/developomp/pompup][pompup] - First version written in Shell Go - -[setup-script-sh]: https://github.com/developomp/setup-script-sh -[setup-script-py]: https://github.com/developomp/setup-script-py -[pompup]: https://github.com/developomp/pompup diff --git a/packages/content/markdown/projects/wbtimeline.md b/packages/content/markdown/projects/wbtimeline.md deleted file mode 100644 index 77bcf26..0000000 --- a/packages/content/markdown/projects/wbtimeline.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -name: War Brokers Timeline -overview: A list of events happened in the War Brokers community in a chronological order. -image: /img/portfolio/wbtimeline.avif -repo: https://github.com/developomp/wbtimeline -badges: - - rust - - typescript - - deno - - webassembly ---- - - - -## Introduction - -wbtimeline is an experimental project made as an excuse to use [deno][deno] -and [rust][rust]. The most notable thing about this project is that the frontend -code is entirely written in the rust programming language by the power of the -[yew][yew] framework. - -[deno]: https://github.com/denoland/deno -[rust]: https://github.com/rust-lang/rust -[yew]: https://github.com/yewstack/yew