Interactive Network Simulation Platform
Build, configure, and simulate network topologies with an intuitive drag-and-drop interface. Master networking concepts through hands-on experience with our Cisco Packet Tracer-inspired web application.
- Drag & Drop Interface - Intuitive device placement and connection creation
- Professional Device Library - Routers, switches, PCs, servers, firewalls, and more
- Visual Connection Management - Double-click to connect devices with animated feedback
- Real-time Configuration - Live device settings and network parameter adjustments
- Packet Flow Visualization - Watch data packets travel through your network in real-time
- Network Statistics - Monitor traffic, errors, and performance metrics
- Speed Control - Adjust simulation speed from 0.1x to 5x for detailed analysis
- Connection Quality Indicators - Visual bandwidth and latency representations
- Device-Specific Settings - Configure IP addresses, routing tables, and MAC tables
- Network Protocols - Support for various networking protocols and standards
- Topology Management - Save and load network configurations
- Test Scenarios - Built-in ping tests, broadcast simulations, and failure scenarios
- Responsive Design - Works seamlessly on desktop and tablet devices
- Dark/Light Mode - Adaptive theme support for comfortable viewing
- Smooth Animations - Professional transitions and interactive feedback
- Accessibility - Built with accessibility best practices
- Node.js 18+ and npm/yarn
- Modern web browser with ES6+ support
-
Clone the repository
git clone https://github.com/yourusername/routecraft.git cd routecraft -
Install dependencies
# Install client dependencies cd client npm install # Install server dependencies (if applicable) cd ../server npm install
-
Start development server
# Start client cd client npm run dev # Start server (if applicable) cd ../server npm run dev
-
Open your browser Navigate to
http://localhost:5173to start using RouteCraft
- Launch RouteCraft - Open the application in your browser
- Choose a Template - Start with a pre-built network or create from scratch
- Design Your Network - Drag devices from the library to the canvas
- Create Connections - Double-click a device, then click another to connect
- Configure Devices - Select devices to set IP addresses and network settings
- Run Simulation - Click "Start Simulation" to see your network in action
- Basic LAN - Perfect for beginners (Router + Switch + PCs)
- Enterprise Network - Advanced setup with firewall and multiple subnets
- React 18 with modern hooks and context
- Tailwind CSS for responsive styling
- Lucide React for consistent iconography
- Custom Canvas Rendering for network visualization
- GSAP for smooth animations
NetworkCanvas- Main simulation canvas with drag-and-dropDevicePanel- Device library and selection interfaceConfigPanel- Device configuration and settingsSimulationControls- Network testing and monitoring tools
- Custom
useNetworkSimulationhook for network state - React Context for global application state
- Local storage for saving/loading topologies
routecraft/
โโโ client/ # Frontend React application
โ โโโ src/
โ โ โโโ components/ # Reusable UI components
โ โ โ โโโ network/ # Network-specific components
โ โ โ โโโ ui/ # General UI components
โ โ โโโ hooks/ # Custom React hooks
โ โ โโโ pages/ # Application pages
โ โ โโโ lib/ # Utility functions
โ โ โโโ data/ # Sample data and configurations
โ โโโ public/ # Static assets
โโโ server/ # Backend API (optional)
# Development
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
# Code Quality
npm run lint # Run ESLint
npm run format # Format code with Prettier- Basic network device library
- Drag-and-drop interface
- Device connections and configuration
- Real-time packet simulation
- Save/load functionality
- Advanced routing protocols (OSPF, BGP)
- VLAN configuration and management
- Network security simulations
- Performance analytics and reporting
- Collaborative editing features
- Cloud integration and sharing
- Educational curriculum integration
- Advanced network troubleshooting tools
- Custom device creation
- API for external integrations
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Run tests and linting
- Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Cisco Packet Tracer - Inspiration for network simulation interface
- React Community - Amazing ecosystem and tools
- Tailwind CSS - Beautiful, utility-first CSS framework
- Lucide - Consistent and beautiful icon library
- Documentation: docs.routecraft.dev
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@routecraft.dev
Built with โค๏ธ for the networking community
RouteCraft - Where Networks Come to Life ๐