Core System Atlas is a comprehensive full-stack application built to explore modern system design principles, core data structures, and algorithms. It features interactive visualizations, real-time monitoring, and production-inspired services such as rate limiting and circuit breakers. Designed for learning and demonstration, it bridges theoretical computer science with practical, scalable system architecture.
| # | Section Name | Link |
|---|---|---|
| 1 | Overview | Overview |
| 2 | Features | Features |
| 3 | Tech Stack | Tech Stack |
| 4 | Project Structure | Project Structure |
| 5 | Quick Start | Quick Start |
| 6 | Pages & Routes | Pages & Routes |
| 7 | Data Structures | Data Structures |
| 8 | System Services | System Services |
| 9 | Architecture | Architecture |
| 10 | API Reference | API Reference |
| 11 | Complexity Analysis | Complexity Analysis |
| 12 | Design Patterns | Design Patterns |
| 13 | Code Style | Code Style |
| 14 | License | License |
Core System Atlas is an educational and demonstrative full-stack application that showcases modern system design and computer science concepts through hands-on exploration:
- π Interactive Algorithm Visualizations β Understand data structures and algorithms via step-by-step animations
- π Real-time System Monitoring β Observe live metrics such as service health and performance
- ποΈ Production-Ready System Design Patterns β Implementations inspired by real-world backend systems
- β‘ Performance Analytics β Track throughput, latency, and resource utilization
- π§ Resilient Infrastructure Patterns β Includes rate limiting, circuit breakers, and distributed locks
- π§ Core Computer Science Foundations β Practical usage of DSA in real applications
- π§© Modular & Scalable Architecture β Clean separation of frontend, backend, and services
- π Developer-Focused Learning Platform β Built to help engineers move from theory to production thinking
| Category | Algorithms | Complexity |
|---|---|---|
| Graph | BFS, DFS, Dijkstra, Bellman-Ford, Topological Sort | O(V + E) to O(VE) |
| Heap | Min/Max Heap, Heapify, Heap Sort | O(log n) |
| Segment Tree | Range queries, updates, prefix sums | O(log n) |
| Union-Find | Disjoint sets, Kruskal's MST | O(Ξ±(n)) |
| Binary Indexed Tree | Prefix sums, order statistics | O(log n) |
| Service | Purpose | Key Features |
|---|---|---|
| Rate Limiter | API throttling | Token bucket, sliding window |
| Circuit Breaker | Fault tolerance | Closed/Open/Half-Open states |
| Distributed Lock | Synchronization | Mutex, resource locking |
| File Storage | File management | Upload, download, list |
| Search Engine | Full-text search | Inverted index, ranking |
- Real-time system metrics (CPU, Memory, Requests, Latency)
- Service health monitoring with status indicators
- Interactive performance charts
- Error rate tracking and alerts
You can visit the live site here - Live Site: Core System Atlas
- Next.js 14 - App Router, Server Components
- React 18 - Hooks, Concurrent features
- Tailwind CSS v4 - Utility-first styling
- shadcn/ui - Beautiful, accessible components
- Lucide Icons - Consistent iconography
- Recharts - Composable charting
- Node.js 20 - JavaScript runtime
- Express - Server framework
- Custom DSA - Educational implementations
- Docker - Containerization
- Docker Compose - Multi-container orchestration
- pnpm - Fast package manager
I will Update this structure to the new one...!!!
Core-System-Atlas/
βββ π app/ # Next.js App Router
β βββ π analytics/ # Analytics page
β βββ π docs/ # Docs page
β βββ π monitoring/ # Monitoring page
β βββ π systems/ # Systems page
β βββ π visualize/ # Visualizer page
βββ π backend/
β βββ π dsa/ # Data structures
β βββ π services/ # Services
βββ π components/ # React components
βββ π docs/ # This documentation
βββ π hooks/ # Custom hooks
βββ π lib/ # Utilities
βββ π styles/ # Styles
| Software | Version | Purpose |
|---|---|---|
| Node.js | 18.0.0+ | Runtime |
| pnpm | 8.0+ | Package manager |
| Docker | 20.0+ | Containerization |
- First Read this License & their terms then proceed.
- Star β the Repository
- Fork the repository (Optional)
- Project Setup:
- Clone the repository:
git clone https://github.com/UjjwalSaini07/Core-System-Atlas.git- Navigate to the project directory:
cd Core-System-Atlas- Install dependencies:
pnpm install- Start the Development Server:
pnpm dev- Open your browser and navigate to
http://localhost:3000to view the localhost website
# Build and run with Docker Compose
docker-compose up -d# View logs
docker-compose logs -f# Stop services
docker-compose down| Route | Path | Description |
|---|---|---|
| Dashboard | / |
Main overview with system stats |
| Visualizer | /visualize |
Interactive algorithm animations |
| Analytics | /analytics |
Performance charts & metrics |
| Systems | /systems |
Component status & config |
| Monitoring | /monitoring |
Real-time monitoring |
| Documentation | /docs |
API docs & guides |
const graph = new Graph(isDirected);
graph.addNode('A');
graph.addEdge('A', 'B', 5);
const visited = graph.bfs('A');
const path = graph.dijkstra('A', 'Z');| Operation | Time Complexity |
|---|---|
| addNode | O(1) |
| addEdge | O(1) |
| bfs/dfs | O(V + E) |
| dijkstra | O((V + E) log V) |
| topologicalSort | O(V + E) |
const heap = new MinHeap();
heap.insert(10);
heap.insert(5);
const min = heap.extractMin(); // 5| Operation | Time Complexity |
|---|---|
| insert | O(log n) |
| extractMin | O(log n) |
| peek | O(1) |
| size | O(1) |
const seg = new SegmentTree([1, 3, 5, 7]);
seg.update(2, 10);
const sum = seg.query(0, 3);| Operation | Time Complexity |
|---|---|
| build | O(n) |
| update | O(log n) |
| query | O(log n) |
const uf = new UnionFind(10);
uf.union(3, 5);
uf.connected(3, 5); // true| Operation | Time Complexity |
|---|---|
| find | O(Ξ±(n)) |
| union | O(Ξ±(n)) |
| connected | O(Ξ±(n)) |
const bit = new BinaryIndexedTree([1, 2, 3]);
bit.update(1, 5);
const sum = bit.prefixSum(2);| Operation | Time Complexity |
|---|---|
| update | O(log n) |
| prefixSum | O(log n) |
| rangeQuery | O(log n) |
const limiter = new TokenBucket({ capacity: 100, refillRate: 10 });
const allowed = limiter.tryConsume(5);States:
tokens- Current tokens availablecapacity- Maximum tokensrefillRate- Tokens per second
const breaker = new CircuitBreaker({ failureThreshold: 5, timeout: 30000 });
const result = await breaker.execute(async () => fetch('/api'));States:
CLOSED- Normal operationOPEN- Blocking requestsHALF_OPEN- Testing recovery
const lock = new DistributedLock({ ttl: 30000 });
const acquired = await lock.acquire('resource-key');
await lock.release('resource-key');
~ ujjwalsaini07
app/
βββ layout.jsx # Root layout, providers
βββ page.jsx # Dashboard
βββ globals.css # Tailwind + CSS variables
βββ [page]/ # Route segments
β βββ page.jsx # Page component
β βββ layout.jsx # Nested layout
βββ ui/ # Shared components
- React Hooks - Local component state
- Context API - Global theming
- Custom Hooks - Reusable logic
<SystemStats
data={{ cpu, memory, requests }}
loading={false}
/>
<Analytics
data={metrics}
type="line"
height={300}
/>
<SearchBar
onSearch={(query) => handleSearch(query)}
placeholder="Search..."
/>const isMobile = useMobile();
const { toast } = useToast();- Follow the Code Style Guide
- Write meaningful commit messages
- Add tests for new features
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
Designed and developed with a focus on clean architecture, performance, and developer experience.
Ujjwal Saini
Full-Stack Developer
π ujjwalsaini.dev Β· π GitHub
