En komplett løsning for familier til å koordinere barnehage-henting og levering, med mobil app og web landing page.
barnehage-plan/
├── app/ # Next.js landing page
│ ├── page.tsx # Hovedside
│ └── admin/ # Admin dashboard (localhost-only)
├── apps/
│ └── mobile/ # React Native/Expo mobil app
├── lib/ # Delte utilities
└── components/ # Web komponenter
- Ukesplan for levering/henting
- Notater per dag
- Utstyrsstatus tracking
- Varslinger
- Biometrisk innlogging
- Multi-household support
- Produktinformasjon
- Offentlig tilgjengelig på Vercel
- Brukeradministrasjon
- Statistikk og oversikt
- Premium-status
- Kun tilgjengelig lokalt (blokkert i produksjon)
- Node.js 18+
- npm eller yarn
- Expo CLI (for mobil app)
- Supabase account
# Installer dependencies for web
npm install
# Installer dependencies for mobil app
cd apps/mobile
npm installOpprett .env.local i root:
# Supabase (offentlig - brukes i web og mobil)
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key
# Admin dashboard (KUN for localhost, IKKE commit til Git)
SUPABASE_SERVICE_ROLE_KEY=your_service_role_keyWeb (landing page + admin):
npm run dev
# Åpne http://localhost:3000
# Admin dashboard: http://localhost:3000/adminMobil app:
cd apps/mobile
npx expo start
# Eller kjør direkte på Android:
npx expo run:androidLocalhost-only admin panel for brukeradministrasjon.
- 📊 Statistikk (totalt brukere, hushold, barn)
- 👥 Brukeroversikt med status
- Konto-status (Opprettet/Venter)
- Onboarding-status (Fullført/Ikke fullført)
- Antall barn per hushold
- 🗑️ Slett brukere og hushold
- 📧 Send invitasjoner (TODO: implementere e-post)
- 💎 Premium-status (fremtidig funksjonalitet)
# Kun tilgjengelig lokalt
http://localhost:3000/admin
# Blokkert i produksjon (redirecter til /)- Krever
SUPABASE_SERVICE_ROLE_KEY(bypasser RLS) - Automatisk blokkert i produksjon via layout
- Server-side rendering med admin privileges
households- Husholdhousehold_members- Medlemmer i husholdchildren- Barnschedule_assignments- Ukesplan for levering/hentingday_notes- Notater per dagequipment_status- Utstyrsstatusequipment_items- Utstyrsliste
Alle tabeller bruker RLS for multi-tenancy med helper-funksjon get_my_household_ids().
# Deploy fra root directory
vercel
# Environment variables i Vercel:
NEXT_PUBLIC_SUPABASE_URL=xxx
NEXT_PUBLIC_SUPABASE_ANON_KEY=xxx
# IKKE legg til SUPABASE_SERVICE_ROLE_KEY!cd apps/mobile
# Build APK (Android)
npx expo export --platform android
cd android
./gradlew assembleRelease
# Build for iOS (krever Mac + Xcode)
npx expo run:ios --configuration ReleaseWeb:
- Next.js 15
- TypeScript
- Tailwind CSS
- Supabase (auth + database)
Mobil:
- React Native
- Expo
- TypeScript
- Supabase
- TailwindRN (twrnc)
- Expo Haptics
- Expo Local Authentication (biometri)
# Web development
npm run dev # Start Next.js dev server
npm run build # Build for production
npm run start # Start production server
# Mobil development
cd apps/mobile
npx expo start # Start Expo dev server
npx expo run:android # Run on Android
npx expo run:ios # Run on iOS
npx expo export --platform android # Export for Android buildDette er et privat prosjekt for barnehageplanlegging.
Private - All rights reserved