HackerTrans
TopNewTrendsCommentsPastAskShowJobs

jvanveen

no profile record

Submissions

Show HN: Mithril fork with Signals, state, store and SSR

2 points·by jvanveen·قبل 5 أشهر·0 comments

Garage44 – Modern web applications built with Bun, Preact, and DeepSignal

github.com
3 points·by jvanveen·قبل 8 أشهر·0 comments

Show HN: Expressio – internationalization tooling for translators and AI

github.com
1 points·by jvanveen·قبل 8 أشهر·1 comments

Show HN: Real-time app starter with FastAPI, PostgreSQL pub/sub, and UV

4 points·by jvanveen·قبل 9 أشهر·1 comments

Show HN: Expressio – Internationalization for humans, through AI

github.com
2 points·by jvanveen·السنة الماضية·0 comments

Show HN: Expressio – AI-Automated Internationalization

github.com
3 points·by jvanveen·السنة الماضية·0 comments

Show HN: Mithril Improved with AI

github.com
1 points·by jvanveen·السنة الماضية·0 comments

Show HN: Expressio – Automated Internationalization

github.com
2 points·by jvanveen·السنة الماضية·0 comments

Show HN: Expressio – open-source Translation Automation

expressio.tech
1 points·by jvanveen·السنة الماضية·0 comments

Show HN: Codebrew – An open-source AI-powered development workflow (early stage)

1 points·by jvanveen·قبل سنتين·0 comments

Show HN: Codecrew LLM Issue Refinement

codeberg.org
1 points·by jvanveen·قبل سنتين·0 comments

Expressio 1.1.0 – Initial Arabic and Chinese support

npmjs.com
1 points·by jvanveen·قبل سنتين·0 comments

Show HN: Expressio – Machine Translation

garage44.org
1 points·by jvanveen·قبل سنتين·0 comments

Automate hour tracking with Wakapi and Wakamonth

bitstillery.com
1 points·by jvanveen·قبل 3 سنوات·4 comments

Show HN: Wakamonth Hours Reporting Tool

bitstillery.com
1 points·by jvanveen·قبل 3 سنوات·0 comments

comments

jvanveen
·قبل 5 أشهر·discuss
I'm working on a set of open-source applications to help collaborate on building software. Basic principles are better online communication between people(Pyrite - Galene SFU, channel-based chat), automating i18n and project management where feasible. Mostly experimental: https://github.com/garage44/garage44/
jvanveen
·قبل 8 أشهر·discuss
Expressio simplifies i18n workflows with tooling that works for both human translators and AI. Type-safe translations, AI translation support (DeepL, Claude), and code sync.

Instead of magic strings like `$t('menu.settings')`, you use typed references: `$t(i18n.menu.settings)`. TypeScript knows about all translations, IDE autocomplete works, and refactoring is safe. The type-safe approach also makes it easy for AI tools to understand and work with translations.

Features:

- AI translation via DeepL/Claude

- Type-safe translations (no magic strings)

- CLI + web UI

- Real-time WebSocket sync

- Lint to find missing translations in code

Works with i18next format. Uses a workspace file (`.expressio.json`) to track source text and translations. Built partly with AI assistance to speed up development.
jvanveen
·قبل 9 أشهر·discuss
Live demo: https://garage44.org/
jvanveen
·قبل 10 أشهر·discuss
Puppeteer (Pdfium => https://github.com/chromium/pdfium)
jvanveen
·السنة الماضية·discuss
I can't believe people still buy the Purism scam after all these years...I ordered a Librem 5 and a Pinephone back in the days of the other supply chain story(Covid). The Pinephone flew in from China in less than 2 months; the Librem 5 took more than 4 years to arrive. All Purism offered during that time were "opportunities" to invest and exhausting delay stories about failing supply chains, while keeping their customers completely in the dark about their order state. Instead of preying on the goodwill of FOSS enthousiasts, they now try to tap into a new market (nationalism) to sell the same useless overpriced brick to.
jvanveen
·قبل سنتين·discuss
Recently used Cursor/Claude sonnet to port ~30k lines of EOL Livescript/Hyperscript to Typescript/JSX in less than 2 weeks. That would have took at least several months otherwise. Definitively a force multiplier, for this kind of repetitional work.
jvanveen
·قبل سنتين·discuss
I hate to manually keep track of development time. Wakatime and Wakapi (https://github.com/muety/wakapi) are super useful to generate monthly stats from its api. Made an open-source tool to generate monthly hour reports with: https://codeberg.org/garage44/garage44/src/branch/main/packa...
jvanveen
·قبل سنتين·discuss
Not hours; but days instead of months: porting around 30k lines of legacy livescript project to typescript. Most of the work is in tweaking a prompt for Claude (using Aider) so the porting process is done correctly.
jvanveen
·قبل سنتين·discuss
Interesting approach! I like the idea of using an ast to find translation strings and to generate source strings by an llm from the context. My experience is the same. Having to deal with 6 languages and a fast changing application is impossible for small teams, so I ended up with asimilar approach where developers only edit the source text, and target translations are automatically kept in sync using Deepl. This solves the whole i18n dilemma of outdated/missing translations, by just focussing on the source texts. It would be great to be able to even generate the source texts from the $t tag. I'm slowly turning this into an open source developer tool: https://garage44.org/posts/expressio/expressio-machine-trans...
jvanveen
·قبل سنتين·discuss
I just switched to Bun for typescript support, a free bundler and better performance. Iojs flashback all over :)
jvanveen
·قبل سنتين·discuss
"you have 3 items in your cart" would in that case create a translation for each time the amount changes, instead of having "you have {{count}} items in your cart. A backend proxy sounds like an interesting idea, but working with an i18n formatted string from the start seems like a more sustainable approach.
jvanveen
·قبل سنتين·discuss
Cool, nice product. Interesting to see that you've managed to get translations working on top of chatGPT, even for languages like Arabic! I decided not to support target language edits, because I felt it would make it much more difficult to keep languages in sync, when the source string is not always leading. How do you deal with this properly? Would love to have an automatic workflow that updates the json source file, as i18n tags are being added/removed from frontend files. For versioning; maybe just take advantage of the project's (git) versioning?
jvanveen
·قبل سنتين·discuss
Interesting! How about using Deepl as a translation backend? I got some good results for translation strings with {{placeholders}} that needed to be ignored in the translations. Its api also has some neat features like formality, glossaries and context(experimental).

Ps. I'm working on a similar opensource tool to speed up the i18n process ( https://codeberg.org/garage44/expressio)
jvanveen
·قبل سنتين·discuss
Just updated my Librem 5, to see where it's at after catching dust in a drawer for a year. No bluetooth audio, sluggish browsing, no maps, no suspend, nice terminal, sweaty hands from the heat exhaust. So... still no battery life, and charging takes a couple of hours. I didn't even bother to try calls. Been there, done that with the PP & PPP. Great idea, nice proof of concept, but this is not a usable phone at all. Back to Fairphone + CalyxOS for me...
jvanveen
·قبل 3 سنوات·discuss
Wakapi is great! I'm using it for a couple of months now on a simple VPS. I like that it is written in Golang (quite fast) and feels polished. There is a recent instruction video about Wakatime & Wakapi which is a nice way to get a quick overview: https://www.youtube.com/watch?v=iEb71_kaluc
jvanveen
·قبل 3 سنوات·discuss
Because I couldn't find any similar solution, I've come up with a small script (Wakamonth) on top of Wakapi/Wakatime, that allows me to get an overview of worked hours at the end of the month, without me having to write down this manually. Any thoughts about it or similar solutions?
jvanveen
·قبل 3 سنوات·discuss
I tried to log hours with Wakapi and Wakatime plugins for Vscode and Firefox. Heartbeats are still collected when offline, but i'm not sure how precise the time tracking itself is. The collected data can be summarized on a project/branch level, which makes it suitable for hour reports. A first attempt: https://github.com/bitstillery/wakamonth