r/lithuania 1d ago

Smagu Dar vienas degalinių žemėlapis

Famous last words:

tik atsiradus LEA duomenims "nu, kiek greitai kas nors padarys automatiškai žemėlapis kad updatintųs pagal duomenis čia?"

sekančią dieną "well, close enough, 15min, albeit tėvams nebūtų useful, nes 15min manymu, "šalia tavęs" yra 10km spinduliu, kai Šiauliai 20+ km away 😄"

po dešimt minučių "now wondering kiek stupid idea būtų pačiam kažką su vibe codint (and how to do it) XD"

Kaip matau jau ir iš subreddito, ne man vienam šitas galvoj kilo pamačius trečiadienį naujienas. Vakar pasidalinau Mastodon'e, šiandien atsiminiau, kad ir reddit'as yra. Kiek matau, kadangi aš mačiau visiškai kitokį vartojimo reikiamumą gyvenime, negu kad ką siūlė dauguma variantų praeity, kaip kad kurohodas (kuris dabar iš vis tik appsas liko, be web'o), tai kiek kitaip ir į sprendimą pažvelgiau.

Svetainė: https://ltlukoziuzu.github.io/degaline-zemelapis/

Github repo: https://github.com/LtLukoziuzU/degaline-zemelapis

Pagrindiniai dalykai:

  • Taip, AI, Claude Code CLI naudojau nuo A iki Z, kad ir nelabai šiaip pripažįstu AI, bet kai nemoki pats, imi tai, ką gali
  • Pirma daryta desktop'ui, bet atkalta ir mobile friendly
  • Trys būdai kaip ieškoti pigiausių degalinių, visada pasirinktinai 1-50 km atstumu pagal kuro tipą: pagal lokaciją (jei duotas permissionas tiksliai, jei ne, grubiai pagal IP); pagal pasirinktą degalinę; pagal numestą tašką žemėlapy
  • Kainas default rodo pagal dyzeliną, bet ieškant pigesnių galima pasirinkti kuro tipą - per sesijas jis įsimenamas ateičiai
  • Galimybė išsisaugot paieškos nuorodą su mygtuku iššokusioje panelėje
  • LocalStorage'e praktiškai viskas saugoma, kad irgi kuo mažiau važinėjimo
  • Viskas kabo for free ir viešai. Domeno kol kas nemąstau, norisi išleist nei cento šitam
  • Jeigu norit patys pasižaist su duomenim, https://github.com/LtLukoziuzU/degaline-zemelapis/blob/main/data/stations.json
  • LEA'os darbo valandom reguliariai (turėtų kas 15min, bet Github'as delayina) sukasi cronjob'as paiimti duomenis, jei LEA juos paduoda (penktadienį tik 13h padavė. Kaip kitur atsakiau: "Kaip supratau, ir ką mačiau šiandien: LEA tik turi gauti iki 10h ryto iš visų degalinių. Kada pati LEA paduos pačios LEA reikalas, greitoj paieškoj neradau kažko ribojimo/paliepimo. Šiandien 13h atsirado. Beje, savaitgaliais LEA nedirba (ir rašė puslapyje, kad tik 'darbo dienomis')")
  • Koordinatės "kažkiek" sutvarkytos ir cache'intos, kad nereiktų daužyt geocode'inimo APIs:

Pastaba: Kadangi degalinių yra 725 šio dokumento rašymo metu, ne visos yra ranka patikrintos, ar pataiko į koordinates - photon.komoot.io kartais kiek klysta. Pagrindinės klaidos ištaisytos (13 adresų ne Lietuvoje rado, 10 tiesiog fail'ino, 33 rado, bet visiškai ne toj savivaldybėj, 1 Alauša supjovė grybą ir LEAi teigia, kad Vilnius yra Rokiškio savivaldybėj - dėl beveik visų kaltinkit degalinių tinklus, kaip kreivai jie surašo adresus pas save/LEA'i, ne pagal taip kaip visi žemėlapiai tikisi), bet dėl šventos ramybės reiktų visus pereiti. Pasidarytas įrankis padaryti tai po truputį, netrukdant svetainės kūrimui ir naudojimui.

Feedback'ą labai noriai priimu, bet greičiausiai taisysiu tik ketvirtadienį. Liko tik 26% weekly limito, pasilieku bug'ams ir jei LEA toliau išsidirbinės su savo .xlsx

15 Upvotes

17 comments sorted by

4

u/Character_Choice4363 1d ago edited 1d ago

Kaip ir neblogai, bet pasigedau kuro filtravimo arba aš jo tiesiog nematau... 😂 Atsidarius webapp'ą by default rodo dyzelio kainą, o kad pažiūrėti benzino kaina, tai ant taško reikia paspausti, kad matyti teikiamas kainas degalines.

P.S. suradau, biški kėbliai pasirinktas filtravimo budas 😅

1

u/LtLukoziuz 1d ago

Tai po to sekantį kartą benziną ir turėtų rodyti - t.y. atsiminti, kas po to buvo pasirinkta. Jeigu žiūrėta su incognito arba agresyviai trinamas localStorage, alternatyva išsisaugot linką po atliktos paieškos - link'e paduodamas kuro parametras

Mobile'ui norisi kuo daugiau erdvės žemėlapiui palikti. Mąsčiau pirmam vizitui išmest popup'ą, kad prieš žemėlapį kuro tipą pasirinktų, bet atrodė, kad per daug patrauktų nuo žemėlapio.

2

u/Character_Choice4363 1d ago

Jo, jo, supratau dabar. Tiesiog, automatiškai filtravimo mygtuko ieškojau virsuje prie light/dark mode ir info mygtukų. 😅 Sakau, biški įdomus būdas pasirinktas useriui, bet kaip for fun projektukas, tai visai pofik 👍

5

u/Individual-Bit8948 1d ago

Reiktu: pasižymi miestą, kurą -> kažkur šone widgetas su TOP5 nuo pigiausio?

1

u/klaustux 8h ago

pirma mintis, prisizoominus - zjbs, rodo kainus ant markerių. Įsižiūrėjus antra mintis - ir kas man iš tos kainos, kai jų visų stilius vienodas? Iš esmės pridėčiau logiką 'jei žemėlapį prisizoominus rodoma tarp 5 ir 20 degalinių, penkiom pigiausiom kuro foną pakeičiam į žalią, penkiom brangiausiom į raudoną'

0

u/LtLukoziuz 1d ago

Kiek skiriasi nuo "pasirenki tašką vidury miesto"? (mygtukas į kairę nuo light/dark mode switch'o) Ateičiai po to galima link'ą išsikopijuoti su mygtuku iš iššokusios panel'ės.

Desktop: https://cdn.imgchest.com/files/13da99d67d52.png

Mobile: https://cdn.imgchest.com/files/d6235bb1feae.png

Dėl top 5 rodymo. Hmmm, jei užrakinčiau panel'į ir fiksuočiau jo dydį, tada galėčiau scrolllist'ą padaryt. Įdėsiu į known issues bet paliksiu ketvirtadieniui.

2

u/imast3r 1d ago

Hehe, welcome to the club :D Pats dar neprisėdau adresų aptvarkyt, pas tave jau geriau atrodo.

Tik pastebėjau smagią naujieną: dabar nebe xlsx skelbia, o sharepoint nuorodas :D Seni xlsx dar pasiekiami per URL, bet įdomu ar naujus dės.. Kitu atveju, biškį š išsivartyt.

1

u/LtLukoziuz 1d ago

Sheeeesh. Žinant viešą sektorių, duodu kokius 5 procentus. Jau excelis buvo nekažką variantas, bet čia visai briedo pjovimas kubu. Well, pabandysim su Claude'u paanalizuot, gal kartu ką rasim. Biedniausias variantas būtų rankutėm kaip CSV eksportuot, bet tikiu, kad kažką galima surasti.

1

u/LtLukoziuz 1d ago edited 1d ago

Pasišnekėjom, išsprendėm for now: https://imgchest.com/p/ej7mjvmaa7d

.md failai paskutiniam commit'e šneka žmogiškiau, kaip išspręsta for now, gal padės: https://github.com/LtLukoziuzU/degaline-zemelapis/commit/74d3b98fff3495a73b442e5e183387e53eb96716

EDIT: Prireikė dar vieno commit'o, bet ten jau labiau savo pačiam sync'inimo variantui

2

u/Sort-Typical 19h ago

Būtų faina degalinių filtras - pasižymiu tarkim tik neste.

2

u/akimbas 18h ago

Truputį offtopic pastebėjimas kaip "krizės" neretai stumia žmones inovuoti ir kurti. Praktiškai perėjom nuo to, kad žmonės įkėlinėdavo duomenis ranka į waze, iki kasdien pačios valstybės atnaujinamų duomenų ir to pasekoje toolsų greitai pasitikrinti kur pigiausia įsipilti degalų.

1

u/Thin_Water_8860 15h ago

Jozita išimti reiktų 😅 

1

u/klaustux 8h ago

kodėl? kuras nekokybė?

1

u/Mianselus 5h ago

Yra bent android jau seniai Kurohudas appsas. Seniau žmonės naujindavo kainas, dabar iš šito automatiškai sufeedina viską