Tin Rabzelj
banner
rabzelj.com
Tin Rabzelj
@rabzelj.com
Building cool things.

Rust, TS/React, AI 🚀

🧠 https://rabzelj.com/
🧑‍💻 https://github.com/tinrab
X/Twitter: https://x.com/tinrab
File uploading to S3 (Minio locally). Uploads can be resumed on browser refresh. TanStack Start, AWS sdk, and some vibe-coded UIs.
#reactjs #webdev
July 6, 2025 at 3:03 AM
I'm building a TanStack Start SaaS boilerplate for myself. It includes better-auth, Stripe integration, shadcn and other components with a Storybook kitchen-sink, emails (react-email), local Docker dev environment, and other useful stuff.
#reactjs #typescript
June 23, 2025 at 1:57 AM
A small CLI tool to download and transcribe videos using yt-dlp and OpenAI's Whisper. It is runnable with `uvx`.
GitHub: github.com/tinrab/yt-tr....

I have a bunch of scrapers lying around and have thought about combining them into something useful. Maybe I'll get to that at some point.
June 17, 2025 at 4:38 PM
My mood.
June 8, 2025 at 9:21 AM
I've built a tool that lets you talk with databases using AI.
It works as a CLI tool or a MCP server on top of MySQL or Postgres. The OpenRouter & MCP integration is a bit unreliable, so it might not work as expected with some models.

GitHub: github.com/tinrab/airy
#rustlang
June 7, 2025 at 11:59 AM
I've been writing a small CLI AI agent thing in Rust, and I like how you can define tools via macros. I am tempted to write a crate that combines this with OpenRouter and only leaves you to define the tools.
#rustlang
June 4, 2025 at 10:50 AM
If you want to write zod-validated handlebars helpers in TypeScript, I have a package for that: github.com/tinrab/temel.... It works for both params and hashes, and it also includes some common helpers.
June 1, 2025 at 4:49 PM
Saving a PyTorch model to ONNX and running it. I got the basics down. Currently, I'm only bothering with CPU tensor ops, coz I haven't decided on the best way to approach GPU yet.
April 22, 2025 at 3:49 AM
The first CUDA kernel launched from Rust. Though, the API is probably far from finalized.
#rustlang
April 12, 2025 at 4:01 PM
I've been writing nicer wrappers around cuTENSOR, cuBLAS, cuDNN, and I feel cuTIRED.
April 5, 2025 at 10:45 AM
You can build a C++ project with Rust and take advantage of its ecosystem: crates, tests and criterion benchmarks...
This is an example of testing and benchmarking a CUDA kernel.
March 22, 2025 at 3:21 PM
Ubuntu shipping uutils is pretty cool, but I still prefer Arch (btw).
March 17, 2025 at 10:25 AM
My PC broke again. Time to find something to do for a few days. I think I'll read about AI, or smth.
March 11, 2025 at 5:44 PM
For fun, I've written an SVM (SVC, Support Vector Classifier) from scratch in Rust to classify spam SMS messages. Pre-processing text is simply: lowercase, split_whitespace, remove punctuation, and build bag-of-words.
5-fold CV: 98%, DS: "ucirvine/sms_spam"
March 11, 2025 at 9:13 AM
March 11, 2025 at 12:34 AM
A cool article about using Group Relative Policy Optimization (GRPO), as seen with DeepSeek-R1, to improve a base model at writing Rust code. It uses Cargo's superb error messages for reward functions with RL.
www.oxen.ai/blog/trainin...
#rustlang
Training a Rust 1.5B Coder LM with Reinforcement Learning (GRPO) | Oxen.ai
Group Relative Policy Optimization (GRPO) has proven to be a useful algorithm for training LLMs to reason and improve on benchmarks. DeepSeek-R1 showed that you can bootstrap a model through a combina...
www.oxen.ai
March 7, 2025 at 3:35 PM
For no particular reason, I switched from zsh to fish. Will see how it is. The built-in auto-suggestions and better reverse-i-search are nice.
February 27, 2025 at 10:21 PM
New blog post: Building a Real-Time Bluesky Trending Hashtag System With Arroyo, NATS, and Rust.
rabzelj.com/blog/buildin...
#rustlang
February 20, 2025 at 5:08 PM
How To Use Raylib in Rust With Your Own Bindings: rabzelj.com/blog/rust-zi....

New blog post about working with C bindings in Rust.
#rustlang #raylib
How To Use Raylib in Rust With Your Own Bindings | Tin Rabzelj
Learn how to create custom Rust bindings for Raylib and how to approach C interoperability in general.
rabzelj.com
February 14, 2025 at 10:09 PM
I had never written assembly before. Recently I played with it in Rust and came across this error. How is this even a thing? The Rust compiler is still able to surprise me.
#rustlang
February 13, 2025 at 9:26 PM
I've written my own (incomplete) libc implementation in Rust (x86_64): github.com/tinrab/rusty.... It only includes the basics, including the `_start` entry that calls the main function, so it's usable with `nostartfiles` and `nostdlib`.
This is just for fun and to practice assembly.
#rustlang
GitHub - tinrab/rusty-libc: libc implemented in Rust for fun.
libc implemented in Rust for fun. Contribute to tinrab/rusty-libc development by creating an account on GitHub.
github.com
February 12, 2025 at 1:33 PM
Bootstrapped a simple workflow engine in TypeScript with o3-mini reasoning model. Fully typed, of course. Good to see it works decently enough.
February 7, 2025 at 9:58 PM
New blog post: Introduction to Intelligent Agent Architectures.
#ai #artificialinteligence
rabzelj.com/blog/introdu...
Introduction to Intelligent Agent Architectures | Tin Rabzelj
What are intelligent agents anyway?.
rabzelj.com
February 4, 2025 at 12:17 PM
New blog post: Validate Next.js Server Actions with Zod.
rabzelj.com/blog/nextjs-...

A short post about server actions, zod, and error handling.
#reactjs #nextjs #webdev
Validate Next.js Server Actions with Zod | Tin Rabzelj
This is a simple utility I wrote to validate Next.js server actions with Zod.
rabzelj.com
January 26, 2025 at 7:05 AM
I love minimalistic web design.
This is my updated personal site. Built with #TanStack Start, #Tailwind, my MDX plugin library, and KaTeX.
January 7, 2025 at 1:20 AM