Bachelor theses
Song book for religious gatherings - mobile application
Author
Ondřej Wrzecionko
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Kašpar
Department
Summary
Thesis deals with analysis, proposal, implementation, testing and deployment of iOS and macOS application of song book for religious gatherings and supporting server providing REST API for this mobile application. Application is implemented in programming language Swift, supporting server is implemented in programming language Kotlin with use of technology Spring Web. Application allows users to display and manage songs in song books and assign song books to bands. Within these bands, leader manages members and song books, musician manages songs and singers are shown only songs and song books. Users can set song lyrics, chords, lyrics font size, bpm, default transposition and private notes.
Application is deployed to iOS and macOS application store App Store. During first month, four religious gatherings started using the application and by now, over 1 000 songs in 10 song books have been added to the application.
The Slime Element - Tower defense game with innovative mechanics
Author
Martin Němec
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Radek Richtr, Ph.D.
Department
Summary
Goal of this thesis is to acquaint the readers with processes used for development of computer game, including analysis, design, implementation and testing of the game. The resulting game is of tower defense genre, which is analysed in the first part of the thesis alongside with analysis of game engines. Afterwards prototype of the game is designed and implemented using Unreal Engine. This game with the name "The Slime Element" is tower defense game created in 3D environment in third person view, which contains a set of mechanics not usually found in this genre, such as ability to fly through the map, finish quests in individual levels or use surrounding environment for your benefit. Prototype of the game is in the end subjected to user testing, where results of testing are summarized and the continuation of the project is outlined.
ETCS - Module for communication between EVC and RBC
Author
Daria Roshchupkina
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Martin Leso, Ph.D.
Department
Summary
This thesis is concerned with the design for the ETCS simulator of libraries of variables, packets and messages, which are necessary for communication between EVC and RBC, and with the design for this simulator of the communication module for communication between EVC and RBC on the EVC side, for versions 2.3.0, 3.4.0 and 3.6.0 of the system requirements for ETCS defined by the SUBSET-026 developed by ERA. This work also describes the implementation of the libraries of variables for each of versions 2.3.0, 3.4.0 and 3.6.0 and the implementation of libraries of selected packets for each version, which are based on this design. It also describes the differences and similarities of ETCS language's variables, packets, and messages, which are required for communication between EVC and RBC modules in the ETCS simulator, and communication with RBC from the EVC side between versions 2.3.0, 3.4.0 and 3.6.0 of the ETCS system requirements.
ETCS - Dynamic speed monitoring module for EVC
Author
Alina Krasnenkova
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Martin Leso, Ph.D.
Department
Summary
The first part of this thesis gives an overview of the ETCS, gives the description of the EVC and its main functionalities, that are necessary for the speed and distance monitoring of the train. The second part describes the design and implementation of the module, that is created for this thesis. This module is parted into three submodules: messages and packets receiver, MRSP calculator and dynamic speed monitoring.
Video reporting portal
Author
Dmitry Belov
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Oldřich Malec
Department
Summary
Thesis focuses on the development of a web portal prototype. First, the requirements for the prototype are determined using competition analysis. Subsequently, using software engineering methods, a suitable solution is designed to meet the requirements. Both the technologies used in the implementation and the necessary prototype functional are designed. After the design, I will demonstrate the use of the most important technologies in the implementation of the prototype. The entire implementation is written in JavaScript using TypeScript and other tools and libraries like Express and React. The finished implementation is then tested and the shortcomings of the implemented prototype are determined.
The result is a functional prototype fulfilling the identified requirements. The work could be followed by finishing the prototype in to the production version, enriching it with another functionality and by fixing shortcomings of prototype.
Magitech - Dungeon generator
Author
Jiří Macháček
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Adam Vesecký
Department
Summary
The goal of this bachelor thesis is to create a procedural generator of game environments - dungeons - for the game Magitech. The paper analyzes the methods of procedural content generation, which can be used to generate different types of dungeons. From the analyzed methods, the most suitable method for use in the case of Magitech - the use of agents - is selected. The agent-based dungeon generator is then designed and implemented in the game using the Unity environment. The generator is finally thoroughly tested. The generator module implemented in this work meets the requirements set by the client, and will be incorporated into the game in the future.
Magitech - Player / Nonplayer character interaction module
Author
Štěpán Vejvoda
Year
2022
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Department
Summary
This bachelor`s thesis deals with development of a player-npc interaction system. The individual modules are based on analysis of videogames from the same genre. The thesis also includes a commentary on implementation and developer/player testing.
Project allocation planning tool
Author
Martin Německý
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Filip Kirschner
Department
Summary
This bachelor thesis focuses on the project resource (employee) allocation problem, where the main
assignment criterion is the preferences of employees for projects. The constraint programming
technique is used here, which allows the allocation problem to be solved in a declarative way
using the constraint specification. The work also contains an analysis of the requirements, from
which the design and architecture of the application are based. The subsequent implementation
of the application is tested using the generated data for calculation time and solution quality.
ETCS - EVC - Reversing, shunting and post trip mode implementation
Author
Matěj Malý
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Martin Leso, Ph.D.
Department
Summary
This bachelor thesis extends the functionality of the ETCS simulator, which is being developed in collaboration with the Faculty of Transportation Sciences at CTU in Prague. ETCS is a united European train protection system. The focus of the thesis is the EVC component, which is the core of the on-board subsystem and is responsible for collection and evaluation of data from other components. The outcome of this thesis is the addition of modes reversing (mode used for reversing movements), shunting (mode used for shunting movements) and post trip (mode entered after emergency braking is over) to EVC. The thesis includes the design and description of the implementation of mode transitions and functionality in these modes. Furthermore, it describes how the solution was tested. The outcome of this thesis extends the possible scenarios that can be run in the simulator.
ETCS - EVC - Braking curves computation module
Author
Jiří Doležal
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Martin Leso, Ph.D.
Department
Summary
This bachelor's thesis deals with the European train security system ETCS, specifically the simulator of the mentioned security system, which is created in cooperation between the Faculty of Transport and the Faculty of Information Technologies of the Czech Technical University in Prague. The thesis focuses on the calculation of braking curves and the limits associated with them. The created solution calculates the train distance for a given speed and is thus an integral part of the mechanism that prevents the train from colliding with its surroundings. The benefit of this work is the comprehensibility and clarity of the braking curve code, which makes the module easy to use for other members of the project. Another advantage is the structuring of the code, which enables quality testing.
Relational database structure synchronization with GIT
Author
Tomáš Krupička
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Michal Valenta, Ph.D.
Department
Summary
The goal of this thesis is to analyze and create a solution for ways of using the Git versioning system for versioning and synchronization of changes in a database model, focused mainly on usage in a large-scale company environment. This thesis is based on an existing solution for synchronizing changes from a database to Git and other conventions and software already used in target environment. The thesis also designs a system as a whole using said existing solution and own created solution for deploying changes made in Git to a database. The final solution should allow an effective usage of the Git versioning tool and its extensions (like Azure Repos) and also account for possible complications that can arise from a heavier load of the system.
E-shop backend - supporting processes
Author
David Mareš
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Hunka
Department
Summary
The work focuses on expanding the backend part of a system for managing an e-shop. As part of the work, a thorough analysis of the currently used solution was conducted, which needed to be replaced due to the use of outdated technologies and high complexity, making maintenance and scaling difficult. The work consists of several parts, each of which brings something new and useful for managing the e-shop.
One of the key elements of this work is a tool for exporting data, which uses Doctrine ORM and a custom parser for composing database queries and creating files in selected data format. This tool was created with a focus on high configurability and security.
Another significant element of the work is the solution for automating processes. The created solution uses Symfony Command together with The ScheduleBundle package for scheduling and managing individual tasks.
Finally, the work deals with possible extensions of the created solution, especially the development of a user interface for creating configurations used by the data export tool, which was created as part of this work.
E-shop backend - shopping cart and order processing
Author
Nikita Golmgren
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Hunka
Department
Summary
This bachelor's thesis deals with systems of creating and processing orders in e-shops. In this thesis, a thorough analysis both of the topic and the current state of newly developed e-shop backend Porcupine from the company Jagu s.r.o. was conluded. Based on the result of the analysis, a shopping cart module was designed, using the practices of Domain-Driven Development and the MVC design pattern. The programming language PHP 8.1 with Symfony framework was used to implement the created design, which was then integrated into the Porcupine system and tested. The outcome of this thesis is a backend module for e-shops capable of creating orders from selected products.
Enemy recommendation algorithm for Dungeons and Dragons groups
Author
Matěj Mikušek
Year
2023
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. David Bernhauer, Ph.D.
Department
Summary
The content of this thesis is to design an algorithm for Dungeon Masters that will recommend
suitable enemies in the role-playing game Dungeons and Dragons (DnD). The thesis describes
the issue of choosing suitable enemies for specific parties, then analyzes the existing functional
solutions, especially web and mobile applications, which allow random generation of enemies
according to the specified party of players and other criteria. Furthermore, the work describes
research among Dungeon Masters, focusing on their satisfaction with the current solutions, their
view on the applicability of these solutions in practice, and suggestions for what an ideal algorithm
for generating enemies should take into account and enable. The algorithm was designed in the
work based on the results of the conducted surveys and analyzes in order to best help the Dungeon
Master in making decisions when choosing suitable enemies for his specific group of players and
their game characters. This was achieved in part by taking into account the abilities of individual
player characters and generated enemies in addition to the usual criteria such as character level
and enemy challenge rating. However, the biggest part of the correct functionality of the algorithm
is the use of genetic algorithm, where the created algorithm simulates the fight of a party of
players with individual groups of generated enemies and includes only those simulation results
that best match the required criteria in the resulting design of enemies for the Dungeon Master.
The conclusion of the work is the creation of a web application using the created algorithm, the
actual testing during real DnD games and a description of the possibilities of how this work can
be followed up in the future.
ETCS - Training facility - Train driver evaluation tool
Author
Jiří Čermák
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Kamil Dedecius, Ph.D.
Department
Summary
ETCS is a new security system that is implemented on more and more sections of railway lines in the Czech Republic.
This work proposes an approach for the classification of data recorded from a simulated ride and the automatic detection of the type of mistakes made.
The output of this work is a module for the lecturer's workstation, which is part of the ETCS simulator created by the Faculty of Information Technology at CTU.
First, the recorded data was analyzed and then a modified classification model was created, which is capable not only of the classification itself, but also of error detection.
ETCS - Project management and output quality control
Author
Martin Čáslavský
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Martin Leso, Ph.D.
Department
Summary
The goal of this thesis is to analyze the project management of the ETCS simulator and implement supportive programs to make development easier.
The thesis focuses on identifying current issues in project management and analyzing them to find effective solutions.
The implemented support programs include a script for time tracking and an extended JRU component with its own logging system.
This application, including the graphical user interface, has the potential to assist future students in developing new functionalities.
The thesis brings a new perspective to the project and raises questions regarding its future.
Backend for Dungeons and Dragons character creator with user created content
Author
Filip Čihák
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Marek Suchánek, Ph.D. et Ph.D.
Department
Summary
This bachelor thesis is concerned with the development of the backend server of a web application for creating characters for the game Dungeons & Dragons. The developed application allows to define custom game content such as character classes, spells and weapons. Players can add these elements to their character sheets to play as a given class or carry a given weapon, for example. The backend is implemented in Java using the Spring Boot framework and uses the MongoDB database system for data persistence. It provides a REST API which author Žaneta Trošková uses in her bachelor thesis for the frontend part of the application. Finally, the application is tested and possibilities for future extensions of the system are suggested.
System for detection and monitoring of web applications versions in internal networks
Author
Petr Morávek
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Václav Podlipný
Department
Summary
This bachelor's thesis deals with the problematic of detection and monitoring web applications deployed on internal network environments with Debian operation system. In the analysis part, tools that enable network range scanning and automatic detection of web applications were researched. Based on the results of the analysis, a design of the application was created to meet the requirements of the client, which is the company Quanti s. r. o. The application is able to explore the specified network range and detect web applications running in it. For discovered web applications, the tool is able to detect their current version if the particular web application is part of the supported list. The user is able to extend the list and define additional rules to be used for further detection of web applications. The tool is also able to compare the current version with the latest available versions and thus inform the user about the appropriate update. The application explores the device using SSH technology and retrieves data from web addresses using web scraping, but its source code is designed to be easily extended by other methods in the future. The application is implemented in Python and communicates with the user using an API created using the Flask framework. The application was properly tested in an isolated environment that simulated a network space with running web applications.
Web frontend for Dungeons and Dragons character creator
Author
Žaneta Trošková
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Marek Suchánek, Ph.D. et Ph.D.
Department
Summary
This thesis deals with the creation of a frontend application for character creation in Dungeons and Dragons. Existing tools for D&D character creation are analyzed and the requirements are consulted with a specific player group. Based on this, the user interface of the application is designed using Figma. The application is implemented in the React framework and uses the Material-UI library to create UI components. The created application communicates via an API interface with the backend application, which is implemented by Filip Čihák in his bachelor thesis. Manual and automated tests are created to ensure the quality of the application. At the end of the thesis, usability testing is performed and individual improvements are suggested for future development of the application.
ETCS - New architecture design and refactoring of DMI
Author
Tereza Neprašová
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Chludil
Department
Summary
This thesis focuses on a new architectural design and update of the DMI component, which is part of the ETCS simulator. The simulator project is developed in cooperation between the Faculty of Information Technology and the Faculty of Transport of CTU and is based on a real European train control system ETCS. The DMI component is a graphical display the train driver interacts with. Based on the analysis of the deficiencies of the former DMI architecture and the architecture of the remaining simulator components, this thesis presents a new design focusing mainly on the future extensibility and sustainability of the application. It also updates the DMI from version 2.3.0 to 4.0.0 according to the official documentation of the European Union. The output of this thesis is the implementation of the application core, communication with other simulator components, the creation of a graphical framework for the user interface and the implementation of several DMI windows. The application is both tested and documented. The main contribution of the thesis is a significant facilitation and acceleration of future application development and architectural unification with other components of the simulator.
ETCS - New architecture design and refactoring of RBC
Author
Ondřej Veselý
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
doc. Ing. Martin Leso, Ph.D.
Department
Summary
This bachelor thesis focuses on the analysis and reimplementation of a key component of the
RBC from the ETCS system. ETCS is the European Train Control System and this thesis
is part of a simulator that is being developed in collaboration with the Faculty of Transport.
The main objective is extensibility and code quality. The focus is on the analysis of the existing
implementation and compliance with ERA-ERTMS specifications. The result is a completely
rewritten RBC component in c++ language, a unified architecture between already existing other
ETCS components and defined common messages in the CEM repository. This work was crucial
to move the ETCS project forward due to the many inconsistencies between the components and
the need for them to work together. This work has made the components much more extensible,
and more importantly, they run on the same architecture, so understanding how they work and
then extending them is much easier.
The Secret of Meenees - Study of procedural generation algorithms
Author
Michal Sládek
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Radek Richtr, Ph.D.
Department
Summary
This bachelor thesis focuses on implementing 3 distinct algorithms that are then used to procedurally generate a certain type of video game level, a dungeon, for the game The secret of Meenees. This game was initially created as a team project for the BI-VHS course. The various methods of procedurally generating dungeons are analyzed, as well as other games that implement them. Then, 3 various methods are chosen, based on the requirements of the game. These are designed and implemented in the form of scripts for the Unity game engine. Finally, the levels that were produced by these generators are tested and evaluated by team members to determine their quality.
WebAssembly Memory Debugger
Author
Jakub Mareš
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Ladislav Vagner, Ph.D.
Department
Summary
The ability to compile programs written in manually managed languages such as C and C++ to WebAssembly has introduced the need for a WebAssembly memory debugger similar to Valgrind's Memcheck. The result of this thesis is Wasm Doctor, a WebAssembly memory debugger inspired by Valgrind's Memcheck. It focuses on the detection of undefined value bugs and the detection of dynamic memory allocation bugs. The detection of memory bugs works best for C programs compiled by Clang, as the compiler choice affects some structures inside the executable, that Wasm Doctor uses for the detection of bugs. Immediate application of this memory debugger is in the Trainer education tool used during Programming and Algorithmics 1 and 2 courses at FIT CTU. The memory debugger utilizes shadow memory for undefined value bug detection. Instead of instrumentation, as is the case for Valgrind, Wasm Doctor uses an existing interpreter --- Toywasm. This thesis also outlines the unique problems associated with the analysis of WebAssembly executables.
Turn based role playing game in Godot engine
Author
Minh Hieu Ta
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Adam Vesecký
Department
Summary
This bachelor's thesis deals with the implementation of a turn-based game in the Godot Engine
4.2 with the use of C# as the main programming language. The thesis follows the development
process from conception to design and implementation. The result of the work is an example
project to be used as a learning resource for people with basic-to-intermediate knowledge of
programming, but no experience with game development.
Trainer - Quiz and self-testing modules for learning web portal
Author
Matej Pašek
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Zikán
Department
Summary
The aim of this thesis is to describe the process of developing a quiz and test module for the Trainer web portal, which is used to support the teaching of selected courses at the CTU FIT. This process is carried out in several phases - analysis, design, implementation and subsequent testing. For the development of the server part of the application, which exposes the REST API, the Spring framework is used, for the development of the web interface the VueJS framework is used. Once developed, these modules are then integrated into the Trainer system, both the server part and the web interface, thus achieving the main goal of this thesis - to create and integrate these modules into the system so that they can be subsequently used in tutorials (or teaching in general) or for individual study. The Trainer application, along with these modules, is continuously being developed and is available on a website, after logging in with a CTU identity. The API documentation for these modules can also be seen in the attachments.
Behavior tree editor
Author
Michael Moyal
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Bc. Ondřej Brém, MSc.
Department
Summary
This bachelor thesis addresses the need for a behavior tree development tool with a modern user interface. Firstly there is an analysis of existing solutions paired with a short introduction to the field of behavior trees. The main focus of this thesis is the design and development of a new desktop app designed according to the requirements of the developers than use these tools everyday. The result is a prototype of the potential new user interface implementing some of the developers' requirements. This prototype is then user tested with the previously mentioned developers and the findings are summarized. Further development options are then also proposed.
Forged in Lies - levels, environment and atmosphere
Author
Martin Felkl
Year
2024
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Radek Richtr, Ph.D.
Department
Summary
This thesis is concerned with the design of the environment and atmosphere of the levels of Forged in Lies, which was created as a group project in the BI-VHS course. Two programs, Blender and Unreal Engine 5, were used to achieve the objectives of the thesis. Blender was used to create 3D models of the walls, floors and other objects that make up the rooms used to create the levels of the game. The rest of the work was then processed in Unreal Engine 5. To achieve more variability in the levels, a procedural generator was created, inspired by the algorithm from the game Binding of Isaac. This generator uses a predefined set of rooms, which it stacks according to various criteria into one larger level. The set of rooms was created by combining 3D models, materials, lighting and other visual effects to complete the resulting atmosphere, which is also one of the main issues addressed in the thesis. The models, materials, visual effects and other elements created in this thesis were also used to enhance the levels predating this thesis.
Natural language tool for managing Google services
Author
Danil Makarov
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Marek Suchánek, Ph.D. et Ph.D.
Department
Summary
This bachelors thesis focuses on the design and implementation of an extension for the Google Chrome web browser, which allows users to interact with key Google services Calendar, Tasks, and Gmail using natural language. The aim of the work is to simplify and automate the management of these ser- vices through communication with a chatbot via a web interface. To achieve this goal, modern technologies in the field of artificial intelligence and web development were utilized. The core of the system is a large language model, whose interaction is managed using the LangChain framework. To enable communication with the chatbot, the ReAct method (Reasoning and Acting) was implemented, using the few-shot prompting technique. The extension communicates with official Google APIs, allowing users to perform operations such as creating, reading, updating, and deleting events and tasks, as well as sending emails. The result is a functional prototype that demonstrates the potential of conversational AI assistants to integrate and simplify work with commonly used services within the Google ecosystem.
Web application for organizing sailing races
Author
Jan Boťa
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Marek Bělohoubek
Department
Summary
This thesis deals with the creation of a web application designed to organize sailboat races. The application is divided into two main parts: a backend server implemented in Java using the Spring Boot framework, and a frontend client written in TypeScript using the React library. Communication between these tiers is provided via a REST API. The application enables complete management of sailboat races, including scheduling races, registering sailboats for individual races, recording results, and subsequently evaluating the overall standings according to the rules of a given race.
The result of this work is a deployable, containerized application that is ready for initial user testing.
E-learning web application with AI
Author
Vojtěch Kuchař
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Petr Pauš, Ph.D.
Department
Summary
This bachelor thesis focuses on the design and implementation of a prototype
web application called Quizee, which integrates key features for effective learning into a single tool. The application allows users to create and manage
courses, notes, and flashcards while utilizing artificial intelligence to automate
processes such as importing study materials in TXT and PDF formats.
The theoretical part of the thesis focuses on analyzing user needs, reviewing
existing solutions, and specifying requirements for the application. The practical part describes the architecture design, prototype implementation, and user
testing. Modern technologies were used for the development of the application,
including the Next.js framework for the frontend, Appwrite as a Backend-as-a-Service, and Google Gemini artificial intelligence. The result an application
was deployed to production and thoroughly tested.
2D physics based puzzle game
Author
Lukáš Bubínek
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Petr Pauš, Ph.D.
Department
Summary
This bachelor's thesis focuses on the development of a prototype physics engine that combines rigid bodies and fluids. Using this engine, a simple game is created to demonstrate the engine's capabilities. The theoretical part provides a review of the use of physics in games and describes the techniques used for simulating rigid bodies and fluids. The practical part deals with the implementation of the prototype in the Rust programming language and the creation of levels for the resulting game.
Trainer - importing files from GitLab
Author
Daria Tiurina
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Petr Pauš, Ph.D.
Department
Summary
The aim of this thesis is to describe the process of designing and implementing a tool that allows for import from Gitlab for the existing Trainer portal, which is used to support the teaching of programming subjects at the CTU FIT. Thesis describes the development in several stages analysis, design, implementation and testing. For the development of the feature were used technologies like Vue.js for the frontend development and Spring framework with Kotlin for the backend development. In the process of development, this feature was integrated with the existing modules of the Trainer system, server and web interface, therefore achieving the goal of the thesis by developing the system of import from Gitlab and improving the user experience with the system. The Trainer application is accessed by the CTU identity on the website.
Trainer - gamification of learning web portal
Author
Kseniya Kukhmar
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Stanislav Kuznetsov, Ph.D.
Department
Summary
This bachelor thesis focuses on the adaptation of the Trainer studying portal
to the principles of gamification of the education process. The project explores gamification approaches and components, analyzes elements applicable
to the portal and ways of interacting with them, and integrates them consistently with the existing system elements. Therefore the implementation is also
done using instruments respective to the existing portal, which include Kotlin,
Vue.js. The resulting features provide such functionality as student leaderboard for the studying course, level system with visual attributes, awards for
studying accomplishments.
Trainer - Development of Additional Educational Tools
Author
Leonid Yakubovskiy
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Lukáš Bařinka
Department
Summary
This thesis tackles the diiculties encountered by first-year students in the Programming and
Algorithmics 1 course at the Faculty of Information Technology, Czech Technical University
in Prague. A student questionnaire identified critical areas of struggle, such as recursion, time
complexity, input handling, and code quality. To address these, three educational tools were pro-
posed for integration into the existing Trainer platform: an interactive tool for mastering printf
and scanf format strings, an automated code review assistant, and a time complexity analyzer.
The thesis elaborates on the design, implementation, and testing of the scanf tool prototype,
which enables students to experiment with format strings and observe their behavior across
various inputs. This tool offers explanations and debugging support, improving students under-
standing of input handling in C. Future efforts will focus on enhancing this tool and developing
the remaining proposed tools to further enrich student learning.
Interactive debugger with semantic visualization
Author
Tomáš Čajan
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Ladislav Vagner, Ph.D.
Department
Summary
This thesis documents the design and development process of Aili - a prototype visual debugger and demonstration tool for algorithm education. The tool is designed with the intent to present programs using visualizations that correspond to what each program conceptually represents. Users may provide a description of the desired graphical representation. Debuggee and renderer are
separated by an abstract, language-independent interface, making Aili adaptable to debug applications written in any language. A simple proof-of-concept C debugger is constructed, and a selection of programs is visualized to demon strate the various representations supported by the tool.
Trainer - Rework of the teacher's interface
Author
Pavel Kubica
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Ondřej Wrzecionko
Department
Summary
The aim of this thesis is to analyze the teacher interface of the Trainer educational support web application, find out where it falls short
in terms of usability, design an interface that solves the discovered issues, implement this new version along with a supporting user manual, and
test it to ensure good usability.
This is achieved in several phases -- first, analysis of the existing interface is carried out both heuristically and by taking feedback from users.
In the design stage, principles are laid out for the application's interface, and several pages are totally redesigned. All of the design work is then
implemented into the existing application. Finally, the new interface is tested and evaluated, once again both by users and heuristically.
The result is a significant improvement to the Trainer's usability.
Elementalist - game about combining magic spell elements
Author
Kryštof Lacka
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Petr Pauš, Ph.D.
Department
Summary
This thesis explores designing and implementing a prototype for a video game about combining elements to create magic instead of directly casting spells. This process starts with research, where four games about magic and one that focuses on a good tutorial are analyzed. The next chapter discusses different options for technologies that are used. The two main technologies for this thesis are a game engine and a 3D editor. The game engine Godot, with statically typed GDScript, and the Blender 3D editor are chosen. Before the implementation, it is necessary to specify and design the mechanics in more detail. Design is done in the form of a Game Design Document. With the details specified, it is possible to implement the prototype itself. This prototype is then tested by users.
Frontend for Sinis - students' dorm club Sincoolka system
Author
Vojtěch Dohnal
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Marek Bělohoubek
Department
Summary
This bachelor's thesis is focused on design and implementation of a frontend web application for a new information system that may be used by the Sincoolka student club. It builds on a previous thesis, which was concerned by the implementation of the backend for the new system. Functional requirements were taken from this previous thesis. Furthermore, they were validated and updated. The tool used to create a design of the user interface for the system is the web application Figma. The implementation of the frontend application was carried out in the JavaScript framework Vue.js and Vuetify, which is built on top of Vue.js. The benefit of this thesis is providing the new information system with a user interface. The whole system will replace the one that is currently used and hence will enhance the quality of life of not just the active members of the Sincoolka student club but also all of the residents of Sinkule and Dejvická dormitories.
Trainer - Image output module
Author
Serhii Lisnychyi
Year
2025
Type
Bachelor thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Petr Pauš, Ph.D.
Department
Summary
This bachelors thesis focuses on the development of a module for the Trainer
application that adds image output functionality and integrates libraries that
enable the creation of the image itself. Various technologies were used to solve
the selected problem. The libraries are written in the C programming language,
and their compilation was carried out using WebAssembly System Interface
(WASI). The module for Trainer was developed using Vue.js, and its desktop
version was built with the help of Tauri.
Master theses
King Karel - An Educational Programming Puzzle Game
Author
Jan Bittner
Year
2022
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Petr Pauš, Ph.D.
Department
Summary
The master's thesis deals with the development of a prototype of the game King Karel -- an educational programming puzzle game. The thesis describes the process of analysis, design, and implementation of the mentioned game, emphasizing the design of the architecture of individual parts. The client part is created using the Flutter framework, and the server part is created using the ASP.NET Web API framework.
Object-relational mapping for database access in JavaScript
Author
Ladislav Louka
Year
2023
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jaroslav Šmolík
Department
Summary
In this thesis, we investigate the role of Object Relational Mapping (ORM) and query builder packages in JavaScript, focusing on the support of TypeScript. The study aims to compare various packages, assessing their flexibility and performance overhead to facilitate an informed decision-making process for developers. Such comparison is important due to modern applications' proliferation of database access.
Pressure vessel and technology review management system
Author
Pavel Jordán
Year
2024
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Monika Borkovcová, Ph.D.
Department
Summary
This diploma thesis deals with the design and implementation of a new system for the review management of pressure vessels and other technology. I create a tailor-made system for the company where I work at. I begin with a description of the revision domain and the necessary theory. I go through existing solutions on the market and then perform complete analysis of the functions of both the current solution and new functions. Based on this analysis, an application design is created with an emphasis on simplicity and ease of use. The next part of this work is devoted to the implementation of the system, followed by its testing and verification of use. The work is completed by deploying the system for use.
Trainer - Web portal to support teaching programming
Author
Ondřej Wrzecionko
Year
2024
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Zikán
Department
Summary
The thesis deals with analysis, design, implementation, deployment and testing of web portal to support teaching programming, done in two iterations. Portal consists of frontend implemented in Vue.js technology and supporting backend in Spring Web technology. System enables teachers to create programming tasks and organise them in lessons, weeks and courses. Students complete the tasks and if needed, they can consult their solutions. System provides automatic or manual task evaluation, summary of student progress in lessons and anonymized projection of student solutions.
System is deployed on FIT CTU infrastructure and throughout first two semesters, it has been used in 2 subjects, 16 parallels by 768 students and 17 teachers, who have created over 350 tasks. Both students and teachers rate the system positively and in future, it is planned to be used in another subjects and on other schools.
Study on using language models in storytelling games
Author
Jiří Macháček
Year
2024
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Radek Richtr, Ph.D.
Department
Summary
This diploma thesis aims to explore the use of large language models to tell game stories through non-player characters. State-of-the-art techniques for using large language models allow one to freely interact with the game characters and use them to tell consistent and coherent stories. This thesis analyses the currently best-rated large language models, the techniques for their use in practice and the criteria for their evaluation. The theoretical part also includes traditional practices for creating believable narratives and characters. The practical result of this thesis is a playable prototype named HaLLMark, which is implemented in the Unity game engine. The prototype's primary purpose is to compare large language models in terms of the quality of the generated stories and the quality of the impersonation of the game characters. The playable prototype is then used for this exact purpose during testing to evaluate the currently best-performing existing large language models. The HaLLMark prototype does not lag behind from a gameplay perspective. Testers especially praised the novel concept of the game and the fact that the large language models are able to stick to the story they generate consistently.
Crowd sourcing in video game development
Author
Zdeněk Havelka
Year
2025
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Adam Vesecký
Department
Summary
The aim of this thesis is to explore the area of crowdsourcing with a focus on the video game industry. The thesis builds a theoretical foundation based on real-world examples of crowdsourcing usage and examines the potential in this field that has not been fully realized. On this foundation, a prototype platform has been designed and implemented, enabling the development of video games supported by the community. The prototype is then tested, and a proposal for its future expansion is provided.
Emphasis is placed on collaboration with the community, and managerial and ethical aspects of such development are also discussed. The thesis describes and applies gamification techniques. Through the resulting prototype, a new paradigm for video game development is presented.
PC version of modern board game with computer opponent
Author
Vladimír Bačinský
Year
2025
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Bc. Ondřej Brém, MSc.
Department
Summary
This masters thesis focuses on the development of a digital version of the original board game Slovania Obchodníkmi with integrated artificial intelligence. Based on an initial analysis of game design and mechanics, the game rules were refined. The work further presents the design of the computer version of the game, including the development of artificial intelligence for opponents. The final part describes the implementation of the game in Tabletop Simulator, featuring a computer opponent that utilizes rule-based decision-making and heuristic strategies.
Web application for Presov's city volleyball league
Author
Stela Augustínová
Year
2025
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Jiří Chludil
Department
Summary
This thesis focuses on the analysis, design, and implementation of a web application for managing the amateur volleyball league in Prešov. The goal of the application is to simplify league organization and enhance the user experience for all stakeholders. It provides players with a clear match schedule, up-to-date standings, and other essential league information. For team captains, it offers new features such as team and roster management and match result submission. Administrators are given advanced tools that significantly reduce their administrative workload. The thesis includes a detailed analysis of the current situation and existing competing solutions. Based on the results of a user survey, both functional and non-functional requirements are defined, along with a domain model. The proposed solution follows a client-server architecture. The implementation of the web application follows the design phase and uses technologies specified in the non-functional requirements. The server is implemented in PHP using the Yii2 framework. The client side is built using JavaScript with jQuery and Bootstrap libraries. The thesis also presents the results of user testing, adjustments based on feedback, and the process of deploying the application. The final section outlines potential future development of the system.
Microsoft Office Add-in for Photo Management and AI-powered Tagging
Author
Jiří Doležal
Year
2025
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Marek Suchánek, Ph.D. et Ph.D.
Department
Summary
This thesis focuses on the development of the second generation of the Office add-in Fotobanka, designed for efficient management and insertion of approved visuals into Microsoft Office applications. The new version introduces a modern architecture and technologies that ensure higher security, stability, and efficiency of the entire system. The work emphasizes the restructuring of the original solution, process automation, and integration of advanced features to improve user experience and streamline visual content management.
Relational database visual querying and its gamification
Author
Emil Poľák
Year
2025
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Michal Valenta, Ph.D.
Department
Summary
This work examines existing solutions across different types of visual query tools for relational databases, and describes the design and implementation of an application serving as a tool for purely visual querying over relational SQL databases. This querying tool should also minimize the user's need to interact with SQL syntax.
The research has shown that the desired query method does not exist in any commercial products or SQL learning applications, and the only application found that uses the proposed visual query method is significantly limited by its functionalities.
Application and concept of purely visual querying were tested by voluntary test users.
Testing has shown that this concept of purely visual querying can be intuitive and easy to use, provided that the application's user interface is better tailored to this purpose and additional features are added to improve the tool's usability overall.
Thesis gallery
Author
David Mikulka
Year
2025
Type
Master thesis
Supervisor
Ing. Jan Matoušek
Reviewers
Ing. Lukáš Bařinka
Department
Summary
This diploma thesis focuses on the design and implementation of a prototype web application intended for presenting final academic theses created at the Faculty of Information Technology of CTU in Prague. The solution was developed iterativelyfrom the analysis of customer requirements (specifically, the PR department of FIT CTU), through a complete system design, to implementation and testing. The resulting platform offers management, editing, and publication of final theses in the form of attractive and comprehensible web articles using various interactive elements. The application provides a user interface with an interactive editor for content management. It also uses artificial intelligence to automatically propose article structure and generate textual sections based on the uploaded document. In this way, the platform simplifies the presentation process and enhances the accessibility of academic work for the general public. The system is built using Node.js, React, and PostgreSQL technologies. Testing confirmed the functionality and usability of the platform, indicating its potential for further development and deployment in a production environment.