2 ~/work

Apps, plugins, libraries and client sites. Most of the code is on GitHub.

apps, plugins & tools

~/code/PinholeAI App
Pinhole's Create tab with a prompt for an alpine lake at dawn and the generated image beside it

Pinhole

A private AI image generator that runs on your own computer. Pick a model, type, Generate.

  • Rust
  • Tauri 2
  • React 19
  • TypeScript
~/code/omajuke Omarchy plugin
OmaJuke's panel open in the Omarchy bar showing YouTube search results and a playing track

OmaJuke

YouTube in the Omarchy bar. Search and play through mpv — no browser, no account.

  • QML
  • Quickshell
  • JavaScript
  • mpv
~/code/omalint Omarchy plugin

OmaLint

A health check for your Omarchy shell plugins and bar setup.

  • Python
  • QML
  • Hyprland
~/code/omawrapped Omarchy plugin
A sample OmaWrapped card in the Matte Black theme with screen time, top apps and busiest hours

OmaWrapped

Your week on Omarchy as a shareable card — and nothing ever leaves your machine.

  • Python
  • QML
  • JavaScript
  • SVG
~/code/stable-diffusion.cpp Fork

stable-diffusion.cpp

A fork that ships Linux CUDA builds and locks down the server — Pinhole's engine.

  • C++
  • CUDA
  • Vulkan
  • GitHub Actions
~/code/sudoku Library

Sudoku

100% hand-written · no LLMs

A Go library that solves Sudoku the way people do — and brute-forces the rest in a millisecond.

  • Go
~/code/rgbtray Tool

rgbtray

One static colour on every RGB device, from the system tray.

  • Python
  • GTK 3
  • OpenRGB SDK
~/code/otptray Tool

otptray

Two-factor codes in the GNOME tray. Click to copy.

  • Python
  • GTK
  • libsecret
  • zxing-cpp

client websites

~/sites/jelena.rajkovic.coach Client site
The homepage of jelena.rajkovic.coach, with a deep teal hero and a portrait of Jelena holding a notebook

Jelena Rajković

A bilingual site for a career-change mentor — one she edits herself.

  • Next.js 16
  • Payload CMS 3
  • PostgreSQL
  • Docker
~/sites/zilet.me Client site
The Žilet homepage with its serif wordmark, section navigation and a featured music article and poem

Žilet

A literary magazine with a custom editorial desk, built for poets.

  • Next.js 16
  • React 19
  • TypeScript
  • PostgreSQL
~/sites/gipsproject.me Client site
The GIPS PROJECT homepage with the headline “Čiste linije. Precizan rad. Vaš prostor.” and a photo of curved drywall

GIPS PROJECT

Clean lines, precise work — a fast static site for a drywall company in Podgorica.

  • Tailwind 4
  • Node build
  • Sharp
  • GitHub Actions

archive · learning projects

year project what stack
2025 Workout API Laravel 12 REST API with OpenAPI docs, written entirely by AI agents for an ICT Cortex course PHP · Laravel
2025 Shell The CodeCrafters “build your own shell” challenge Go
2025 PHPFramework MVC framework from scratch: kernel, middleware, Twig views PHP
2023 Cinemanija Bachelor thesis: cinema booking with seat picker, 4 roles, 30+ use cases TALL stack
2023 DIContainer A small dependency-injection container with autowiring PHP
2023 Hotel Booking app with 2 roles and 20 use cases C# · ASP.NET Core
2022 Book-Shop Web store with cart, CMS and PDF reports Laravel · Livewire
2022 Catering Service Java web app for a fictional caterer, 3 roles Java
2021 Discord Bot Game scheduling and a music player for a gaming community C# · Discord.Net
esc
↑↓ move ↵ open t next theme 1–5 workspaces jk windows