All submissions

All updates

Let this serve as the definitive showcase video for Unimap following the end of the jam:

https://www.youtube.com/watch?v=5TmZWas_k8s

Quick jam recap for &digitalpaper, my bitmap-based text editor: I managed to get all the bare essential features finished and I think it did a decent job at demonstrating a different paradigm for editing text. There are a few things I didn't get to implement, but the end result still feels fairly finished to me. I'm quite happy with how it turned out!

I did the whole thing without external libraries and without CRT, and only used my existing platform layer and UI library that I've been working on over the past few months. It's incredibly satisfying to have made a piece of software entirely by hand, but also the whole time I was really wishing I had a less bare-bones UI library. I spent a ton of time on things that should have been there already (scroll bars, dynamic string support) and I was definitely limited in the end by not having other features (text boxes). Also, digging through documentation for COM APIs to get PNG encoding working at the last minute was not fun.

Here are some things I wish I could have implemented:

  • Supporting multi-page documents
  • Editable margins
  • Saving loading cursor positions in PNG metadata
  • More font styling options

(I'd recommend watching the demo video at 2x speed as it's just me typing in real-time, no talking)
https://www.youtube.com/watch?v=j2e4dwk6jvA

View original message on Discord

&zvideotrimmer Went a bit overtime but calling it there for the jam. Couldnt quite get encoding working well. But will definitely finish this up post-jam. Learned a bunch about the Media Foundation api and video encoding. Also that multithreading is super important in this domain as video decoding is computationally VERY expensive, even with modern hardware.
Also noticed how bad almost all video players scrub video, even high quality ones like MPV. I did not realize that pre-jam. Feel like its certainly doable to do better job and get close to what proper video editors like Davinci offer with scrubbing/trimming in a much lighter weight package. Even though I'm not encoding well, it is close, and the program is only 149kb with zero dependencies on windows. So even though this jam project was a fail, I really enjoyed diving into this problem domain, and look forward to improving it. Thanks very much Handmade Network admin, this jam was awesome.

View original message on Discord

Update, morning after Jam deadline: I switched back to an SDL3 backend, and that seems to have fixed

  • setting the icon for the window & taskbar
  • copying characters correctly

The downside is that the window is resizable again, which I don't want, but is less important than the above two issues. (This is because I'm having a hard time calling Win32 functions with the hWnd that the SDL backend gives me.) DVUI's different backends are buggy in a few ways, I've come to find out.

I created &overseer for the Handmade Essentials Jam. It's an attempt at improving on Task Manager. It was a fun project that took me deep into the weeds in some winternals stuff and I spent a lot of time learning about some poorly documented, or undocumented save for the work of reverse engineers, kernel interfaces (and not as much writing code as I would have liked). It has some interesting capabilities like history for plotting of the system, each process, and each thread. It's missing some much needed ones like Disk, Network, GPU, and grouping processes as apps like Task Manager does (turns out this is trickier than it appears). I'm considering continuing work on it to add these features, clean up the UI, and possibly port to Linux, especially if there's demand for it.

View original message on Discord

Sadly, I didn't make much past this yesterday. The only progress I made yesterday was an internal architecture decision on how to interact with Odin's nbio. I guess I didn't have the time I thought I would, and spent too long hemming and hawing on some design decisions. All I have at the end of the jam for &send-files

  • A mostly non-functional UI layout
  • Able to copy and paste contacts
  • A rough idea of how the protocol will work
  • A rough implementation of the first step of this protocol in the form of a unit test

I do plan to continue on working this in some capacity after the jam though. I like where I am going with it

View original message on Discord

Some style changes and that's gonna have to do it.

Here is a demo video of Digital Paper, a text editor inspired by the limitations of paper. I'd suggest watching at 2x speed since it's kind of infuriating to watch me typing in real-time.

I'll do a longer writeup later, but the short version is that I had fun, and I'll probably keep working on this :)

Final update on &unimap - polished up search UX a lot. / and ctrl + k focus the search bar, searching is very fast, and searches both blocks as well as characters. esc closes the search window.

Other updates:

  • load fonts from user's OS instead of baking in GNU Unifont
  • info dialog about the program
  • enter shortcut on go-to-code-point

Couldn't get to:

  • drag and drop characters onto other windows
  • customize the window's title bar
  • add icon to window (DVUI's DX11 backend, which I'm using, seems to be broken in this regard)

Known errata:

  • on load, the program asynchronously loads a bunch of fonts from your OS. Every once in a while (maybe 1 in 10 runs) it panics with an allocator error related to this.
  • loading really big blocks (any of the Private Use areas, some of the CJK ones) bogs down the app's performance to a slog because it's trying to render every single one of those character buttons--I tried to implement virtual scrolling like I did with the search window but couldn't get it done in time.
View original message on Discord

Quick demo of the program to show how users can create new calculators and reference them as variables from other calculators where the results are instantly updated so they can see how changes in variables affect their expression.