Edit: Da blir det klonede instanser av én rigg med blandede tenants. Første milepæl er publisering av kampanje. Før det skal tre sites opp: OF Promo, Siv Nancy, og Firstbird Promo til portfolio.
Lurte på om jeg skal ha bare én rigg som jeg utvikler i ett og bare ett gitrepo. Så blir multitenant-0, multitenant-1 og multitenant-2 instanser av den med ulike bruksområder. Da har alle instanser alle collections, endpoints, plugins osv. men de bruker ulike partisjoner.
Kan jeg slippe unna med å deploye alt fra ett og samme repo? Si de ligger på egne branches som trigger deploys, så utvikler jeg på main og merger inn fortløpende. Da blir det mulig å holde alle up-to-date.
Men hvilken gevinst har det å partisjonere instansene da, kan jeg ikke bare bygge ut riggen og plusse på tenants etter hvert som de dukker opp? Mer fleksibilitet til å utvikle riggen etter behov?
Tanken var at poenget med multitenancy var å la tenants dele funksjonalitet og også unngå å tilpasse adminpanelet for dem. Men lignende tenants vil fortsatt ha ulike behov til adminpanelet, så den jobben må gjøres uansett. Da opprettes nye instanser etter hvert som de gamle begynner å fylle seg opp med data. Og det blir lett å utvide tenants med flere features.
Angående multitenant-0 så var den tenkt uten adminpanel eller noe funksjonalitet, kun enkle “visittkort på nett”. Men da trenger jeg bare en Next app og ingen backend.
Da gjenstår bare å se hvilke features skal på plass først.
Kan man gruppere features etter vanlige usecases? Typ:
Multitenant-0: Visittkort-på-nett
Adminpanel: Nei
Auth: Nei
Features: Kontaktskjema
Pris: 15
Disse er ikke tenants men Next-apper på kun Vercel.
Usecases er bedrifter som trenger et SEO-optimalisert webnærvær der det informeres om tjenestene de tilbyr, hvorfor du bør velge dem og hvordan man kommer i kontakt. For SEO skal de være SSG og optimalisert for SEO for øvrig, kanskje inkludert forvaltning av Google Bedrift-oppføring, hjelp med innsamling av reviews osv. Prototyper fra ekstern designer.
Multitenant-X: Auth uten adminpanel
Adminpanel: Nei
Auth: Ja (inkl. Payload)
Features: Edit-in-place, Auth
Pris: Ca. 20
Spesielt setup for edit-in-place uten adminpanel.
Usecase er websider med innhold som endrer seg eller oppdaterer seg ofte, men strukturen (sider, layout) aldri endrer seg, f. eks. bedrifter som legger til eller endrer tjenestene sine ofte.
Redigerbart innhold bør være variert for å fange maks nisje-usecases: Richtekst-editor til HTML (vanlig tekst med utvidet støtte), bilde og bildegalleri eller -karusell, accordion, kodeblokk, sitatblokk, osv. Det er kult fordi implisitt kommer alltid editerbare strukturer inkl. innhold i sidens design. (Selve editmodus kan være superenkelt.)
Typer redigerbart innhold kan være Payload Blocks som lages støtte for i frontend. Merk at admin må kunne legge til og fjerne blocks i frontend.
Det blir som en WordPress-side for basic behov, men med bedre brukbarhet og design.
Ved login blir admin redirectet til frontend. De er logget inn i Payload, uten adminpanel men kan nå åpne innhold for redigering i frontend. Endringene blir committet til collections i Payload.
Vil unngå en første-iterasjon der admin må logge inn i adminpanelet for å oppdatere innhold der, det er dårlig brukbarhet.
Krever ikke admin-branding siden adminpanelet ikke er i bruk, men edit-in-place krever at Auth er implementert, og det krever mye utvikling av frontend for å støtte oppretting, endring og fjerning av ulike typer blocks og committing av ulike typer endringer til Payload.
Multitenant-1
1 collection, kun standardfeatures.
Du kan logge inn og oppdatere én toppcollection (f. eks. Events). Du får en frontend med et tilpasset view av dataene (f. eks. en liste over foredrag, konsertplan, turneplan).
Login: Ja, med adminpanel
Collections: 1 (inkl. view)
Features: Ingen tilpassede features
Pris: Ca. 25
Multitenant-2
Collections med booking (inkl. betaling) og aktivitetsrapporter.
Du kan logge inn og oppdatere flere collections (f. eks. Courses og Events). Du får visning av dataene i frontend, inkl. funksjonalitet for påmelding og betaling. Du får aktivitetsrapporter i adminpanelet.
Login: Ja, med adminpanel
Features: Påmelding/betaling, aktivitetsrapporter
Pris: Ca. 35
Tilpassede features
- Booking: “Å kjøpe plass på et arrangement. Når arrangementet er over blir plassen borte. For å kjøpe ny plass må nytt arrangement opprettes“
- Reservation: “Å reservere en ressurs i et tidsrom. Etter tidsrommet blir ressursen tilgjengelig for reservering igjen.”
- Contract: Arbeidsflyt for utarbeidelse av avtaletekst med maltekster og -variabler, signatur med “magic link” el, PDF på epost…
- Payment: Integrering med API for betaling med Vipps, Paypal, Stripe, krypto mm, registrering av påmelding…
- Activity Report: Tabellvisning av historikk/aktivitet i forbindelse med booking, reservation mm, inkl. mulighet for eksport til fil eller Google Drive…
Standardfeatures
Ikke-tilpassede features som bør tilbys på alle produkter:
- Kontaktskjema
- Nyhetsbrev
- Blogg
- Admin: Branding
- Admin: Pluss-add
Collections
Collections er samlinger av dokumenter. De har en viss shape gitt ved et konfigurert skjema i Payload. Features kan interface trygt med dem via typer.
Toppcollection er collections der andre, ikke-trivielle collections er nøstet inn. F. eks. et dokument av Courses gir typisk ikke mening hvis den mangler en liste med dokumenter av Events (mens en collection Addresses for å angi lokasjon er heller triviell.)