Svi projekti

Višeplatformski VPN klijent

Klijentske aplikacije komercijalnog VPN proizvoda na pet platformi

Tehnička realizacija klijentskog dela VPN proizvoda: od izbora pristupa i arhitekture, preko razvoja, mrežne logike i integracije Xray-a, do potpisivanja koda, objavljivanja u prodavnicama i podrške nakon izdanja.

5
platformi
≈2 godine
razvoja
Produkcija
u komercijalnoj upotrebi
Kompletna
tehnička realizacija
Višeplatformski VPN klijent

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.

1

Tehnički pristup

  • Izbor osnove aplikacija
  • Arhitektura rešenja
  • Višeplatformsko jezgro sa ciljanim nativnim kodom
2

Razvoj

  • Desktop i mobilni klijenti
  • Integracija Xray-a po zahtevima klijenta
  • Složena mrežna logika i rutiranje
  • Backend i DevOps
3

Izdanja

  • Infrastruktura za build i izdanja
  • Potpisivanje koda, sertifikati, provisioning profili
  • Objavljivanje prema zahtevima svake platforme
4

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

ElectronCordovaTypeScript / JavaScriptXraySwift

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?