charles austria
Programming
Cross-platform apps and browser games built with Svelte, Rust, Lua, HTML, and JavaScript.
Web Apps
3 projects
01
4-me
Web app collection for creatives. After realising the capabilities of browser based local toosl I created this website to create a centralized place to access them with a unified identity.
02
ascii-gen
(HTML/JavaScript) Turn a video or GIF into an ASCII-rendered animated GIF entirely in the browser. Drop in a file, adjust the output settings, preview the result, and download the finished animation all client side. I had been looking for a convient easy ascii video tool and just made one because it was easier than testing more apps.
03
Desk Note Animator
(HTML/JavaScript) Draw an animation on sticky notes, frame by frame across 6 frames! This simple idea comes with animation tools like onion skin previews and easy export to gif. Inpired by Jackbox games and Gartic Phone web drawing UIs.
Apps
3 projects
01
t-mp
(React/Rust) This is a cross platform desktop terminal multiplexer built on Tauri. It organizes terminals into projects, tabs, workspaces, and split panes, with layouts and preferences saved locally. I was interested in cmux but that was only available on Apple. Currently using on Windows and Arch Linux.
02
Easy-Mark
(Svelte/Rust) This is a cross platform markdown file reader and editor built on Tauri. Most of my development happens around outlines that are normally markdown files. Development just started as a markdown file reader and developed into an IDE. This taught a lot about why VS Code or Zed made the decisions they did in design and UI.
03
Easy-Read
(Svelte/Rust) This is a cross platform ereader app built on Tauri. I wanted a simple to use ereader for .epub files that didn't need it's own library management. Just drag and drop in files to begin reading. Developed when I couldn't find an existing app that functioned how I wanted with the file formats I needed.
04
Bluetooth Controller
(Python/Flask) A local web app and JSON API to control a KURV-BK Bluetooth Mesh lamp. It keeps a persistent Bluetooth Mesh Proxy connection alive so the web UI and CLI stay responsive, with on/off, brightness presets, and a dimmer. Normally reconnecting to the dongle can take several attempts but this keeps it working on all devices in my network.
Web Games
4 projects
01
Rock Paper Scissors
(HTML/JavaScript) A live camera-based rock paper scissors game that uses hand tracking to read rock, paper, or scissors before each throw. I wanted to make a fun game that would implement the camera into the way the player controls. I've always had fun with the Wii and Kinect and wanted to create a browser experience that forced you to use your body.
02
Vong
(HTML5) A mix of volleyball and the original videogame Pong. Play matches against friends in local multiplayer or compete against computer-controlled opponents.
03
Score Counter
(HTML5) A simple way to keep track of the score while playing any game like Boggle or Scattergories. Made it after playing a lot of games with friends recording scores in notes apps and wished there was an easier way.
04
Greatest Trader 2
(HTML/JavaScript) First web game, porting to html. This version focused on just the trading terminal without the extra fluff. This helped with seeing the differences in structure between the two languages to create the same game. This also helped me develop a workflow for working on static pages that I continued to use.