Lalabase
Tickets, Doku, Zeiterfassung und Kundengespräche an einem Ort, durchsuchbar per KI. Für Softwarefirmen mit Kundenprojekten. Open Source: auf deinem eigenen Server oder in unserer Cloud in Deutschland.
Translation pending
Gestió de substitucions docents
Translation pending
BusinessTypeScript · PythonGitHub @cescgranadaOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Aplicació web per gestionar les substitucions docents, absències i sortides escolars de l'Escola Cooperativa Nou Patufet (Barcelona). Copia .env.example a .env.local i omple els valors: Les notificacions per correu funcionen sense RESEND_API_KEY (es registra un avís a la consola però no bloqueja cap operació). Executa els fitxers SQL en ordre al SQL Editor del Supabase Dashboard: Col·loca el fitxer horaris_normalitzats.json (684 entrades) a la carpeta data/ i executa: Necessita NEXT_PUBLIC_SUPABASE_URL i SUPABASE_SERVICE_ROLE_KEY al .env.local.Read the full README ↗
Aplicació web per gestionar les substitucions docents, absències i sortides escolars de l'Escola Cooperativa Nou Patufet (Barcelona).
Stack: Next.js 16 · TypeScript · Tailwind CSS v4 · Supabase · Vercel
Copia .env.example a .env.local i omple els valors:
cp .env.example .env.local
| Variable | On trobar-la |
|---|---|
NEXT_PUBLIC_SUPABASE_URL | Supabase Dashboard → Settings → API |
NEXT_PUBLIC_SUPABASE_ANON_KEY | Supabase Dashboard → Settings → API |
SUPABASE_SERVICE_ROLE_KEY | Supabase Dashboard → Settings → API |
RESEND_API_KEY | resend.com (pla gratuït: 3.000 emails/mes) |
RESEND_FROM | SubsCoop <[email protected]> (cal verificar el domini a Resend) |
Les notificacions per correu funcionen sense
RESEND_API_KEY(es registra un avís a la consola però no bloqueja cap operació).
Executa els fitxers SQL en ordre al SQL Editor del Supabase Dashboard:
supabase/migrations/001_schema.sql ← taules + índexs
supabase/migrations/002_seeds.sql ← etapes, grups, 23 docents, rols
supabase/migrations/003_rls.sql ← Row Level Security
Col·loca el fitxer horaris_normalitzats.json (684 entrades) a la carpeta data/ i executa:
npm run load-horaris
Necessita
NEXT_PUBLIC_SUPABASE_URLiSUPABASE_SERVICE_ROLE_KEYal.env.local.
Al Supabase Dashboard → Authentication → Providers → Google:
https://el-teu-domini.vercel.app/auth/callbackhttp://localhost:3000/auth/callbacknpm install
npm run dev
Obre http://localhost:3000.
git push origin main
A Vercel:
.env.local)src/
app/
(app)/ ← rutes protegides (requereixen login)
page.tsx ← dashboard principal
absencies/ ← comunicar i gestionar absències
substitucions/ ← confirmar i veure substitucions
sortides/ ← proposar i aprovar sortides
horari/ ← horari setmanal personal
perfil/ ← dades i estadístiques del docent
login/ ← pàgina de login Google OAuth
auth/ ← callback i signout
lib/
supabase/ ← clients server-side i client-side
actions/ ← Server Actions (absències, substitucions, sortides)
email.ts ← notificacions via Resend
types.ts ← tipus TypeScript del model de dades
components/
layout/ ← Sidebar (desktop) + BottomNav (mòbil)
supabase/
migrations/ ← SQL: schema, seeds, RLS
scripts/
load-horaris.ts ← carrega horaris_normalitzats.json
data/
horaris_normalitzats.json ← (no inclòs al repo, afegir manualment)
| Rol | Permisos |
|---|---|
docent | Comunicar absències pròpies, veure horari i substitucions, proposar sortides |
coordinacio_etapa | + Aprovar/confirmar substitucions de la seva etapa, aprovar sortides |
cap_personal | + Aprovar dies personals |
sotsdirector / director | Accés complet |