Software I've built where pharmacy knowledge is the differentiator — not side projects, but a portfolio thesis: the pharmacy degree plus code is a combination you can't hire off the shelf.

substances — product search & substitute engine

A pharmacy product catalog with a "cheaper equivalent" (tańszy zamiennik) engine: search 22,000+ products, inspect active substances, and find lower-cost substitutes the way a pharmacist reasons at the counter. Designed to slot into an e-pharmacy cart flow.

Stack: Strapi v5 (headless CMS) · PostgreSQL 16 · React + Vite · Docker Compose · GA4 + GTM event tracking incl. an A/B test
Scale: 22,763 products, 4,271 substances, 28,889 product–substance relations
Status: private repo — live demo on request

Visit substances

blodtrykk.online — patient-facing blood-pressure tool

A web service for tracking and understanding blood-pressure readings, written for Norwegian patients — health communication in plain language, built by someone who has explained hypertension medication at the counter a thousand times.

Visit blodtrykk.online

pharmacies — pharmacy sales & stock analytics

An analytics dashboard for pharmacy sales and inventory data: trends, top movers, stock health. Built from real questions a pharmacy manager asks, answered with Streamlit instead of gut feeling.

Stack: Python · pandas · Streamlit · PostgreSQL

Open live app

keyboard-interslavic — cross-platform Interslavic keyboards

A cross-platform keyboard set for the Interslavic language, available for Windows, Android, iPhone and iPad, macOS and Linux. The layouts make the standard characters č, š, ž and ě easy to type consistently across devices.

Highlights: Android swipe-typing dictionary with 253,273 inflected word forms · Windows, Android, iOS/iPadOS, macOS and Linux support

View on GitHub

pharmkit — pharmacist's toolkit

A collection of small calculation and verification tools for daily pharmacy practice — the utilities I wished I had during shifts, written in Python.

Stack: Python · Status: code on request

Want details, code or a walkthrough of any of these? Get in touch — happy to demo.