Preverjeni temelji.
Neodvisni produkti.

Programska tovarna za .NET SaaS: skupni gradniki z označenimi različicami za večnajemniško delovanje, identiteto, obračunavanje in obratovanje ter produkti, ki izhajajo vsak v svojem ritmu. Kar se nauči en produkt, lahko prevzamejo vsi. Spodaj je dejanski tloris tovarne, na kateri temeljijo moji produkti.

Produkti v uporabi · v razvoju
3 · 2
Skupni paketi z isto različico
19
Od prve potrditve do nameščenega razvojnega okolja
~2 dni
Obvezne skupne nadgradnje
0

Izometrični tloris programske tovarne MicroSaaS: gradniki, skupna infrastruktura, ljudje, življenjski cikel produkta in produkti na rampah

Tapnite blok ali ga izberite spodaj.

Kako tovarna deluje

Štiri pravila, vsako preverljivo.

Tovarna je le tako dobra kot pravila, ki skrbijo, da ostane verodostojna. Veljajo za vsak produkt in vsak gradnik.

01

Skupno je samo tisto, kar se ne sme razlikovati

Varnost, pravne zahteve, obratovanje in vmesniki so v skupnih gradnikih. Videz, uporabniško izkušnjo in domensko logiko vsak produkt prekopira in nato razvija sam.

02

Natančno določene različice

Vsak paket NuGet in vsak gradnik je pripet na natančno določeno različico. Vsaka izdaja navaja, kaj mora produkt storiti za nadgradnjo, in vsak produkt se nadgradi, ko njegov cevovod CI uspešno prestane vse preverbe.

03

Žetev namesto načrtovanja na zalogo

Gradnik nastane iz kode, ki že teče v produktu: najprej jo zvesto prenesemo in dokažemo, da deluje enako, šele nato jo počistimo.

04

Ljudje odločajo, stroji preverjajo

O obsegu, zagonu v produkcijo in ukinitvi odloča človek. Gradnje, testi, odstopanja in obnove iz varnostnih kopij se preverjajo samodejno in z dokazi.

Gradniki

Vse, kar potrebujete pred prvo lastno funkcijo.

Modularni paketi za .NET, izdani skupaj pod isto različico, ter trije gradniki z lastnimi različicami: za identiteto, oblikovni sistem in CI/CD. Vsak ima dnevnik sprememb, ki natančno navaja, kaj od vas zahteva nadgradnja.

Večnajemniška zasnova

Organizacija kot najemnik, preverjanje članstva in nadzor življenjskega cikla, ki zapre dostop začasno onemogočenim ali izbrisanim najemnikom.

Uvajanje in organizacije

Pot od prve prijave do delujoče organizacije s člani in povabili ter kljuka (hook), v kateri produkt pred ustvarjanjem povabila preveri kvoto članov.

Onboarding.*Organizations.*
Kako deluje: Uvajanje in organizacije

Pravice in merjenje porabe

Stikala funkcij, kvote in merjenje porabe za vsako organizacijo; privzeto je vse zaprto.

Obračunavanje

Stripe in Lemon Squeezy za enotnim vmesnikom, z idempotentno obdelavo webhookov, ki preskoči zastarele dogodke.

Billing.Providers.*
Kako deluje: Obračunavanje

Skrbniški API

Sistemska opravila nad vsemi organizacijami za enim preverjanjem; zavrnitve so problemi po RFC 9457 (problem details) s strojno berljivimi kodami.

Gradnik za identiteto

Osnovna slika Keycloak, pripeta na točen povzetek (digest), samodejna priprava realma in izdaja žetona šele, ko uporabnik sprejme pogoje uporabe.

Gradnik za oblikovni sistem

Jedro uporabniškega vmesnika kot paket npm: oblikovni žetoni, komponente React in pravila linterja. Produkt nastavi le dvanajst barvnih vlog svoje znamke; gradnik preveri kontrast desetih parov barv in poskrbi, da se interaktivne barve ločijo od barv stanj.

Gradnik za CI/CD

Sedem komponent CI/CD za GitLab in slika vsebnika ops: testi s pregledom ranljivosti v odvisnostih, pregled skrivnosti, gradnja slik, namestitev, ki najprej naredi varnostno kopijo baze in se konča s preverjanjem zdravja, ter obnovitveni test v začasnem vsebniku.

deployrestore-test
Kako deluje: Gradnik za CI/CD

Pogosta vprašanja

Kratki odgovori.

Kaj je MicroSaaS Toolkit?
Programska tovarna za .NET SaaS. Sestavljajo jo skupni gradniki z označenimi različicami (19 paketov NuGet za večnajemniško zasnovo, organizacije in povabila, uvajanje, pravice do funkcij, merjenje porabe, obračunavanje in skrbniški API ter gradnik za identiteto na osnovi Keycloaka, gradnik za oblikovni sistem in gradnik za CI/CD) in pravila, po katerih na njih deluje več neodvisnih produktov.
Kateri produkti so zgrajeni na njej?
V uporabi so trije: Gostly, sporočanje z gosti za ponudnike kratkoročnih najemov; MojRazpis, obveščanje o slovenskih javnih razpisih; in SnapMind, osebni spomin z umetno inteligenco za ideje, povezave in posnetke zaslona. V razvoju sta še Reputo in Leadgener.
Kako se produkti nadgradijo, ko se gradnik spremeni?
Vsak produkt pripne natančno določeno različico, vsaka izdaja pa navaja, kaj mora produkt storiti za nadgradnjo. Produkt nadgradnjo uvede, ko njegov cevovod CI uspešno prestane vse preverbe, zato se produktom ni treba nadgrajevati hkrati. Register produktov spremlja vsakega, dokler nova različica ne teče v produkciji.
Koliko časa traja zagon novega produkta?
Približno dva dni od prve potrditve do nameščenega razvojnega okolja s prijavo: Leadgener je potreboval 45 ur, od tega je ročno opravilo za namestitev 13,5 ure čakalo čez noč. Nov repozitorij prevzame ogrodje, cevovod in namestitev referenčnega produkta ter pripne skupne gradnike.
Katere plačilne ponudnike podpira?
Stripe in Lemon Squeezy, za enotnim vmesnikom, z idempotentno obdelavo webhookov, ki preskoči zastarele dogodke.
Ali vas lahko najamem?
Da. Ponujam arhitekturne presoje (najemniki, ločevanje podatkov, poti nadgradnje), razvoj modulov po meri z enako disciplino izdajanja ter delo na infrastrukturi in CI/CD. Pišite na jure.hrastnik@gmail.com.

Svetovanje

Sodelujte z arhitektom, ki je zasnoval tovarno.

Ekipam pomagam uvesti toolkit, zasnovati arhitekturo za njihovo domeno ali zgraditi prvo različico produkta na enakih temeljih.

  • Arhitekturna presoja
    Najemniki, ločevanje podatkov, poti nadgradnje.
  • Razvoj modulov po meri
    Z enako disciplino izdajanja.
  • Infrastruktura in CI/CD
    Cevovodi, namestitve, nadzor, varnostne kopije.
Pišite mi
Črno-bel portret s prekrižanimi rokami
Arhitekt in lastnikJure Hrastnik