@sometic/date-fns
v1.0.6
Published
date-fns date adapter for Sometic.
Downloads
956
Maintainers
Readme
@sometic/date-fns
date-fns adapter for the Sometic DateAdapter contract.
createDateFnsDateAdapter implements @sometic/date-core with date-fns helpers (parse, parseISO, format, addDays / addMonths / addYears, start/end of unit). date-fns stays a peer so tree-shaken function imports remain under your control inside the adapter package.
Choose this when your codebase already standardizes on date-fns formatting and arithmetic. Sometic date inputs then share the same semantics without teaching UI code about date-fns directly.
Standout behavior: ISO/yyyy-MM-dd parsing paths, format tokens via date-fns format, and assertDateAdapter on construction. DateAdapterOptions are accepted for contract symmetry with other adapters.
Related: @sometic/date-core, @sometic/date-native, @sometic/date-dayjs, @sometic/dom, @sometic/core. Docs: introduction and date primitives.
Install
pnpm add @sometic/date-fns date-fnsnpm install @sometic/date-fns date-fnsyarn add @sometic/date-fns date-fnsUsage
Create the adapter and format values:
import { createDateFnsDateAdapter } from "@sometic/date-fns";
const adapter = createDateFnsDateAdapter();
const label = adapter.format(new Date(2026, 7, 9), "yyyy-MM-dd");
const parsed = adapter.parse("09/08/2026", "dd/MM/yyyy");Inject into a date input controller:
import { createDateInputController } from "@sometic/dom/input-date";
import { createDateFnsDateAdapter } from "@sometic/date-fns";
const adapter = createDateFnsDateAdapter();
const dateInput = createDateInputController({ adapter });Peers / when not to use
Peer: date-fns (^4.0.0). Depends on @sometic/date-core.
Do not install this adapter unless you already want date-fns in the dependency graph. Prefer @sometic/date-native for a peer-free default, or @sometic/date-dayjs for Day.js.
Docs
License
MIT
