<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/vendor/feed/atom.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
                        <id>https://gummibeer.dev/blog/categories/laravel.atom</id>
                                <link href="https://gummibeer.dev/blog/categories/laravel.atom" rel="self"></link>
                                <title><![CDATA[laravel | Gummibeer]]></title>
                    
                                <subtitle>Feed of all &quot;laravel&quot; posts.</subtitle>
                                                    <updated>2026-04-24T00:00:00+00:00</updated>
                        <entry>
            <title><![CDATA[Custom Email Validation in Laravel]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2026/laravel-custom-email-validation" />
            <id>https://gummibeer.dev/blog/2026/laravel-custom-email-validation</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[How I extended Laravel's email rule to accept custom validator classes — the story behind the PR, and how to use it in real projects.]]>
            </summary>
                                    <category term="laravel" />
                        <category term="open-source" />
                        <updated>2026-04-24T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Geography in Laravel: retrieving geographical data]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2024/geography-in-laravel-part1" />
            <id>https://gummibeer.dev/blog/2024/geography-in-laravel-part1</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[How to retrieve an geographical data from OpenStreetMap and transform them into usable PHP objects.]]>
            </summary>
                                    <category term="laravel" />
                        <category term="postgresql" />
                        <category term="geography" />
                        <updated>2024-07-24T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Dynamic Route Model Binding in Laravel Eloquent]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2023/dynamic-route-model-binding" />
            <id>https://gummibeer.dev/blog/2023/dynamic-route-model-binding</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[Explore elegant solutions for resolving model binding, whether through named scopes for simplicity or custom query builders for precision.]]>
            </summary>
                                    <category term="laravel" />
                        <updated>2023-08-30T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Advanced Carbon Techniques in Laravel for Data Integrity]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2023/carbon-techniques-in-laravel" />
            <id>https://gummibeer.dev/blog/2023/carbon-techniques-in-laravel</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[Discover the advanced world of Carbon manipulation in Laravel. Building upon the foundation of Immutable Carbon, this article dives into expert techniques recommended by Alexander von Studnitz.]]>
            </summary>
                                    <category term="laravel" />
                        <updated>2023-08-28T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Using Discord roles for Laravel permissions]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2023/seamless-role-management-with-discord" />
            <id>https://gummibeer.dev/blog/2023/seamless-role-management-with-discord</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[How I made Discord the source of truth for our Laravel permissions instead of maintaining the same team roles twice.]]>
            </summary>
                                    <category term="laravel" />
                        <updated>2023-08-14T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[PHP-Doc in Blade-Views]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2020/phpdoc-in-blade-views" />
            <id>https://gummibeer.dev/blog/2020/phpdoc-in-blade-views</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[How to use PHP-doc tags for better autocompletion in Blade views.]]>
            </summary>
                                    <category term="laravel" />
                        <category term="blade" />
                        <updated>2020-12-19T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Blade-Component: Webmentions]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2020/blade-component-webmentions" />
            <id>https://gummibeer.dev/blog/2020/blade-component-webmentions</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[A simple Blade component to get all your webmentions.]]>
            </summary>
                                    <category term="laravel" />
                        <category term="blade" />
                        <updated>2020-12-17T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Telegram Newsletter Command]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2020/telegram-newsletter-command" />
            <id>https://gummibeer.dev/blog/2020/telegram-newsletter-command</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[A basic Laravel console command to promote a blog post via Telegram.]]>
            </summary>
                                    <category term="laravel" />
                        <category term="cli" />
                        <updated>2020-12-13T00:00:00+00:00</updated>
        </entry>
            <entry>
            <title><![CDATA[Human readable Intervals]]></title>
            <link rel="alternate" href="https://gummibeer.dev/blog/2020/human-readable-intervals" />
            <id>https://gummibeer.dev/blog/2020/human-readable-intervals</id>
            <author>
                <name><![CDATA[Tom Herrmann]]></name>
                <email><![CDATA[dev@gummibeer.de]]></email>

            </author>
            <summary type="html">
                <![CDATA[I will show you an easy way to write human readable intervals in your Laravel config and everywhere else.]]>
            </summary>
                                    <category term="php" />
                        <category term="laravel" />
                        <updated>2020-12-10T00:00:00+00:00</updated>
        </entry>
    </feed>
