By Mikhael Bailly
Welcome to the first edition of WeekDev 2021. The WeekDev is a challenge that I launched myself, where I develop an idea in maximum 1 week. At the end of this period I would no longer edit the code ! The goal is to improve myself in development and discover new techniques, new languages.
Velib X Waze
The idea came from my daily use of the Velib app in Paris. During these last months the stations are regularly empty, so I wanted to find a way to be sure to get a bike. Like Waze, I will try to predict the number of bikes a station will have in the coming days. Based on the history of the station.
The challenge began on Thursday 15 January 2021 and will be ended on Thursday 22 January 2021 ! It aims to bring me knowledge in NextJS and DataMining. During the development, I work on the branch "dev".
Velib provides its data free of charge on the opendata site of Paris API
- Vélib - Vélos et bornes - Disponibilité temps réel to get the real time stations data
- Vélib - Localisation et caractéristique des stations to get a list of the stations I store station data every 30 minutes over a period of 4 weeks in the past in a Mongodb database (~ 2 000 000 lines).
I created a Kanban table to reference all my tasks available here. It will be regularly updated
Main tasks :
- Get a map with all stations
- Display stations popins with informations
- Analyze the last 4 weeks
- Make a prediction about the coming days
- Display local meteo
- NextJS
- MapBox
- Openweathermap
- MongoDB
Use git clone
to install this app.
git clone https://github.com/Mikheull/wd-velib
npm install
Create a .env
file in root directory and write the configuration below.
MAPBOX_ACCESS_TOKEN=xxxxxxx
METEO_ACCESS_TOKEN=xxxxxxx
NOSQL_HOST=host
NOSQL_USER=user
NOSQL_PWD=xxxxxx
NOSQL_TABLE=velib
npm run dev
I explain in more detail the development of this app in the wiki here