Inspiration
Railway networks are fascinating but also very complex. A small signaling error can cause huge problems. That inspired us to build a system where trains could be managed safely and efficiently in real time.
What it does
Our project is a smart railway simulator. Multiple trains run on shared tracks, and the system decides whether a train should stop, slow down, or switch tracks. The goal is to prevent collisions while keeping traffic flowing smoothly.
How we built it
We structured the project into clear modules:
CanvasGrid.jsx for the railway map and visualization.
ControlPanel.jsx for adding trains, creating tracks, and managing controls.
drawGraph.js to render tracks visually.
mouseHandlers.js for zoom and pan interactions.
trainController.js as the “brain,” making decisions on stops, restarts, and track switches.
trainMovement.js to control how trains actually move across the network. This modular design made it easier to test and improve each part separately
Challenges we ran into
Balancing safety and flow was tough—making sure trains didn’t crash but also didn’t stay stuck forever.
Accomplishments that we're proud of
We’re proud that our system can manage multiple trains dynamically and make real-time decisions that feel realistic.
What we learned
We learned how real railway systems balance safety and efficiency, how to structure a simulation into clean modules, and how important teamwork is when solving complex problems step by step.
What's next for Rail Bridge
We plan to add speed variations, better signaling, and AI-based traffic optimization for smarter control.

Log in or sign up for Devpost to join the conversation.