Date of Award
6-3-2026
Document Type
Thesis
Publisher
Santa Clara : Santa Clara University, 2026
Department
Computer Science and Engineering
First Advisor
Darren Atkinson
Abstract
Anyone who has done a group project knows the pattern: the first meeting burns an hour on logistics—which document to use, who has access, why the formatting broke on one laptop—before real work begins. In computer science courses that gap is worse. Students must install the right compiler, runtime, and libraries on their own machines; a four-person team on four different laptops can lose the first week to setup alone. Instructors who want to review submissions often download every zip from the learning management system and run each one locally. Existing tools solve pieces of this puzzle—real-time document editing, browser-based coding, or LMS integration—but no single platform combines all three for a classroom.
BridgeIDE is a cloud-based collaborative IDE built for that gap. Instructors define a programming environment once (language, packages, starter files, and hidden test scripts). Students sign in through Canvas, open an assignment from the BridgeIDE dashboard, and land in that environment with nothing to install. Course data—assignments, groups, rosters, and due dates—stays in Canvas; BridgeIDE owns the coding workspace. Group members share one project container and edit together in real time; work persists across sessions and devices. After the due date, workspaces become read-only automatically.
The system is implemented as a Next.js frontend and three Python microservices on a shared Docker network. Doorman handles Canvas OAuth2 and answers authorization questions for the rest of the stack. Foundry builds environment images, records projects, and creates each student or group container on first access. Racketeer starts and stops those containers on demand, proxies the editor and terminal over Socket.IO, and synchronizes live collaboration. PostgreSQL stores persistent data; Redis coordinates container lifecycle and distributed locks. nginx terminates TLS and routes traffic; the stack deploys with Docker Compose on AWS EC2. We validated the product with unit tests, continuous integration testing, and faculty review of prototypes; because an institutional Canvas developer key was not yet available, integration testing used a self-hosted Canvas instance. The current deployment runs on a single server, accessibility support is incomplete, and grading remains in Canvas rather than inside the IDE. Scalability, ADA compliance, in-browser HTML preview, and plagiarism detection are the primary directions for future work.
Recommended Citation
Srimal, Maya; Prince, Jeshwin; Gupta, Arnav; and Zumbolo, Will, "BridgeIDE" (2026). Computer Science and Engineering Senior Theses. 351.
https://scholarcommons.scu.edu/cseng_senior/351
