erwachen banner

erwachen

3 devlogs
12h 55m 41s

Updated Project: Added an interactive menu and cleaned up the existing CLI. The earlier version had some odd design choices which I decided to fix.
A wakeonlan client which allows you to wake devices by name so you don't need to memorize MAC ad…

Updated Project: Added an interactive menu and cleaned up the existing CLI. The earlier version had some odd design choices which I decided to fix.
A wakeonlan client which allows you to wake devices by name so you don’t need to memorize MAC addresses.

This project uses AI

I used claude code for making my code more readable by standardizing code formatting, punctuation, patterns, etc. I also used it for code refactoring and code review. The CI/CD was created by claude code and reviewed by me, and the figgle font was created by claude code from a broken figgle font file

Demo Repository

Loading README...

Glitchy

Shipped this project!

Hours: 12.93
Cookies: 🍪 125
Multiplier: 9.67 cookies/hr

Rewrote an old CLI project I made. Quite happy with how it turned out, especially with the interactive menu. The only thing which I considered doing on top was a GUI but I found it unnecessary given the interactive menu.

Glitchy

The project is ready for release!! Since all the functionality was done creating the standard CLI was extremely easy, especially since I could refer to the code I wrote for the original version of erwachen. I then focused on cleaning up the experience a bit, making everything just that bit nicer to use. Finally I setup a CI/CD and updated the README file.

Attachment
0
Glitchy

So I decided to create an interactive CLI menu before creating an actual CLI. Why? Because interactive menus are really cool! They are great for people who love the terminal but don’t memorize commands, also they look nice. The major downside is fewer options, since you need to balance speed with options (more options = more navigation = slower experience). For erwachen this means dropping the IP and port options when waking up a device, which are hardly used anyways. Also why are figlet fonts so annoying? I had to spend ages finding a good one which didn’t take up half the screen.

0
Glitchy

I removed the old CLI code and moved all of it’s functionality into separate files under Core which can be reused in both the new CLI code and the GUI code. I also cleaned up a lot of the code, getting rid of unnecessary RegEx and using included libraries where possible.

Old Functionality

  • Create an Alias (name to hardware address)
  • List all Aliases
  • Remove an Alias (based on name)
  • Wake up a device given hardware address, IP and port
Attachment
0