A location-based tech event aggregator for engineers in Taiwan and Japan.
- Event Aggregation: Centralizes tech meetups from Taiwan, Japan, and international sources, solving the fragmentation problem.
- Map Visualization: Interactive Google Maps integration to find events near you.
- Cross-Region Coverage: Seamlessly integrates events from multiple regions into a single view.
The Problem: Tech event information in Taiwan and Japan is often scattered across different platforms, making it difficult to track what's happening nearby or across regions.
The Solution: I built a full-stack application to aggregate this data and visualize it geographically.
- Backend: Constructed a robust REST API using Spring Boot (Java 21) to manage event data, built with Gradle for reliable dependency management.
- Frontend: Built a modern, type-safe UI using React, TypeScript, and Tailwind CSS for rapid, responsive styling.
- Integration: Integrated Google Maps API to provide the core location-based discovery feature.
- Full Stack Architecture: Orchestrating data flow between a Java/Spring Boot backend and a React frontend.
- Modern Build Tools: Migrating to Vite for faster frontend development and using Gradle for backend builds.
- Component Design: Leveraging Headless UI libraries (Radix UI) to build accessible and interactive map components.
- API Challenges: Efficiently handling Google Maps API quotas and rendering custom markers.
- User Auth: Add authentication to allow users to save/bookmark events.
- Automated Scraping: Implement jobs to scrape more event platforms.
- Advanced Filters: Add filtering capabilities for specific programming languages or dates.
- Java 21
- Node.js & npm
- Google Maps API Key
cd backend
# The project uses Gradle wrapper
./gradlew bootRuncd frontend
npm install
# Create a .env file in the frontend directory
# Add: VITE_GOOGLE_MAPS_API_KEY=your_api_key_here
npm run dev