Wavesonics

Joined 16 years ago

Karma
3
Submissions
10
Member since
Oct 8
Software developer, FOSS advocate, climber of mountains.

https://darkrockstudios.com/ https://snapsafe.org/ https://hammer.ink/ https://github.com/Wavesonics

View on Hacker News

Recent submissions

Comment · 2 months ago
Ha, I was just searching to see how I could run it on linux, NICE!
Comment · 3 months ago
yes, I ported several Java based libs over to KMP, so we've got:

- Markdown: A combined single document

- Epub: A well formatted Epub I think, even a little color and cover page and such

- DocX: This one was tough, there is no Java or Kotlin based Docx lib that is light weight enough to port, so I hand rolled a writer that outputs a small sub-set of the full docx spec. It seems to work, but I have had a couple bug reports, so there's some debugging in my future LoL

- RTF: I ported and then improved a really nice Java lib for this, it now supports reading and writing

- PDF: idk, there was already a KMP lib for this, so I included it. But its not a very useful format for this use case I don't think

Comment · 3 months ago
ya thats exactly it. 2 reasons I went with my own syncing and versioning: I wanted it to be truly multiplatform, and I was targeting a much less technical audience. However! You absolutely could just git init in the project directory and manage it your self in git, since it's all just well behaving text files.
Comment · 3 months ago
I've been building Hammer for over 4 years now. It's a multiplatform app written in Kotlin and it runs on Linux, Windows, Mac, iOS, Android.

It's focused on writing anything from a short story, to a novel, but people have already used it to write RPG campaigns and more.

It's Free and Open Source (MIT) https://github.com/Darkrock-Studios/hammer-editor

It works offline, forever, storing plain text files (Markdown and TOML) in directories that define the project structure. (similar to Obsidian)

But it's got features focused on how writers work: You write your story as a series of nested scenes. You can make new drafts of each scene as things change, giving you a form of version control.

There is an Encyclopedia where you can build out your world, making entries for characters, locations, events, and more. And Hammer will scan you scenes to see which ones contain references to your various encyclopedia entries. Then a Dashboard will help you understand how things in your story are connected.

It's also got a visual timeline, and notes.

When you do come back online, there is an optional, and self-hostable sync server. This allows you to keep all of your devices in sync with content aware syncing. No "last edit wins", Hammer is paranoid about data loss, any conflict is presented to you to be solved. The server also allows you to share your story online, and even request someone to be your editor, and suggest revisions in a web-based interface.

Under the hood it's Kotlin Multiplatform with Compose for the client UI, and HTMX for the server. One codebase shipping to Windows, macOS, Linux, Android and iOS as native apps, as well as the Server. That has been mostly a joy and occasionally a war, and I'm happy to talk about which parts were which. The text editor is the war: I ended up maintaining my own Compose rich-text editor library (https://github.com/Darkrock-Studios/ComposeTextEditor) because nothing existed for true free-form Rich Text Editing. (No spell checking text editors existed either!)

KMP is still fairly nascent, so every time I've had to fill a gap in the ecosystem, I've done it by releasing an MIT licensed library to help grow it. That's included two spell checking libraries, an epub reader/writer lib, an RTF parser, and several earlier attempts at a rich text editor that were eventually superseded. https://github.com/Darkrock-Studios

Hammer isn't done by any stretch, but it's finally at a place where I'm proud to show it and think it might be valuable to those who aren't software devs them selves. https://github.com/Darkrock-Studios/hammer-editor

Comment · 4 months ago
Comment · 9 months ago
Last year I wrote a free and open source encrypted camera app: SnapSafe https://snapsafe.org/

It was recently featured in the latest issue of 2600: The Hacker Quarterly https://store.2600.com/collections/2020-2021/products/winter...

It provides the strongest possible encryption for photos. However it did not support video, as video presents significant technical challenges due to the volume of data.

Last weekend in the United States we saw a painful example of how important video is as evidence.

Sunday I started tackling the problem, and after some crunching the last few days, have now released version 4.0 of SnapSafe supporting video capture.

I created a simple but effective encryption container format for the video that is streamable and seekable with minimal overhead on mobile devices. It allows for playback, random-access, and scrubbing of videos, without having to decrypt anything to disk. You can read my spec on my SECV file format if that's interesting to you. https://github.com/SecureCamera/SecureCameraAndroid/blob/mai...

You can install from either GooglePlay or FDroid: https://play.google.com/store/apps/details?id=com.darkrockst... https://f-droid.org/en/packages/com.darkrockstudios.app.secu...

(Although, F-Droid takes a couple days for the new build to release)

Comment · 15 years ago
Seems like a really great way to share things your working on and get feed back.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton