Gå til hovedinnhold

Veikart

Dette veikartet beskriver den aktive produktretningen. Det erstatter den eldre faselisten som ble laget før leverandørsynkronisering, oppgaveblokker, buckets, innstillinger og kalenderrefaktoreringer.

Nåværende produktform

Dainvo er en lokalt først skrivebordsbasert kalenderarbeidsflate med:

  • lokale kalendere og lokal CRUD for hendelser
  • Google-, Outlook-, Apple Calendar- og generiske CalDAV-flyter for synkronisering og endringer
  • grunnleggende utvidelse av gjentakelser
  • ICS-import og -eksport
  • lokale, Todoist-, Microsoft To Do-, Google Tasks- og TickTick-overordnede oppgaver
  • oppgaveblokker som kalenderbaserte arbeidsøkter
  • buckets som kalenderbaserte tidsblokker som kan inneholde oppgaver
  • innstillinger for kalender, oppgaver, utseende, kontoer, påminnelser, snarveier og synkronisering
  • støtte for nettmøter med Microsoft Teams, Google Meet, Zoom og Webex
  • påminnelser i main process og trygge grenser for leverandører og token

Projects vises ikke i den aktive appen. Repositoryet har fortsatt prosjekttabeller, IPC-navn og kompatibilitetstjenester fordi buckets opprinnelig delte dette navnerommet og fremtidige Projects kan komme tilbake. Behandle disse navnene som kompatibilitetsdetaljer med mindre et senere prosjekt eksplisitt aktiverer Projects igjen.

Kortsiktig stabilitetsarbeid

  • Fortsett å redusere CalendarPage.tsx ved å trekke ut fokuserte mutation hooks og renderingskomponenter.
  • Hold kalender-, oppgave-, leverandør-, bucket-, konto- og innstillingsadferd bak eksisterende typede preload-API-er.
  • Hold lasting av synlig kalenderområde avgrenset for hendelser, oppgaver og buckets.
  • Fortsett å stramme inn oppstart, migrering, synkronisering og databasestenging.
  • Legg til tester for uttrekkede hjelpere, validering, tjenester og repository-endringer når adferd endres.

Funksjonsretning

  • Kalender: behold FullCalendar som bare UI, samtidig som app-eid verktøylinje, sidefelt, kompakte popupvinduer, kontekstmenyer, detaljpanel og modalvinduer bevares.
  • Oppgaver: hold overordnede oppgaver adskilt fra oppgaveblokker; oppgaveblokker forblir lokale planleggingsposter.
  • Oppgaveleverandører: behold leverandørprosjekter og lister som leverandørmetadata for synkronisering, oppretter og sidefeltfiltrering. Todoist-prosjektspeiling inn i Dainvo Projects er kun fremtidig.
  • Buckets: hold buckets uavhengige av Projects og render dem som kind: 'bucket'-kalenderelementer.
  • Innstillinger: utvid eksisterende DaisyUI-innstillingsdeler og typet preferanselagring i stedet for å legge til ad hoc-kontroller.
  • Dokumenter og Projects: holdes som fremtidig planlegging med mindre de eksplisitt scopes.

Utgivelseskvalitet

  • Hold pnpm lint, pnpm typecheck, pnpm test og pnpm build grønne.
  • Hold leverandørtester mockede; automatiserte tester må ikke kalle live Google-, Microsoft-, Apple Calendar-, CalDAV-, Todoist-, TickTick-, Zoom-, Webex-, Supabase- eller Stripe-tjenester.
  • Hold OAuth-token, databasebaner, leverandørpayloads og rå synkroniseringsdata ute av renderer og logger.
  • Legg til notater for pakking, signering/notarization og release-QA før en stabil skrivebordsutgivelse.