Disctopia
Pregled slučaja
Jedinstveni API sloj koji povezuje glazbenu streaming platformu i njezinu marketinšku web stranicu u jedan neprimjetan ekosustav — zajednička autentikacija, zajedničko pozadinsko upravljanje, centralizirana logika sadržaja.
Cilj: Glavni cilj bio je izgraditi jedinstveni API sloj koji koristi Auth0 za autentikaciju na obje platforme, omogućujući korisnicima prijavu na web stranicu koristeći iste vjerodajnice kao i streaming aplikaciju. Ovaj jedinstveni API upravlja pregledom vijesti, komentarima i lajkovima — održavajući korisničke podatke konzistentnima između oba proizvoda u svakom trenutku.
Dodatno, trebali smo fleksibilan sustav obavijesti o događajima koji može prikazivati nadolazeće događaje na obje platforme — u potpunosti kontroliran iz CMS-a bez uključenosti programera.
Ključne informacije o projektu
Industrije
Glazbeni streaming, ekonomija kreatora, digitalni mediji, unovčavanje umjetnika
Usluge
API arhitektura, integracija autentikacije, full-stack razvoj, prilagodba CMS-a
Rješenja
Jedinstveni API sloj, Auth0 SSO, CMS-u vođene obavijesti o događajima, zajednički komentari i lajkovi
Tehnologije
.NET, Umbraco, JavaScript, React, Auth0, Umbraco Cloud, Mailchimp, HubSpot
Izazovi
Proces
Koristi se fazni pristup implementaciji, počevši od dizajna i postavljanja osnovne API arhitekture i sustava autentikacije, te postupnim napredovanjem kroz sljedeće faze, sve do potpuno integriranog CMS-vođenog sloja obavijesti koji ujedinjuje isporuku sadržaja i ponašanje sustava na svim platformama.
Jedinstvena API arhitektura
Dizajniran i izgrađen jedinstveni API koji koriste i marketinška web stranica i streaming aplikacija. Svi podaci teku kroz jedan backend — nema dupliciranja ili preslikavanja.
Integracija Auth0
Integrirali smo Auth0 kao zajedničkog pružatelja autentikacije za obje platforme. Korisnici se prijavljuju jednom i prelaze između weba i aplikacije bez ponovne autentikacije. Upravljanje tokenima i stanje sesije se sigurno rukuje preko domena.
Komentari, lajkovi i logika vijesti
Implementirali komentare i funkcionalnost lajkanja putem centralnog API-ja. Web stranica se povezuje na isti backend kao streaming aplikacija, osiguravajući da su sve društvene interakcije objedinjene i podaci konzistentni.
Sustav obavijesti o događajima
Izradili smo prilagođeni skript koji dohvaća podatke o događajima iz Umbraco CMS-a i prikazuje dinamični banner na odabranoj platformi koju urednik odabere. Marketing može objaviti događaje na webu, u aplikaciji ili na obje — bez uključivanja programera.
Rješenja
Ključne značajke rješenja
Jedinstveni API sloj — Jedan API pokreće web stranicu i streaming aplikaciju. Svi podaci (korisnici, vijesti, komentari, lajkovi, događaji) prolaze kroz jedan izvor istine, uklanjajući dupliciranje i probleme sa sinkronizacijom.
Zajednička Auth0 autentikacija — Auth0 je zajednički pružatelj identiteta. Korisnici se prijave jednom; iste vjerodajnice vrijede na svim platformama s konzistentnim sesijama i tokenima.
Komentari i lajkovi putem centralnog API-ja — Društvene interakcije upravljane putem jedinstvenog API-ja, što održava podatke o angažmanu konzistentnima preko platformi.
CMS-vođeni bannere za obavijesti o događajima — Skripta dohvaća podatke o događajima iz Umbraco CMS-a i prikazuje bannere. Urednici postavljaju sadržaj i lokaciju (web, aplikacija, oboje) bez uključivanja programera.
Integracije Mailchimp i HubSpot — Integrirano s Mailchimpom i HubSpotom tako da timovi upravljaju marketingom i CRM-om putem poznatih alata, a podaci teku kroz centralni backend.
Rezultati u brojkama
100%
Svi korisnici se autentificiraju putem Auth0 na obje platforme s jednim skupom vjerodajnica. Nema zasebnih računa, nema poteškoća pri prelasku između web stranice i streaming aplikacije.
3x
Urednici objavljuju bannere događaja na bilo kojoj platformi u nekoliko minuta putem Umbraco-a — ono što je prethodno zahtijevalo zahtjev programeru i implementaciju sada traje tri klika u backofficeu.
2x
Centralizacija autentifikacije, podataka i logike u jedan API smanjuje održavanje. Sustav je predvidiv — problemi su izolirani i rješavaju se na jednom mjestu umjesto na dva.