A comprehensive collection of interactive educational tools for learning computer science algorithms, data structures, and system design concepts. Built with Next.js and designed for hands-on learning through visual demonstrations.
- Bloom Filter - Interactive probabilistic data structure with bit array visualization
- Bloom Calculator - Mathematical calculator for optimal Bloom filter parameters
- HyperLogLog - Cardinality estimation demonstration with bucket visualization
- Count-Min Sketch - Frequency estimation for streaming data
- Count-Min Sketch Working - Additional CMS implementation variant
- Token Bucket - Visual rate limiter with animated token consumption
- Leaky Bucket - Alternative rate limiting algorithm demonstration
- Fixed Window - Fixed window rate limiting visualization
- Sliding Window - Sliding window rate limiting algorithm
- Load Balancer - Multi-algorithm load balancing simulator with real-time metrics
- Deployment Strategies - Interactive deployment patterns (Rolling, Blue/Green, Canary, A/B, etc.)
- Caching Strategies - Six different caching patterns with operation visualization
- DNS Resolver - DNS resolution process with packet flow animation
- Node.js 22+
- npm, yarn, or pnpm
# Clone the repository
git clone https://github.com/Sagyam/tools.git
cd tools
# Install dependencies
pnpm install
# Start the development server
pnpm run devOpen http://localhost:3000 to view the tools collection.
- Interactive Visualizations - Real-time animations and visual feedback
- Educational Focus - Step-by-step explanations of complex algorithms
- Responsive Design - Mobile-friendly interfaces
- Dark/Light Theme - Theme switching support
- Configurable Parameters - Adjust settings to explore different scenarios
- Real-time Metrics - Live performance and accuracy measurements
- Framework: Next.js 15 with App Router
- Language: TypeScript
- Styling: Tailwind CSS + shadcn/ui
- Animations: Framer Motion
- Charts: Recharts
- Icons: Lucide React
- Analytics: PostHog
Contributions are welcome! Please feel free to submit pull requests or open issues for:
- New tool suggestions
- Bug fixes
- UI/UX improvements
- Educational content enhancements
This project is open source and available under the MIT License.
Made with ❤️ for computer science education