diff --git a/content/software/_index.md b/content/software/_index.md new file mode 100644 index 0000000..454aa1d --- /dev/null +++ b/content/software/_index.md @@ -0,0 +1,102 @@ +--- +title: Software +--- + +# Software Showcase + +This page showcases a *small* subset of my personal projects. + +Looking for a full list of things I've worked on? +Check out my GitHub profile. + +## Libraries + +
+

Raylib FFI

+ +`raylib-ffi` is a very low-level Rust FFI binding to the raylib graphics library. + +The goal of this library is to provide something that tracks the latest version of upstream raylib, and gets in the way as little as possible. The core features are: + +- Direct FFI bindings to C functions +- Rust-ified enums & structs +- Rust-ified default palette definitions + +Thats it! Go use this library directly, or build a higher-level abstraction on top of it if you'd like. + +The whole binding, mapping, and documentation process is entirely automated. Targeting a new raylib version just takes a `git pull` and `cargo build`. + +Check out the [Source Code](https://github.com/ewpratten/raylib-ffi) and [Documentation](https://docs.rs/raylib-ffi). +
+ +
+

Amateur Data Interchange Format library for Rust

+ +`adif-rs` is a Rust implementation of the Amateur Data Interchange Format. + +This library is used to read and write ADIF files, allowing Rust programs to exchange logging data with other pieces of amateur radio software. + +Check out the [Source Code](https://github.com/ewpratten/adif-rs) and [Documentation](https://docs.rs/adif). +
+ +## Programs, Tools, Add-ons, and Scripts + +
+

Protomask

+ +Protomask is a user space NAT64 implementation. + +The protomask NAT64 daemon currently powers single-stack networking inside AS54041. The project also encompasses some general-purpose Rust libraries for working with inter-protocol networking. + +For more information, see the [GitHub page](https://github.com/ewpratten/protomask) for this project. +
+ +## Things that were made for fun + +Hey, I'm allowed to have fun with software sometimes too right?! + +The following projects were mostly made as one-offs for friends in tight time constraints, so don't judge 'em too hard ..ok?. Do keep in mind, that if you want to self-host any of these, you *might* need to tweak some hard-coded UUIDs and endpoints. + +
+

UwU Types

+ +UwU and OwO your Rust integer types. + +`u8` becomes `uwu8`, `i16` becomes `owo16`, and of course, `usize` is now `uwusize`. + +Check out the [Source Code](https://github.com/ewpratten/uwu-types) or [use it in a project](https://crates.io/crates/uwu-types) (please don't). +
+ +
+

Other names for Rust's unsafe keyword

+ +The `foot-gun` Rust library adds some additonal names for the `unsafe` keyword. + +```rust +foot_gun!({ + // Unsafe code here +}); + +here_be_dragons!({ + // Unsafe code here +}); + +beware!({ + // Unsafe code here +}); + +// ... etc +``` + +Check out the [Source Code](https://github.com/ewpratten/foot-gun) or [use it in a project](https://crates.io/crates/foot-gun). +
+ +
+

No Bitches? Discord Bot

+ +A discord bot that tries its very best to turn images of people into the "No Bitches?" meme. + +![](https://raw.githubusercontent.com/ewpratten/no-bitches-bot/master/assets/no-cv.jpg) + +[Source Code](https://github.com/ewpratten/no-bitches-bot) available on GitHub. +
\ No newline at end of file diff --git a/sass/styles/layout.scss b/sass/styles/layout.scss index 0b4e78b..df90d50 100644 --- a/sass/styles/layout.scss +++ b/sass/styles/layout.scss @@ -62,3 +62,20 @@ max-width: unset !important; } } + +.card { + border: 1px solid rgb(194, 194, 194); + border-radius: 5px; + padding-left: 1em; + padding-right: 1em; + margin-top: 1em; + margin-bottom: 1em; + + h3 { + margin-top: 16px !important; + } +} + +.card.card-dropshadow { + box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2); +} diff --git a/sass/styles/typography.scss b/sass/styles/typography.scss index f86f50c..6d7d507 100644 --- a/sass/styles/typography.scss +++ b/sass/styles/typography.scss @@ -37,6 +37,9 @@ body { .gray { color: gray; } +.grey { + color: gray; +} .hover-help { &:hover { @@ -66,4 +69,31 @@ body { width:max-content; margin:auto; padding: 5px; +} + +li { + img { + margin-left: unset !important; + margin-right: unset !important; + } +} + +blink { + animation: blinker 1s linear infinite; +} + +blink-lightly { + animation: blinker_light 1s linear infinite; +} + +@keyframes blinker { + 50% { + opacity: 0; + } +} + +@keyframes blinker_light { + 50% { + opacity: 0.5; + } } \ No newline at end of file diff --git a/templates/components/navbar.html b/templates/components/navbar.html index 4a7f9d4..51c3163 100644 --- a/templates/components/navbar.html +++ b/templates/components/navbar.html @@ -25,8 +25,8 @@ Home · Blog - {# · - Projects #} + · + Software · Radio ·