An interactive web app built with React, TypeScript, and Mapbox to help users track and visualize their bike routes.
Developed with the help of Amp, Sourcegraph’s AI coding agent, this project strengthened my skills in building map-based applications, integrating APIs, and writing clean, type-safe code.
- 🧭 Track and visualize bike routes on an interactive Mapbox map
- ⚡ Fast development setup using Vite
- 🧠 Type-safe code with TypeScript
- 🤖 AI-assisted development with Amp for real-time coding support
- 📱 Responsive design for both desktop and mobile
- React + TypeScript + Vite – modern, fast, and type-safe frontend development
- Mapbox GL JS – for interactive, real-time map rendering
- ESLint + Prettier – ensures clean and consistent code
- Amp (by Sourcegraph) – for AI-assisted coding in VS Code
Follow these steps to set up and run the project locally.
git clone https://github.com/your-username/bike-tracker-app.git
cd bike-tracker-appnpm installCreate a .env file in the project root and add your Mapbox token:
VITE_MAPBOX_ACCESS_TOKEN=your_mapbox_token_herenpm run devThen open http://localhost:5173 in your browser.
This project uses Vite with Hot Module Replacement (HMR) and a base ESLint setup.
You can expand it with stricter TypeScript or React rules for production use.
Update your eslint.config.js file:
tseslint.configs.strictTypeCheckedInstall additional linting plugins:
npm install eslint-plugin-react-x eslint-plugin-react-domThen extend your ESLint configuration:
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'
export default defineConfig([
globalIgnores(['dist']),
{
files: ['**/*.{ts,tsx}'],
extends: [
reactX.configs['recommended-typescript'],
reactDom.configs.recommended,
],
},
])- Integrating Mapbox with React for dynamic route visualization
- Managing state and user interactions in React
- Applying TypeScript for clean, scalable, and reliable code
- Configuring Vite for optimal development performance
- Using Amp for AI-assisted coding and collaboration
- Add user authentication for personal route tracking
- Save and load routes from a database
- Display total distance and duration
- Add route sharing and social features
- Expand mobile support and offline mode
Contributions are welcome!
If you’d like to improve the project:
- Fork this repository
- Create a new branch (
git checkout -b feature/your-feature) - Commit your changes (
git commit -m 'Add new feature') - Push to the branch (
git push origin feature/your-feature) - Open a Pull Request
Developed by Lesliee Cruz
Powered by React, TypeScript, Vite, Mapbox, and Amp (Sourcegraph)
This project is open source and available under the MIT License.
