đ´ Let's Go Biking â JCDecaux Bike Route Planner

đ´ Let's Go Biking is a school project designed to provide a convenient itinerary for cyclists traveling between two addresses using the JCDecaux bike service. The application functions as a self-hosted SOAP server on the server side, accompanied by a robust Java-based heavy client. Utilizing WCF servers, the app communicates through REST APIs and a routing service with proxy and cache, connecting seamlessly with providers like JCDecaux and OpenRouteService.
đģ GitHub Repository
đ¯ Key Features
- Route Planning: Calculate optimal bike routes between two addresses.
- JCDecaux Integration: Utilize JCDecaux bike stations for real-time availability.
- OpenRouteService: Leverage OpenRouteService for accurate pathfinding.
- Caching & Proxy: Improve performance with caching and proxy mechanisms.
- Cross-Platform: Developed with C# for the server and Java for the client.
đ§ą Development
Built with:
- C# .NET â Server-side logic and SOAP services.
- Java â Client application for user interaction.
- WCF â Communication framework for service-oriented architecture.
- OpenRouteService â Routing service for pathfinding.
- JCDecaux API â Bike station data integration.
- OpenStreetMap â Geospatial data for mapping.
đ§ Setup
Open git bash and clone the project folder.
git clone https://github.com/marcusaasjensen/lets-go-biking.git
Open the cloned project folder lets-go-biking.
Setup your API keys in a .env file inside the Server folder.
Replace the fields by your API keys for each services and according to the following .env.template file.
OPEN_ROUTE_SERVICE_API_KEY=your_api_key
JCDECAUX_API_KEY=your_api_key
You can create accounts on both services to get your API keys.
- JCDecaux API key: https://developer.jcdecaux.com/
- Open Route Service Api key: https://openrouteservice.org/
Open the Server/LetsGoBiking.sln project file with Visual Studio.
Right click on Solution and select "Build Solution" and wait until successful build.
Make sure to use the Java Version 11 to run the client side afterwards. Also check if you have maven installed.
Launch the app simply đąī¸
Click on the LetsGoBiking.bat file.
Launch the app manually âī¸
First, run both the Routing and the ProxyCache servers inside the associated folders:
- Server/ProxyCacheServer/bin/Release/ProxycacheServer.exe
- Server/RoutingServer/bin/Release/RoutingServer.exe
Secondly, open the command prompt in the Client folder and run in order:
mvn clean install
mvn compile
mvn exec:java -Dexec.mainClass="com.soc.testwsclient.Main"
Or (using IntelliJ)
Open the Client project inside IntelliJ idea, and run in the local terminal:
mvn clean install
Finally, compile and run the main class.