For coders TYPO3 Tech Corner

Lesson cancellation - and now? New portal for the Bavarian school system.

Lesson cancellation - and now? New portal for the Bavarian school system.

For the Bavarian school system, we developed a new web app based on an existing but very outdated portal. The portal reports lesson cancellations throughout Bavaria and registered users are informed of new messages by e-mail. In addition to managing their own profile, users can subscribe to individual locations (usually districts in Bavaria) in order to receive only the notifications that are relevant to them.

The portal serves as a reliable source of information for radio stations and other media to inform the public in a timely manner. The application provides detailed messages that include a message type such as “Partial classes” or “Classes canceled” in addition to the time period and locations affected, as well as a rich text editor that can be used to add additional information to each message.

A rights management system allows users to either view messages for information purposes only or to actively create messages for specific locations. Rights are assigned to users via groups of administrators.

All notifications can be viewed via a clear dashboard and filtered by location, district and type - a functionality that is also accessible without an account, thus ensuring transparency and accessibility of information.

Under the hood

Although as a web agency we specialize in TYPO3, we deliberately decided against a content management system. The simplicity and directness of a dedicated web app outweighed the specific requirements of this project.

Technical background

We opted for the TALL stack - a modern and agile combination of TailwindCSS, AlpineJS, Laravel and Livewire, complemented by the FilamentPHP package. These technologies have enabled us to develop a responsive and user-friendly interface that is intuitive to use on both desktops and mobile devices, while also being cost-effective and quick to develop. Subsequent changes or adjustments can also be implemented very quickly.

TailwindCSS  offers us the possibility to create an appealing interface very easily and is also used by Filament for the numerous components.

AlpineJS gives our markup a minimalistic but powerful syntax, comparable to jQuery, but optimized for modern web development and perfectly suited for reactive user interaction.

Laravel, the heart of our backend, offers an elegant syntax and a variety of features that allow us to work quickly and efficiently. From authentication and authorization, ORM and database migrations to validation, notifications, a powerful template engine and email templates, Laravel offers a comprehensive solution for all modern web development requirements.

Livewire allows us to develop responsive components that provide an optimal user experience. Whether it's forms, tables, charts or file uploads, Livewire allows us to implement sophisticated features such as real-time validation, lazy loading and responsive interactions by communicating directly with the Laravel PHP backend with ease.

FilamentPHP deserves a special mention for providing us with the Panel Builder, Form Builder, Table Builder and Real-Time Notifications, a toolkit that allows us to quickly and efficiently create the admin panel and user interfaces. The ability to create powerful forms, tables, actions and notifications takes usability to a new level. Filament's high level of customization to our needs allowed us to develop a tailored solution that also provides an intuitive user experience.

Authentification and security

Another important aspect was the security of the application. The successful penetration test, which the portal passed at the first attempt, confirmed the security and robustness of our solution. Only two optional optimizations were made afterwards, which now guarantees a high level of security.


Laravel Breeze played a key role in the authentication and administration of user accounts. This lean but powerful Laravel package facilitated the implementation of a secure authentication system with integrated functions such as password reset and user settings.

E-Mail Templates

Laravel also makes it much easier to handle the email templates. Thanks to the ability to write email content in Markdown, we were able to ensure that the emails were displayed correctly on all clients and looked professional without much effort. This efficiency in the design process saved us valuable time, which we were then able to invest in fine-tuning the user experience.

Another step into the digital future

We look back on the realization of the portal with pride. Our technical expertise, combined with innovative solutions, has resulted in an efficient and user-friendly platform. We would like to thank the Bavarian school system for the opportunity to contribute to the digitalization of the educational landscape in Bavaria. We look forward to continuing to enrich digitalization with such projects in the future and to driving technological development forward.

"Code faster, look at the time" - does this sound familiar to you?

How about time and respect for code quality? Working in a team? Automated tests?

Join us

We are saying goodbye to Platform X

After careful consideration, we have decided to discontinue our activities on the X platform (formerly Twitter). We have followed the development of the platform in recent months and - like many...

Go to news

For the second time in a row - TYPO3 Award Winner 2024

An exciting week in Düsseldorf is behind us - and we are still reminiscing about T3CON 2024. Our in2code stand, four colleagues and an exciting Lightning Talk were all there. It was an all-round...

Go to news

LUX Marketing Automation: TYPO3 13, Darkmode and Livesearch

Just in time for the most important TYPO3 conference of the year, we are presenting the latest versions of our marketing automation solutions: LUX 38.0.0 and LUXenterprise 44.0.0. These updates not...

Go to news

Content Publisher Version 12 (for TYPO3 11 & 12): Faster, more modern and more user-friendly

The new version 12 of the Content Publisher for TYPO3 11 & 12 significantly improves the management and publication of content in TYPO3. The new version brings a number of technological innovations...

Go to news
happy man working on laptop

SQL: Show all tables sorted by size in descending order

Lately I've been using the SQL command more often to find out which tables in the TYPO3 database are the largest. I've published the snippet once.

Go to news

TYPO3 12 with CKEditor 5: Styles in a single selection

If you set a link in the RTE in TYPO3, you may have to choose between different link classes, for example to create buttons in the frontend. What's new in TYPO3 12 is that you can select not just one...

Go to news