Din stemme i byen - En plattform for lokaldemokrati i Oslo
Pulse Oslo er en digital plattform hvor innbyggerne i Oslo kan delta i lokale avstemninger, diskutere saker og følge med på hva som skjer i byen. Appen er utviklet for å styrke lokaldemokratiet og gjøre det enklere for innbyggerne å påvirke utviklingen av Oslo.
- Delta i lokale avstemninger om temaer som påvirker byen
- Søk og filtrer avstemninger etter kategori og bydel
- Se resultater fra tidligere avstemninger
- Stem på avstemninger som er aktive
- Start og delta i diskusjoner om lokale saker
- Kommenter på diskusjoner
- Filtrer etter kategori
- Se hvem som deltar og hva som diskuteres
- Hold oversikt over dine stemmer
- Se statistikk over din deltakelse
- Rediger profilinformasjon
- Velg din bydel
- Se dine tidligere stemmer
- Se resultater fra avsluttede avstemninger
- Hold oversikt over din deltakelse
- Test din kunnskap om Oslo med interaktive quiz-spørsmål
- Legg til og les historie om gatenavn i Oslo
- Lær fun facts om byen
- Del kunnskap om Oslos historie med andre
- Opprett nye avstemninger (kun admin)
- Administrer avstemninger og resultater
- Rapporter feil eller problemer
- Foreslå nye funksjoner
- Gi generell tilbakemelding
- Automatisk feilrapportering ved kritiske feil
- Node.js (v18 eller nyere)
- npm eller yarn
- Expo CLI
- Firebase-prosjekt
- Klon repositoryet:
git clone https://github.com/kasa031/pulse-experimental.git
cd pulse-experimental- Installer avhengigheter:
npm install- Opprett lokal konfigurasjon:
- Kopier
app.json.exampletilapp.local.json - Legg til dine Firebase credentials i
app.local.json - Legg til OpenRouter API-nøkkel hvis nødvendig
- Start appen:
npm startSe Firebase Setup Guide for detaljerte instruksjoner.
- Opprett et Firebase-prosjekt på Firebase Console
- Legg til Web-app i Firebase-prosjektet
- Kopier Firebase-konfigurasjonen til
app.local.json - Opprett Firestore-database
- Sett opp Security Rules (se
docs/security/FIRESTORE_SECURITY_RULES.md) - Opprett Firestore indekser (se
docs/security/FIRESTORE_INDEXES.md) - Seed initial data med
node scripts/seedPolls.js(hvis du har service account key)
Se EmailJS Setup Guide for detaljerte instruksjoner.
- Opprett EmailJS konto på EmailJS
- Følg instruksjonene i guiden
- Legg til EmailJS nøkler i
app.local.json - For produksjon: Legg til nøkler i GitHub Secrets
pulse-experimental/
├── assets/ # Bilder og ikoner
├── src/
│ ├── constants/ # Konstantdata (farger, bydeler, osloQuiz, etc.)
│ ├── screens/ # React Native skjermer (inkl. OsloScreen)
│ ├── services/ # Firebase og API-tjenester
│ ├── components/ # Gjenbrukbare komponenter (WebNavigation, etc.)
│ ├── hooks/ # Custom hooks (useKeyboardShortcuts, etc.)
│ └── utils/ # Hjelpefunksjoner (validation, accessibility, etc.)
├── docs/ # Dokumentasjon
│ ├── guides/ # Brukerguider og instruksjoner
│ ├── setup/ # Setup-guider (Firebase, EmailJS, etc.)
│ ├── deployment/ # Deployment-guider og fikser
│ ├── security/ # Sikkerhetsguider og regler
│ ├── status/ # Prosjektstatus og TODO-lister
│ └── archive/ # Arkiverte dokumenter
├── scripts/ # Hjelpeskript
├── .github/
│ └── workflows/ # GitHub Actions for deployment
└── app.json # Expo konfigurasjon
- Deployment Guide - Hvordan deploye appen
- Firebase Setup - Firebase konfigurasjon
- EmailJS Setup - EmailJS konfigurasjon
- Security Guide - Sikkerhetsinstruksjoner
- Prosjektstatus - Nåværende status
- TODO Liste - Alle oppgaver
- Ufullstendig Kode - Rapportert ufullstendig kode
- Quick Start - Rask start-guide
- Testing Guide - Testing instruksjoner
- Brave iPhone Guide - PWA setup for iPhone
- API-nøkler lagres i
app.local.json(ikke committet) - Pre-commit hooks sjekker for sensitive data
- GitHub Secrets brukes for CI/CD
- Firestore Security Rules implementert
Appen deployes automatisk til GitHub Pages ved push til main-branchen.
- Web URL: https://kasa031.github.io/pulse-experimental/
- GitHub Actions: Automatisk build og deploy
- React Native - Cross-platform app
- Expo - Utviklings- og build-plattform
- Firebase - Backend (Authentication, Firestore)
- EmailJS - E-post sending (feilrapportering)
- React Navigation - Navigasjon
- React Native Paper - UI-komponenter
- TypeScript - Type safety
Private - All rights reserved
Prosjektet er for øyeblikket privat. Kontakt eier for mer informasjon.
- Repository: https://github.com/kasa031/pulse-experimental
- Firebase Project: pulse-oslo
Pulse Oslo - Din stemme betyr noe! 🗳️