Inspiration

As students, we often struggled to find internships that matched our interests, location, and experience level. Many platforms felt overwhelming or impersonal. We wanted to build something simpler, faster, and more visual — a tool made by students for students.

What it does

Intern Atlas helps users discover paid internships tailored to their major, location, experience level, GPA, and resume status. It filters opportunities from real listings and displays them on a clean results page — complete with a map for geographic context.

How we built it

We used HTML, CSS, and vanilla JavaScript for the frontend and Leaflet.js for interactive mapping. The data comes from a real-world JSON dataset of internship listings, which we parse and filter based on user input.

Challenges we ran into

• Mapping job locations without hardcoding coordinates was tricky — especially for unusual or incomplete addresses.
• Designing a responsive, clean UI that worked on both desktop and mobile required many iterations.
• Filtering logic had to be flexible enough to handle empty inputs and edge cases while still returning meaningful results.

Accomplishments that we're proud of

• Building a functional end-to-end pipeline from user input to filtered map-based results.
• Making the experience intuitive and visually clean.
• Implementing a mini map and responsive layout with no external frameworks.
• Creating a tool that actually solves a real problem we faced.

What we learned

• How to integrate mapping libraries like Leaflet with custom data.
• The importance of user experience when filtering and displaying results.
• How to troubleshoot Git merge conflicts and make a clean push to a live repo.

What's next for Intern-Atlas

• Automatically geocoding all locations using a service like OpenCage or Mapbox.
• Expanding data sources to pull live internship listings from APIs.
• Adding resume-upload and smart match suggestions.
• Deploying the site publicly for others to use, not just locally.
Share this project:

Updates