Simple stores with pleasant actions and selectors. Vanilla , React
TypeScriptMIT Licenseactive
75 projects16 categories
Sourced fromthoughtspile/awesome-tiny-js
Simple stores with pleasant actions and selectors. Vanilla , React
TypeScriptMIT Licenseactive
Almost moment.js-compatible API, covers most use cases,
JavaScriptMIT Licenseactive
React-like API (pre-hooks). Cool ecosystem of similarly tiny tools and components. Highly recommended.
JavaScriptMIT Licenseactive
Not tiny as a whole, but most functions are under 1 kB each (format and parse are quite heavy).
TypeScriptactive
Random IDs with larger alphabet,
JavaScriptMIT Licenseactive
Plain event emitter that I use on most projects,
TypeScriptMIT Licenseslowing
Declarative router for React / preact, , also available as a standalone hook:
TypeScriptThe Unlicenseactive
Modular store with good tree-shaking support, vanilla, + React extra. Supports all the top frameworks.
TypeScriptMIT Licenseactive
The most popular modular validation library with good tree-shaking,
TypeScriptMIT Licenseslowing
82 helpers in separate packages (list).
JavaScriptMIT Licenseslowing
Attractive random colors with configuration.
JavaScriptCreative Commons Zero v1.0 Universalsteady
Small core with template strings,
TypeScriptMIT Licenseactive
Loose fetch polyfill,
JavaScriptMIT Licensedormant
Parse & format ms durations, e.g. "1m" <-> 60000,
TypeScriptMIT Licenseactive
90 tree-shakable helpers (list).
TypeScriptMIT Licenseactive
Format dates into stuff like X minutes ago or in X hours,
TypeScriptMIT Licenseactive
Chainable API with error processing and lots of extra plugins,
TypeScriptMIT Licenseactive
Drop-in axios replacement for modern browsers,
JavaScriptApache License 2.0dormant
The OG signals from preact core, with react integration.
TypeScriptMIT Licenseactive
vDOM-based framework optimized for no-build setups,
JavaScriptMIT Licenseactive
zod-style API with fine-grained checks: v8n().string().minLength(5).first("H").last("o"). No tree shaking,
JavaScriptMIT Licenseslowing
React-like library with hooks and concurrency,
JavaScriptMIT Licenseactive
Pan, swipe, tap, doubletap, longpress, and pinch / rotate. My personal favorite. .
JavaScriptMIT Licensedormant
Hyperapp-style templates with imperative event listeners and updates,
JavaScriptMIT Licenseslowing
Also similar, (compare)
JavaScriptMIT Licensedormant
Centralized store with actions, + React
JavaScriptdormant
One string at a time, does not compute score / rank.
JavaScriptMIT Licensedormant
jQuery-style DOM manipulation library,
JavaScriptMIT Licenseactive
Feature-rich and customizable: multi-field indices, stop words, custom stemmers and tokenizers.
JavaScriptMIT Licensedormant
Minimal redux-styled store with lots of framework connectors, . React extra + Vue, Svelte, Angular.
JavaScriptMIT Licenseslowing
Manipulate colors and convert between spaces, . Extra features come as plugins, 150b to 1.5 kB each.
TypeScriptMIT Licenseactive
187 tree-shakable helpers (list).
JavaScriptMIT Licenseactive
Rx-style event streams,
JavaScriptMIT Licensedormant
Nicer unsubscribe API, but no * event,
TypeScriptMIT Licenseactive
Hyperapp with state & effect hooks removed,
JavaScriptMIT Licensedormant
Rx-styled event streams,
JavaScriptMIT Licenseslowing
Find misspellings, e.g. missipissi -> Missisipi, Commercial usage costs $42.
JavaScriptOtherdormant
Simple date / time formatter: {h}:{mm} -> 9:33,
JavaScriptMIT Licensedormant
96 tree-shakable helpers. Lazy evaluation support.
TypeScriptApache License 2.0active
Date / time formatter, only supports padded numeric output (September -> 09),
JavaScriptMIT Licenseslowing
Index-free, can highlight matches.
JavaScriptMIT Licensedormant
Bare-bones template strings ({{hello}}, {{username}}) and custom functions for everyting else,
JavaScriptMIT Licenseslowing
History-based observable router,
JavaScriptMIT Licenseslowing
Store with useState-like API, , including React / preact connector.
TypeScriptMIT Licensesteady
More of the same,
JavaScriptMIT Licenseslowing
Convert path to regexp in
JavaScriptMIT Licenseslowing
Also has .once method,
TypeScriptMIT Licensedormant
Parse querystrings in . Not sure you need it, URL API support is good.
JavaScriptMIT Licensedormant
4 functions to make objects observable and listen to changes,
JavaScriptMIT Licenseactive
Detect present and primary input method (touch / mouse) and supported events,
TypeScriptMIT Licensedormant
Real UUIDs,
JavaScriptMIT Licenseslowing
Index-free search (slower, but easier to use) with sane ordering
JavaScriptMIT Licensedormant
Interpolation and dates / numbers, , or with react bindings.
TypeScriptMIT Licenseslowing
Chainable API with type-safe errors,
TypeScriptslowing
Routes as a nanostores store (framework-agnostic),
TypeScriptMIT Licenseactive
Route parser and matcher in
JavaScriptMIT Licensedormant
Detect locale, load dictionaries, format dates / numbers, including nanostores.
TypeScriptMIT Licenseactive
Quicksilver algorithm, prioritizes matches at start of word for command abbreviations (e.g. gp -> git push). One string at a time.
JavaScriptMIT Licensedormant
More of the same,
TypeScriptMIT Licensedormant
A smaller signal implementation,
JavaScriptISC Licenseactive