About TechBridge
🌟 Inspiration TechBridge was inspired by the growing gap we noticed between older adults and the rapidly evolving digital world. Many seniors struggle with online tasks like signing into websites, reading emails, or using apps. At the same time, many students are eager to give back to their communities but do not always have an easy way to do so.
We created TechBridge to connect these two groups. Seniors can request tech-related help through a simple form, and student volunteers can log in to view, accept, and track those requests. Our goal was to build something that is truly accessible and useful to both groups.
🧠 What We Learned This project taught us a lot about the intersection of technology and user empathy. Some key lessons include:
Designing for accessibility, especially for older users who may have limited digital experience
Managing conditional form validation to avoid confusing error messages
Storing and transferring state between pages using localStorage
Structuring a backend to support multiple user roles and actions
Creating clear and maintainable RESTful endpoints
Thinking like a real-world product team and anticipating edge cases
We also learned to test and iterate quickly, always keeping our end users in mind.
🔧 How We Built It TechBridge is a full-stack web app made with the following technologies:
👵 Senior Form Page Built with HTML, CSS, and JavaScript
No login required
Includes inputs for name, phone number, contact method, and location
Optional email field with logic to prevent inconsistent contact preferences
Uses localStorage to carry data to the confirmation page
🧑💻 Volunteer Dashboard Volunteers can sign up and log in securely
Authenticated users can view all incoming help requests
Each request includes "Accept", "Complete", and "Decline" options
Accepted tasks move to a separate view and contribute to a service hours count
Completed requests are removed from the list after confirmation
🌐 Backend Built with Node.js and Express
Stores help requests and volunteer accounts in MongoDB
API endpoints include:
/help-request to submit new requests
/request/:id/decision to accept or decline
/request/:id/complete to mark completed tasks
/volunteer/:id/hours to fetch service time
/my-requests/:volunteerId to list accepted requests
🧩 Challenges We Faced Some of the challenges we encountered include:
Schema drift: After removing a question from the senior form, old properties like "Help Needed" continued showing up because of outdated schema references in the backend. Fixing this helped us better understand how critical it is to keep frontend and backend logic in sync.
Email and ZIP validation: We had to combine native HTML validation with custom rules to ensure users could not select "Email" as a contact method without entering an email address. Making both validation errors appear simultaneously required extra care.
Session consistency: Ensuring that accepted tasks remained persistent across logins and that completed tasks disappeared correctly involved updating both server logic and frontend rendering.
✅ Outcome TechBridge is now a working prototype that lets seniors ask for help and volunteers track their impact. The dashboard displays completed service hours and makes it easy to respond to new requests quickly. The project is clean, functional, and built to scale or expand with features like print-friendly confirmation pages, optional feedback, and admin dashboards.
💬 Final Thoughts TechBridge represents what we love most about coding: solving real problems for real people. We are proud of what we built and excited by its potential to support seniors and empower student volunteers to make a difference.
Built With
- api
- css3
- express.js
- form-validation
- html5
- javascript
- localstorage
- mongodb
- mongoose
- node.js





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