introducing-new-js-clock
Aktar minn 15-il sena ilu ppubblikajt plugin żgħir ta’ jQuery bl-isem JS-Clock. Kien widget sempliċi li kien juri arloġġ li jdoqq ġewwa element DOM — utli, sempliċi, u kompletament ta’ żmienu. Kien jiddependi fuq jQuery, kellu xi problemi bl-appoġġ ta’ diversi istanzi, u qatt ma ġie aġġornat b’mod sinifikattiv wara dik l-ewwel verżjoni.
Illum dan jinbidel. Qed noħroġ new-js-clock 1.0.0 — kitba mill-ġdid f’TypeScript minn fuq l-art li tħares l-ispirtu tal-oriġinal filwaqt li tħalli kull limitazzjoni tagħha warajha. Tista’ taraha fil-ħidma fuq il-paġna tad-demo.
X’inhu Ġdid fil-1.0.0
Dak kollu li ġie f’din il-verżjoni:
- 🔒 TypeScript — Sikurezza sħiħa tal-tipi b’interfaċċi komprensivi madwar il-kodiċi kollu.
- 🌐 Sett ta’ Testijiet E2E + Unitarji — Kopertura deterministika ta’ Jest flimkien ma’ testijiet Selenium E2E fil-browsers reali, inkluża validazzjoni estiża tal-imġieba fit-tabs tal-isfond.
- 📦 Żero Dipendenzi — JavaScript vanilla pura. Ma hemm bżonn ta’ jQuery.
- 🐛 Korrezzjonijiet ta’ Bugs — L-appoġġ ta’ diversi istanzi issa jaħdem korrettament — dan kien il-problema ewlenija fil-verżjoni 0.8.
- ⚡ API Moderna — API nadifa u intuwittiva b’metodi ta’ istanza xierqa fuq kull arloġġ maħluq.
- 🧪 Ittestjat Kompletament — 162 test Jest deterministiku b’kopertura tal-linji ta’ 99.74%, kopertura tal-istatements ta’ 99.02%, kopertura tal-funzjonijiet ta’ 100%, u kopertura tal-friegħi ta’ 98.32%.
- 🐳 Grilla E2E Dockerizzata — Selenium Grid li jħaddem Chrome, Firefox u Edge f’modalità headless lokalment u f’CI permezz ta’
pnpm run e2e:docker. - 📱 Moduli ES — Imports ta’ ES Module b’appoġġ ta’ tree-shaking, flimkien ma’ bundles CommonJS u IIFE.
- 🌍 Żoni tal-Ħin Konxji tad-DST — Appoġġ taż-żona tal-ħin IANA b’immaniġġjar awtomatiku tal-ħin tas-sajf.
- ⏱️ Modalità Stopwatch — Stopwatch ġdid li jgħodd ‘il fuq minn 00:00:00.
- 🏁 Ħinijiet ta’ Lap u Split — Irreġistra ħinijiet ta’ lap (delta) u ħinijiet kumulattivi (split) fil-modalità stopwatch.
- 📊 L-Aħjar/l-Agħar Lap — Funzjonijiet ta’ għajnuna inkorporati biex isib il-lap l-aktar mgħaġġel u l-aktar bil-mod f’sessjoni.
- 🎯 Tiżminja ta’ Riżoluzzjoni Għolja — Deltas tal-lap imkejla permezz ta’
performance.now()b’preċiżjoni ta’ taħt il-millisekonda.
Installazzjoni
npm install new-js-clock
# jew
pnpm add new-js-clock Disponibbli wkoll permezz ta’ CDN għall-użu dirett fil-browser — ara l-README għal-links ta’ unpkg u jsDelivr.
Għaliex Dam Hekk Ħafna?
Onestament? Il-ħajja. Il-JS-Clock oriġinali nkiteb minħabba talba ta’ ħbieb tiegħi mejjet Gustavo Beltrão (mastru tal-PHP f’dak iż-żmien, li kelli l-privileġġ li naħdem miegħu aktar minn darba) biex jintuża f’dashboards interni korporattivi u f’siti web ta’ paġna waħda għal avvenimenti bi viżitaturi minn żoni tal-ħin differenti. Wettaq ix-xogħol tiegħu biżżejjed biex qatt ma donnu hemm urġenza li terġa’ tieħu ħarsa lejha. Iżda jQuery ilu ħafna sparixxa mill-proġetti moderni, TypeScript sar l-istandard għall-iżvilupp tal-libreriji, u l-bug bl-appoġġ ta’ diversi istanzi dejjem iddisturbani. Meta fl-aħħar qgħadt biex nikkoreġiha kif suppost, kellu sens li nagħmilha tajjeb — b’tipi, testijiet, sistema moderna ta’ moduli u biżżejjed karatteristiċi biex tkun verament utli fl-2026. Barra minn hekk, nippjana li nuża fl-proġett kummerċjali li jmiss tiegħi.
Aħjar tard milli qatt.
Lil Ġesù Kristu biss il-glorja!