Digital versjon av helsekort for gravide brukt i Norge. Denne webappen lar gravide registrere og holde oversikt over svangerskapsdata digitalt.
- 🔐 Sikker autentisering med Supabase Auth
- 📝 Registrere svangerskapsinformasjon
- 🏥 Logg svangerskapskontroller med målinger (vekt, blodtrykk, symfyse-fundus)
- 🔬 Registrere ultralydundersøkelser
- 💉 Oversikt over blodprøver og tester
- ⏰ Påminnelser for kommende kontroller
- 📊 Dashboard med svangerskapsoversikt
- Frontend: Next.js 14, React, TypeScript, Tailwind CSS
- Backend: Supabase (PostgreSQL database + Auth)
- Deployment: Vercel
- Versjonskontroll: GitHub
- Node.js 18+ installert
- En Supabase-konto (gratis på supabase.com)
- Git installert
git clone https://github.com/toreaa/Helsekort.git
cd Helsekortnpm install- Gå til supabase.com og opprett et nytt prosjekt
- Når prosjektet er opprettet, gå til SQL Editor
- Kjør SQL-skriptet fra
supabase/migrations/001_initial_schema.sql- Dette oppretter alle tabeller og policies
- Kopier
.env.local.exampletil.env.local:
cp .env.local.example .env.local- Gå til Supabase Dashboard → Project Settings → API
- Kopier verdiene og lim inn i
.env.local:
NEXT_PUBLIC_SUPABASE_URL=din-prosjekt-url.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=din-anon-key
npm run devÅpne http://localhost:3000 i nettleseren.
-
Opprett først en bruker via signup-siden: http://localhost:3000/auth/signup
- Bruk e-post:
[email protected] - Passord:
Test123!(eller ditt eget)
- Bruk e-post:
-
Gå til Supabase Dashboard → SQL Editor
-
Kjør SQL-skriptet fra
supabase/seed/002_fake_data.sql- Dette legger til testdata for den første brukeren i systemet
Prosjektet er allerede konfigurert for Vercel deployment.
- Gå til vercel.com
- Import GitHub repository:
toreaa/Helsekort - Legg til miljøvariabler:
NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_ANON_KEY
- Deploy!
vercel --prodViktig: Hver gang du pusher til main branch på GitHub, vil Vercel automatisk deploye endringene.
Helsekort/
├── app/ # Next.js App Router
│ ├── auth/ # Autentisering (login/signup)
│ ├── dashboard/ # Dashboard og hovedfunksjoner
│ │ ├── kontroller/ # Svangerskapskontroller
│ │ ├── paapinnelser/ # Påminnelser
│ │ └── ny-graviditet/ # Opprett nytt svangerskap
│ ├── globals.css # Global CSS
│ ├── layout.tsx # Root layout
│ └── page.tsx # Hjemmeside
├── components/ # React komponenter
│ ├── auth/ # Auth-komponenter
│ └── helsekort/ # Helsekort-komponenter
├── lib/ # Konfigurasjoner
│ └── supabase.ts # Supabase client og types
├── utils/ # Hjelpefunksjoner
│ ├── auth.ts # Auth utilities
│ └── pregnancy.ts # Database queries
├── supabase/ # Database
│ ├── migrations/ # Database schema
│ └── seed/ # Testdata
└── public/ # Statiske filer
Databasen består av følgende hovedtabeller:
- profiles - Brukerprofiler
- pregnancies - Svangerskapsdata
- checkups - Svangerskapskontroller
- ultrasounds - Ultralydundersøkelser
- blood_tests - Blodprøver
- reminders - Påminnelser
- medical_conditions - Medisinske forhold
- previous_pregnancies - Tidligere graviditeter
Se supabase/migrations/001_initial_schema.sql for full dokumentasjon.
- Row Level Security (RLS) er aktivert på alle tabeller
- Brukere kan kun se og redigere sine egne data
- Autentisering håndteres av Supabase Auth
- Miljøvariabler brukes for sensitiv konfigurasjon
npm run devnpm run build
npm startnpm run lintDette er et personlig prosjekt, men du er velkommen til å foreslå forbedringer via issues eller pull requests.
Privat prosjekt - Alle rettigheter reservert.
For spørsmål, kontakt prosjekteier via GitHub.