Where did you put the drill?
Apotheke catalogues your things: a photo, a place, found in seconds.
What does it keep track of?
- PhotosUp to 12 photos per item by default (configurable from 1 to 50), cropped and rotated.
- PlacesNested locations and categories.
- SearchInstant and typo-tolerant, Greek included.
- LendingWho has it, and since when.
- StocktakesWalk a room, tick off what is there.
- AlertsLow stock, expiry and warranty dates.
- QR labelsPrint a label, scan the box.
- Import and exportCSV, plus backups across SQLite and PostgreSQL.
- Users and rolesOptional accounts and permissions.
- Phone firstOne-handed, in light or dark.
What does it look like?



Does it need AI?
No. AI autofill is optional and off by default; while it is off, Apotheke never contacts the service.
Turned on, it suggests a name, category and tags from a photo when someone taps Analyze.
Where does my data go?
- Onto your serverYour own database and folder.
- Private by defaultBound to 127.0.0.1, with an admin password.
- Secrets encryptedSet APP_KEY to encrypt them at rest.
- Found a security issue?Report it privately on GitHub
Where are the docs?
Anything else?
- Is it free?
- Yes, MIT licensed.
- What does it run on?
- Docker on any small Linux server.
- SQLite or PostgreSQL?
- Either; backups move between them.
- Works offline on a LAN?
- Yes. Only AI autofill calls out.
- What does autofill need?
- An autofill service, set in the Control Panel.
- How do I back up?
- Download a backup zip; restore it anywhere.
- Upgrading from 2.x?
- Follow Upgrading to 3.0; data stays.
- Is there a hosted version?
- No public one. Your image ships the same app.
- Where do I get help?
- Open an issue on GitHub.
How do I install it?
Four lines on any Docker host, then open port 9091.
git clone https://github.com/thordin9/apotheke.git
cd apotheke
echo 'APP_PASSWORD=change-me' > .env
docker compose up -d --build
