import React from 'react'; import clsx from 'clsx'; import Link from '@docusaurus/Link'; import useDocusaurusContext from '@docusaurus/useDocusaurusContext'; import Layout from '@theme/Layout'; import styles from './index.module.css'; function HomepageHeader() { const {siteConfig} = useDocusaurusContext(); return (

{siteConfig.title}

{siteConfig.tagline}

Get Started → API Reference
); } const features = [ { title: '🏠 Uniform API', description: 'push, pop, shift, map, filter, reduce — same methods across all structures. Learn once, use everywhere.', }, { title: '🛡️ Type Safe', description: 'Full generics with strict TypeScript support. Every method returns the correct type — no casting needed.', }, { title: '✨ Zero Friction', description: 'Spread it [...tree], loop it for...of, pass it to new Set(). Works with every JavaScript API out of the box.', }, { title: '📦 Zero Dependencies', description: 'Pure TypeScript. No runtime dependencies. Tree-shakeable with subpath exports — bundle only what you use.', }, { title: '🔄 Raw Data In, Structure Out', description: 'Pass raw objects directly with toEntryFn, toElementFn, or comparator. No .map() pre-processing needed — unique to this library in JS/TS.', }, { title: '✅ Battle-Tested', description: '2600+ tests, 99%+ coverage. CLRS-correct Red-Black Tree, ACL-style Segment Tree. Production-ready.', }, ]; const structures = [ { category: 'Trees', items: 'RedBlackTree, AVLTree, BST, TreeMap, TreeSet, TreeMultiMap, TreeMultiSet' }, { category: 'Heaps', items: 'Heap, MinHeap, MaxHeap, MinPriorityQueue, MaxPriorityQueue' }, { category: 'Queues & Stacks', items: 'Queue, Deque, Stack' }, { category: 'Linked Lists', items: 'SinglyLinkedList, DoublyLinkedList, SkipList' }, { category: 'Hashing', items: 'HashMap' }, { category: 'Graphs', items: 'DirectedGraph, UndirectedGraph' }, { category: 'Strings', items: 'Trie' }, { category: 'Arrays', items: 'SegmentTree, BinaryIndexedTree, Matrix' }, ]; const useCases = [ { title: 'Priority Queue', link: '/docs/guide/use-cases/priority-queue-typescript', desc: 'Task scheduling, top-k problems, Dijkstra' }, { title: 'TreeMap / TreeSet', link: '/docs/guide/use-cases/treemap-javascript', desc: 'Sorted maps, floor/ceiling, range queries' }, { title: 'Array + Sort Too Slow?', link: '/docs/guide/use-cases/array-sort-alternative', desc: 'O(log n) insert vs O(n log n) re-sort' }, { title: 'Heap vs Sorting', link: '/docs/guide/use-cases/heap-vs-sorting', desc: 'When to use which' }, { title: 'Map vs TreeMap', link: '/docs/guide/use-cases/map-vs-treemap', desc: 'When native Map isn\'t enough' }, ]; export default function Home(): React.JSX.Element { return (
{features.map((f, i) => (

{f.title}

{f.description}

))}

📚 Data Structures Available

{structures.map((s, i) => (

{s.category}

{s.items}

))}

🎯 Use Cases & Guides

{useCases.map((u, i) => (

{u.title}

{u.desc}

))}
); }