
Kontekst
Klijent je odlučio da pokrene sopstveni VPN proizvod. NekaSoft se uključio na startu i preuzeo tehničku realizaciju klijentskih aplikacija za Windows, macOS, Linux, Android i iOS.
Klijent je došao sa prilično jasnim poslovnim zahtevima i gotovim dizajn maketama. Izbor tehničkog pristupa, arhitekture i konkretnih alata realizacije ostao je na strani NekaSoft-a.
Za šta smo bili odgovorni
Prevodili smo poslovne zahteve u tehničko rešenje i bili odgovorni za realizaciju i izdanja aplikacija na svih pet platformi.
Tehnički pristup
- Izbor osnove aplikacija
- Arhitektura rešenja
- Višeplatformsko jezgro sa ciljanim nativnim kodom
Razvoj
- Desktop i mobilni klijenti
- Integracija Xray-a po zahtevima klijenta
- Složena mrežna logika i rutiranje
- Backend i DevOps
Izdanja
- Infrastruktura za build i izdanja
- Potpisivanje koda, sertifikati, provisioning profili
- Objavljivanje prema zahtevima svake platforme
Podrška
- Tehnička podrška nakon izdanja
- Razvoj proizvoda posle lansiranja
Rešenje
Aplikacije su napravljene na višeplatformskim tehnologijama, a glavni razvoj vođen je u JavaScript-u i TypeScript-u.
- Electron aplikacije za Windows, macOS i Linux
- Cordova aplikacije za iOS i Android
- Ciljani nativni kod, uključujući Swift na Apple platformama
- Integracija Xray-a i prilagođeno rutiranje
- Složena mrežna logika
- Pun ciklus izdanja: build, potpisivanje, sertifikati, objavljivanje
Aplikacije su isporučene kao jedinstven višeplatformski ekosistem aplikacija: Electron za desktop i Cordova za mobilne, a nativni kod dodavan je tamo gde su to zahtevale platformske integracije. Najteži deo bio je Apple ekosistem: mrežnu implementaciju, ograničenja platforme i zahteve objavljivanja trebalo je uskladiti istovremeno.
Rezultat
Klijent je dobio production-ready VPN proizvod sa aplikacijama za Windows, macOS, Linux, Android i iOS.
- Aplikacije su objavljene i stigle do stvarnih korisnika
- Postale su klijentski deo komercijalnog VPN servisa
- Klijent je mogao da pokrene, razvija i prodaje sopstveni VPN proizvod na glavnim desktop i mobilnim platformama
Rokovi
Glavni rad na projektu trajao je oko dve godine.
Nakon glavnog ciklusa razvoja proizvod je nastavio da se razvija uz sve veće učešće internog tehničkog tima klijenta. Aplikacije su i dalje u produkciji i komercijalno se koriste.
Tehnologije
Swift je korišćen za nativne integracije tamo gde višeplatformski sloj na Apple platformama nije bio dovoljan.
Treba vam jedan proizvod na desktop i mobilnim platformama odjednom, uključujući izdanja i objavljivanje u prodavnicama?