OAK · FilterCraft
OAK UI · FilterCraft
Le librerie esistenti per filtraggio dinamico (Isotope, MixItUp, Shuffle) pesano tra 25 e 80 KB e portano dipendenze. OAK FilterCraft fa l'80% di quello che fanno loro in 3.8 KB, senza jQuery, senza framework, senza build tool.
Le librerie esistenti per filtraggio dinamico (Isotope, MixItUp, Shuffle) pesano tra 25 e 80 KB e portano dipendenze. OAK FilterCraft fa l'80% di quello che fanno loro in 3.8 KB, senza jQuery, senza framework, senza build tool.
- Peso: 3.8 KB (gzip)
- Dipendenze: 0 (zero)
- Browser: 99.2% (caniuse)
Changelog
Cosa è cambiato, quando.
-
v.1.0.0 corrente18 aprile 2026Major
Prima release stabile, API congelata
- add API pubblica congelata: garanzie di backward-compatibility fino alla 2.0.
- add Supporto a filtri multipli combinabili con AND/OR.
- add Eventi custom: oak:filter, oak:sort, oak:before-update.
- change BREAKING: la funzione globale Oak ora è un costruttore. Migrazione: new Oak() invece di Oak().
- change Bundle ridotto da 5.2 KB a 3.8 KB con tree-shaking interno.
-
v.0.8.202 marzo 2026Patch
- fix Memory leak quando si distrugge un'istanza in pagine SPA con turbo-link.
- fix data-filter="*" non resettava il sort attivo.
-
v.0.8.014 gennaio 2026Minor
Sort dinamico e deep-link URL state
- add Sort dinamico con data-sort: per data, alfabetico, custom comparator.
- add Opzione { syncURL: true } per persistere stato filtri in querystring.
- add Lazy initialization: la libreria si avvia solo quando il container entra in viewport.
-
v.0.6.008 novembre 2025Minor
- add Animazioni FLIP per riordino degli elementi (opzionali, 0 cost se disabilitate).
- add Supporto a contenuti caricati via fetch dopo init (refresh manuale).
- fix IntersectionObserver fallback per Safari 15.x.
-
v.0.4.003 settembre 2025Minor
- add TypeScript definitions complete pubblicate su DefinitelyTyped.
- change Lo state interno usa Map invece di plain object: -22% memoria su collezioni > 500 item.
-
v.0.2.012 giugno 2025Minor
- add Accessibilità: gestione automatica di aria-pressed e annunci screen-reader.
- add Configurazione { announce: 'polite' | 'assertive' | false }.
-
v.0.1.004 marzo 2025Major
Prima release pubblica
- add API base: filtri multipli, attributi data-filter, classi attive automatiche.
- add Zero dipendenze, 5.2 KB minified+gzip.
- add Compatibile con tutti i browser evergreen + Safari 14+.