A class is the store
++ Fields hold state, methods update it, and getters are memoized + computed values. +
++ Reactive state, made straightforward +
++ Define state and actions in plain classes. Classy Store handles + reactivity, computed getters, and framework subscriptions for you. +
+
+ {`import { createClassyStore } from '@codebelt/classy-store';
+import { useClassyStore } from '@codebelt/classy-store/react';
+
+class CounterStore {
+ count = 0;
+
+ get doubled() {
+ return this.count * 2;
+ }
+
+ increment() {
+ this.count++;
+ }
+}
+
+const counter = createClassyStore(new CounterStore());
+const count = useClassyStore(counter, (state) => state.count);`}
+
+ + Fields hold state, methods update it, and getters are memoized + computed values. +
++ Bindings are available for React, Vue, Svelte, Solid, and Angular. +
++ Persist state, inspect it with Redux DevTools, subscribe to a single + key, or add undo and redo. +
+
+ {chart}
+
+ );
+ }
+
+ return (
+
+ );
+}
diff --git a/website-fumadocs/components/provider.tsx b/website-fumadocs/components/provider.tsx
new file mode 100644
index 0000000..aa430db
--- /dev/null
+++ b/website-fumadocs/components/provider.tsx
@@ -0,0 +1,8 @@
+'use client';
+import {RootProvider} from 'fumadocs-ui/provider/next';
+import type {ReactNode} from 'react';
+import SearchDialog from '@/components/search';
+
+export function Provider({children}: {children: ReactNode}) {
+ return