Hobby Projects

Autonomous driving in TORCS using NEAT


Implementation of the NeuroEvolution of Augmenting Topologies (NEAT) algorithm for autonomously driving a car in The Open Racing Car Simulator (TORCS) using the simulated car's sensor readings.

NEAT evolves neural network architectures and their parameters to optimize the agent's driving performance. Starting with a population of diverse neural networks, the algorithm iteratively breeds and mutates them, preserving topological innovations. Through natural selection and speciation, continuously improving neural structures are developed, ultimately enabling the agent to learn effective car control strategies.

Technologies used: Python, NEAT

Dont Forgetter


The dont-forgetter API is a tool designed to help users schedule notifications and reminders for important events. Developed with the intention of preventing forgetfulness, this API allows me (and you!) to conveniently schedule notifications for birthdays, assignments or any other events that preferably would not be missed.
The API can be used to integrate reminder and note-taking functionalities into other applications. It can also be used as a standalone service via the browsable API link. By utilising the available endpoints, you can easily schedule, retrieve, and manage events and notes.
Please check you spam folder if email notifications are not immediately visible. By default, all users receive 20 free email notifications and 10 free SMS notifications per month. However, please don't hesitate to reach out if you require a higher limit. :)

  • Schedule notifications or reminders to be sent at a chosen date and time.
  • Support for periodic events, ensuring recurring reminders are never missed.
  • Store and manage notes to keep track of important information.
  • Available notification types: email and SMS.
  • Support for template messages with variables in notifications
  • Query events and notes using GET requests with various operators (equal, and, or, not, greater_than, less_than).
  • Edit or delete existing notes and events.
  • Categorize notes and events for better organization.

Technologies used: Python, Django REST, Celery, Redis, Docker, CICD



A bot for the game of Oldschool Runescape based on computer vision. Covers the majority of skills within the game. OpenCV is used to detect objects and colour contours within the game. Tesseract OCR is used to read any text needed (image to text). Human-like mouse movement is faked using randomised Bézier curves. Written purely out of curiosity, with no intention of making it publicly available.

Technologies used: Python, OpenCV, Tesseract OCR



This website! Uses Django for the back-end, Bootstrap for the front-end and is hosted on a DigitalOcean VPS.

Technologies used: Python, Django, HTML, CSS, Bootstrap, VPS

Address Checker


A web app that notifies users if a certain address gets included in a Lithuanian law, which prohibits smoking in balconies and terraces of apartment blocks. The official document gets periodically scraped using BeautifulSoup and the addresses are saved in a MySQL database. The addresses are then compared to the ones that have been entered by users and a notification email gets sent if a match is found. User e-mail data gets encrypted before storing in the database and decrypted before sending the notification. The website was built using Django and hosted on a VPS.

(No longer hosted)

Technologies used: Python, Django, HTML, CSS, Bootstrap, Web scraping, SQL, Encryption, VPS

Discord Bot


A Discord bot written in Python with the following functions:

!random (item 1), (item 2), (item 3)... – choose a random item
!coin – heads or tails
!rps – rock paper scissors against the bot
!rps with (username) - rock paper scissors against another Discord user

(No longer hosted)

Technologies used: Python, VPS

Movie App


A GUI app that shows currently trending movies and tv shows, detailed information on any movie or tv show and recommendations for them. TMDb and OMDb movie database APIs are used to get the required data. PyQT was used for the creation of the GUI.

Technologies used: Python, APIs, PyQT

Feel free to reach out if you would like to see any of the private repositories :)