Skip to content
pinn-shostPublic

About

Self-hosted family organizer for your NAS โ€“ shared calendar, meal planning, shopping lists, tasks, finances and more. PocketBase + Docker, no cloud, no ads. ๐Ÿ‡ฌ๐Ÿ‡ง๐Ÿ‡ฉ๐Ÿ‡ช๐Ÿ‡ซ๐Ÿ‡ท๐Ÿ‡ช๐Ÿ‡ธ

Topics

Resources

Contributing

Security policy

Stars

54 stars

Watchers

2 watching

Forks

Latest commit

ย 

History

95 Commits

Folders and files

Repository files navigation

pinn. โ€“ the family organizer that lives on your own NAS

Latest release MIT license Runs on Docker PocketBase iPhone, iPad and Android Support on Ko-fi

๐Ÿ‡ฌ๐Ÿ‡ง English ยท ๐Ÿ‡ฉ๐Ÿ‡ช Deutsch ยท ๐Ÿ‡ช๐Ÿ‡ธ Espaรฑol ยท ๐Ÿ‡ซ๐Ÿ‡ท Franรงais

Screenshots ยท Features ยท Installation ยท Privacy ยท FAQ


pinn. is one app for everything that keeps a household running: the shared calendar, this week's meals, the shopping list, who takes out the bins, the pocket money and the insurance that needs cancelling in March. It runs on your own NAS with Docker and installs like a native app on every iPhone, iPad and Android phone in the family.

No cloud account. No subscription. No ads, no tracking. Your family's data never leaves your home.

Screenshots

On the iPad

Hung on the wall or lying on the kitchen table: the shared iPad shows the whole family at once.

pinn. dashboard: the family's profiles to choose from
Dashboard โ€“ everyone taps their own picture, with an optional PIN
pinn. overview on the iPad with tiles for weather, calendar, tasks and family
Overview โ€“ weather, appointments, tasks, meals and the family at a glance

On the phone

Always with you: pinn. installs on every iPhone and Android phone like a native app.

Home page with weather, today's tasks and appointments
Overview โ€“ your day at a glance
Family calendar in week view
Calendar โ€“ iCloud and Google in one view
Weekly meal plan with recipes
Meals โ€“ plan the week, shop with one tap
Shopping list sorted by shop
Lists โ€“ shopping, pantry, packing
Budget overview with spending by category
Finance โ€“ budget, savings, pocket money
Kids' page with the daily routine
Kids โ€“ a playful daily routine

What pinn. does

๐Ÿ“… Calendar iCloud and Google calendars per person, private or shared with the family. Public and school holidays, waste collection dates and birthdays from your contacts appear automatically.
๐Ÿ Meals & recipes Plan the week, then send the ingredients straight to the shopping list. Import recipes from text, PDF, photos or a link โ€“ optionally with AI. Share favourite recipes with other families on your server.
๐Ÿ›’ Lists Shopping lists per shop, a pantry that refills the list when stock runs low, packing lists from templates (holiday, hospital bag, party), gift and wish lists.
โœ… Tasks & household Tasks with push reminders, cleaning plans and bins โ€“ plus a kids' page with animated routines that only shows what fits the time of day.
๐Ÿ’ถ Finance Shared or private funds, a household budget, savings and depots with ETFs and shares, pocket money, recurring payments and contracts with cancellation reminders. Flatshares can split costs and see who owes whom.
๐Ÿ“„ Documents & vehicles Receipts and warranties, IDs with expiry reminders. Cars and bikes with inspection dates, tyre changes, fuel use and total cost.
๐Ÿก Home For tenants, owners and landlords: tenancy or purchase contract, loan, defects with photos, receipts, renovation plan, meter readings with forecast, keys, and rental income for flats, houses and garages you let out. Garden & plants with a watering plan that knows when it rained.
๐Ÿ“ Family & location Share your location right from pinn. โ€“ once or for a chosen time โ€“ and in the background via the free Traccar Client app (sends straight to pinn., no extra server). Plus a "way home" mode, an SOS alert with position and emergency numbers, emergency cards and arrival notifications for places.
๐ŸŽ’ School & daycare Per child: timetable (type it in or snap a photo โ€“ the AI fills it in), drop-off and pick-up, homework on the kids' page, parent letters with deadlines that turn into reminders, and closure days straight in the calendar.
๐Ÿพ Pets Profiles for dogs, cats, rabbits & co. with feeding times to tick off, walks, a "whose turn is it" rota, vaccinations and deworming with push reminders, weight chart, vet and emergency vet, a pet-sitter sheet to share and a printable "missing" poster.
๐ŸŒฆ๏ธ Weather & holidays Tap the weather (a tile on the phone, at the top next to date and time on iPad and computer) for 14 days with details for every day. Packing lists with destination and dates show the holiday weather โ€“ forecast or typical values โ€“ and suggest what to pack.
๐Ÿ  Smart home Start Apple Shortcuts or Home Assistant actions from a task โ€“ the robot vacuum cleans the kitchen when the chore is due.
๐ŸŽ™๏ธ Voice control "Hey Siri, pinn": add to the shopping list, read it out, create tasks and hear what's on today โ€“ also on Android.
๐Ÿ”” Notifications Personal push messages on iPhone, iPad and Android, plus a notification bell that collects every change in the family.
๐Ÿงฉ Everything else Family board with movable notes, global search, offline mode with automatic sync, dark mode, iPad dashboard with profile PINs, guest account, child lock.

pinn. speaks English, Deutsch, Franรงais and Espaรฑol, adapts currency and emergency numbers to your region, and switches between family and flatshare wording. One server can host several families, each with its own admins.

What's new in 1.61

More room on the overview

  • iPad and computer: the weather now sits at the top right next to date and time โ€“ the current weather with UV index, plus today, tomorrow and the day after. Only date and time remain to the left of it. Tapping it opens the weather view as before. This gives the calendar, meals and tasks more room.
  • iPad and computer: the planned meals on the overview are a little smaller, the picture about the size of one weather day.
  • New meal: breakfast. In the calendar a symbol now replaces โ€œLunchโ€ or โ€œDinnerโ€ in front of the meal (๐ŸŒ… breakfast, โ˜€๏ธ lunch, ๐ŸŒ™ dinner) โ€“ this saves space. The weekly preview knows breakfast too.
  • Tasks: the counter now shows completed and all displayed tasks, e.g. 3/8. On iPad and computer it sits in small type right next to the heading.
  • Calendar: โ€œ+ Add mealโ€ is now simply โ€œ+ Mealโ€, and โ€œAll dayโ€ no longer overlaps the events. All changes are translated into English, German, French and Spanish.
  • Only app files changed (index.html, js/ausblick.js, js/vorrat2.js and the language files in lang/), nothing changes on the server. Install as usual (sudo sh pinn-*/pinn-setup.sh or the update button).

What's new in 1.60

App code split, part 18 โ€“ nothing changes for you

  • For contributors: Settings โ€“ family or flatshare, family members, categories right on the pages, default view, colours, dark mode and reset โ€“ now live in their own file (pb_public/js/einstellungen.js). Nothing changes in how the app works.
  • Only app files changed (index.html and js/einstellungen.js), nothing changes on the server. Install as usual (sudo sh pinn-*/pinn-setup.sh or the update button).

How it works

flowchart LR
  subgraph Home["Your home network"]
    direction LR
    P["๐Ÿ“ฑ Phones & tablets<br/>pinn. on the home screen"] -->|HTTPS| C["Caddy<br/>certificate via DuckDNS"]
    C --> PB["PocketBase<br/>pinn. app + database"]
    PB --- T["Traccar<br/>optional, GPS trackers"]
    PB --- HA["Home Assistant<br/>optional"]
    PB --- B["Nightly backup"]
  end
  R["๐Ÿ“ฑ On the go"] -.->|"WireGuard or Tailscale VPN"| C
Loading

Everything runs as Docker containers on one machine. HTTPS works without port forwarding โ€“ the certificate is issued via a DNS check. From outside, pinn. is only reachable through your own VPN.

Requirements

  • A NAS or server with Docker and Docker Compose 2.17+ โ€“ developed on a UGREEN NAS with UGOS, runs on any Linux Docker host (amd64, arm64, armv7)
  • SSH access to it
  • Optional but recommended: a free DuckDNS subdomain for HTTPS โ€“ required for push notifications and installing pinn. as an app

Installation

  1. Download the ZIP of the latest release and unzip it.

  2. Create a folder on the NAS, e.g. /volume1/docker/Pocketbase, and put the unzipped folder (e.g. pinn-1.61.1 or pinn-main) into it as it is.

  3. Log in via SSH and run:

    cd /volume1/docker/Pocketbase && sudo sh pinn-*/pinn-setup.sh

    The script copies every file into place, downloads the libraries for PDF import and photo text recognition, and starts pinn.

  4. Open http://<NAS-IP>:8090 โ†’ Log in as main admin โ†’ password Admin โ†’ choose your own password.

  5. The setup assistant walks you through the rest โ€“ HTTPS, remote access via WireGuard or Tailscale, Google, AI, location and Home Assistant โ€“ step by step, in four languages.

  6. Open pinn. via its HTTPS address on each phone and add it to the home screen:

    • iPhone/iPad (Safari): Share โ†’ Add to Home Screen (iOS 16.4 or later for notifications)
    • Android (Chrome): Settings โ†’ Notifications โ†’ Install pinn. as an app, or Chrome menu โ‹ฎ โ†’ Install app

    Then turn on notifications on each device under Settings โ†’ Notifications โ†’ Activate on this device.

Updating: download the new ZIP, put the unzipped folder into the same folder and run sudo sh pinn-*/pinn-setup.sh again. Replaced files are kept in _alt/, your data stays untouched.

Backups run every night into ./backups and are kept for 14 days.

Privacy

pinn. was built for data you would never hand to a cloud service: bank statements, health documents, where your children are. That's why:

  • All data lives on your NAS in a single PocketBase database. There is no pinn. server and no telemetry.
  • No scripts from third-party servers. All code and libraries are served from your NAS.
  • Push notifications carry no content. Apple, Google and Mozilla only deliver an empty wake-up signal; the device then fetches the message from your NAS.
  • Passwords for iCloud and Google are stored encrypted in a locked collection.
  • Not reachable from the internet. Remote access goes through your own VPN.

pinn. only contacts outside services for features that need them:

Service Used for When
Open-Meteo Weather forecast when a home address is set
OpenStreetMap Nominatim Turning addresses into map positions when entering addresses
OpenStreetMap tiles Map background on the location page, loaded through your NAS
Google Fonts Typefaces when the app loads
OpenHolidays API Public and school holidays when a home address is set
DuckDNS HTTPS certificate and address if configured
iCloud / Google Calendars and contacts only for accounts you connect
Google Gemini Reading recipes and documents only if you add an API key
jsDelivr One-time download of pdf.js and Tesseract during installation only

FAQ

Do I need to open ports on my router?
No. The HTTPS certificate is issued via a DNS check, and remote access runs through a VPN โ€“ WireGuard on a FRITZ!Box, or Tailscale for any other router.
Does it work without a NAS?
Any always-on machine with Docker works: a mini PC, a Raspberry Pi 4/5 or a Linux server.
Is pinn. a "real" app from the App Store?
pinn. is a web app that you add to the home screen. It then opens full-screen like a native app, works offline, shows a badge with open tasks and receives push notifications โ€“ without any app store.
Can several families use one installation?
Yes. The main admin creates families, each family gets its own admins, calendars and data. Recipes can optionally be shared between families.
What about children?
Profiles with child lock only see their own tasks and can't delete or change anything. Finance, documents and vehicles stay hidden. Younger children get their own playful page with daily routines.
What does it cost?
Nothing โ€“ pinn. is free and open source under the MIT license. Optional services like the Gemini AI have free tiers.

Repository layout

The repository has the same layout as an installation on the NAS โ€“ every file lies where it ends up:

pinn/
โ”œโ”€โ”€ pb_hooks/            server: *.pb.js hooks and their helper modules (pinn-*.js, calendar-sync.js)
โ”œโ”€โ”€ pb_public/           web app served by PocketBase
โ”‚   โ”œโ”€โ”€ index.html       the app (HTML, styles and most of the code)
โ”‚   โ”œโ”€โ”€ js/              app code split out of index.html, plain <script> files without a build step
โ”‚   โ”‚                    (einstellungen.js, kalenderkonto.js, finanzen.js, kassen.js, vorrat.js, vorrat2.js, sparen.js, vertraege.js, fahrzeuge.js, zuhause.js, dokumente.js, pdflesen.js, appstart.js, pinnwand.js, listen.js, familie.js, hinweise.js, ausblick.js โ€“ ausblick.js always comes last)
โ”‚   โ”œโ”€โ”€ einrichtung.js   setup assistant ยท datenexport.js  data export
โ”‚   โ”œโ”€โ”€ lang/            translations (en, fr, es)
โ”‚   โ””โ”€โ”€ vendor/          pinn.css, pocketbase/ (pdf.js and Tesseract are downloaded by the setup)
โ”œโ”€โ”€ caddy/Caddyfile      HTTPS reverse proxy
โ”œโ”€โ”€ docker-compose.yaml  all containers
โ”œโ”€โ”€ env.txt              template for .env
โ”œโ”€โ”€ pinn-setup.sh        install & update
โ”œโ”€โ”€ pinn-wartung.sh      backups & updates (container "wartung")
โ”œโ”€โ”€ pinn-pocketbase-update.sh
โ”œโ”€โ”€ index.html           placeholder only, never installed (keeps the update button of 1.38 working)
โ””โ”€โ”€ README.md            this page ยท README.de.md ยท README.es.md ยท README.fr.md

pinn-setup.sh copies pb_hooks/, pb_public/ and caddy/Caddyfile 1:1 into the project folder; data folders (pb_data/, konfig/, backups/, caddy/data/ โ€ฆ) are never touched.

Contributing

Bug reports, ideas and translations are very welcome โ€“ see CONTRIBUTING.md. Please report security issues privately as described in SECURITY.md.

Support pinn.

pinn. is free and stays free โ€“ completely, for everyone. It's built in my spare time. If it makes your everyday life a little easier, a small contribution is very welcome, but entirely voluntary:

Ko-fi Buy Me a Coffee

A โญ helps too โ€“ it makes pinn. easier to find for other families.

Built with

PocketBase (MIT) ยท Tailwind CSS (MIT) ยท pdf.js (Apache-2.0) ยท Tesseract.js (Apache-2.0) ยท Traccar (Apache-2.0) ยท Caddy (Apache-2.0)

License

MIT โ€“ use it, change it, share it.

About

Self-hosted family organizer for your NAS โ€“ shared calendar, meal planning, shopping lists, tasks, finances and more. PocketBase + Docker, no cloud, no ads. ๐Ÿ‡ฌ๐Ÿ‡ง๐Ÿ‡ฉ๐Ÿ‡ช๐Ÿ‡ซ๐Ÿ‡ท๐Ÿ‡ช๐Ÿ‡ธ

Topics

Resources

Contributing

Security policy

Stars

54 stars

Watchers

2 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages