Full-stack monorepo for nettsiden til echo – Linjeforeningen for informatikk ved Universitetet i Bergen.
Utviklet av frivillige informatikkstudenter fra undergruppen echo Webkom.
Har du ingen tilbakemeldinger til nettsiden? Vi jobber hele tiden med å forbedre den, og setter stor pris på om du sier ifra om noe er feil, eller du har idéer til nye endringer!
Send oss gjerne en tilbakemelding via skjemaet på https://echo.uib.no/tilbakemelding, eller send oss en mail på webkom-styret@echo.uib.no.
Denne full-stack monorepo-en består av flere applikasjoner og delte pakker:
- web - Hovednettsiden bygget med Next.js 15, React 19, Tailwind CSS og NextAuth.js
- api - Backend API bygget med Hono.js, Node.js og esbuild
- cms - Sanity Studio for innholdsadministrasjon
- uno - Go backend for beta-applikasjonen
- db - Databaseskjemaer, migrasjoner og verktøy med Drizzle ORM og PostgreSQL
- sanity - Delte Sanity-spørringer og verktøy
- lib - Felles verktøy og forretningslogikk
- email - E-postmaler og sending-funksjonalitet
- seeder - Database seeding-verktøy
- config/eslint - Delte ESLint-konfigurasjoner
- axis-client - Klientbibliotek for Axis-integrasjon
- End-to-end tester med Playwright for både API og web-applikasjoner
-
Før du starter må du passe på at det følgende er installert:
-
Kopier
.env.exampletil.envog fyll inn nødvendige verdier.cp .env.example .env
Kjør
cenv checkfor å skjekke om alt er gjort riktig -
Last ned "dependencies"
pnpm install
-
Sette opp databasen
pnpm db:setup
-
Synce og seede databasen
pnpm seed
-
Start utviklingsmiljøet
pnpm dev
Sidene som starter er:
- http://localhost:3000 for nettsiden
- http://localhost:3333 for Sanity Studio
- http://localhost:8000 for API-et våres
- https://local.drizzle.studio for Drizzle Studio
NB: "Backenden" til Drizzle vil kjøre på http://localhost:4983.
Følg først steg 1-5 fra "Hvordan kjøre?" for å sette opp det grunnleggende miljøet.
Start beta utviklingsmiljøet
pnpm dev:betaSidene som starter er:
- http://localhost:8002 for beta API-et (Go)
- nano - Nano-services for siden.
- cenv - Environment fil skjekker
- verv - Nettsiden for verving av nye studenter i undergrupper
- screen - Nettsiden for skjermen på lesesalen

