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

Share this project:

Updates