Here you will find my open-source projects.
#Kremen.Transport
Map of public transport in Kremenchuk City, Ukraine.
An app for tracking buses, trolleybuses, and minibuses in Kremenchuk, Ukraine. It shows when transport will arrive at a stop, and lets you display only the routes you need on the map.
The project started as a pet project I used to try out new technologies, libraries, and architectural approaches. Over time it gained a user base, and it is now used on the official website of the Kremenchuk City Council.
In practice, the main use case is someone standing at a stop who wants to know how long they will wait for their bus. I optimized both the interface and the API around it. On launch the app immediately shows the user’s current location, the nearest stops, and the transport around them. It then asks the API for the current positions of only the routes the user has selected, so the back-end returns a minimal amount of data. After that the app opens a WebSocket connection to the back-end and receives updates in real time.
On the back-end, Redis handles caching and Pub/Sub, and transport movement logs are stored in MongoDB.
All user data and settings are stored locally, either in the browser or on the phone. The platform collects no personal data — only feature-usage analytics, with no reference to the individual user.
Technologies used:
- Web: React, TypeScript, ESBuild.
- Mobile: React Native, TypeScript.
- API: NodeJS, TypeScript, Docker, Docker Compose, Redis, MongoDB.


