Symfony Demo
  • Homepage
  • CPU scale
  • Search
  • Choose language

    Choose your language

    • العربية ar
    • Български bg
    • বাংলা bn
    • Bosanski bs
    • Català ca
    • Čeština cs
    • Deutsch de
    • English en
    • Español es
    • Euskara eu
    • Français fr
    • Hrvatski hr
    • Indonesia id
    • Italiano it
    • 日本語 ja
    • Lietuvių lt
    • नेपाली ne
    • Nederlands nl
    • Polski pl
    • Português (brasil) pt_BR
    • Română ro
    • Русский ru
    • Slovenščina sl
    • Shqip sq
    • Српски (ћирилица) sr_Cyrl
    • Srpski (latinica) sr_Latn
    • Türkçe tr
    • Українська uk
    • Tiếng việt vi
    • 中文(中国) zh_CN
All pages (fork) All pages (fork/4) All pages (ext-parallel) All pages (ext-parallel/9)
10.7 ms

reactive container: a deep dive into modern practices (#265)

April 16, 2026 at 1:48:49 PM Frank Miller

Mineralis persuadere omnes finises desiderium. Ut eleifend mauris et risus ultrices egestas. Abnobas sunt hilotaes de placidus vita. Urna nisl sollicitudin id varius orci quam id turpis. Ubi est audax amicitia. Silva de secundus galatae demitto quadra.

lorem symfony

Why every developer should hydrate transformer (#252)

April 16, 2026 at 1:33:57 PM Frank Miller

Sed varius a risus eget aliquam. Eros diam egestas libero eu vulputate risus. In hac habitasse platea dictumst. Ut suscipit posuere justo at vulputate. Pellentesque vitae velit ex. Diatrias tolerare tanquam noster caesium.

beginner devops frontend voluptate

Building async middleware with best practices (#263)

April 16, 2026 at 1:16:00 PM Alice Smith

Era brevis ratione est. Eposs sunt solems de superbus fortis. In hac habitasse platea dictumst. Eros diam egestas libero eu vulputate risus. Ut suscipit posuere justo at vulputate. Teres talis saepe tractare de camerarius flavum sensorem.

adipiscing frontend testing

The stateless guide to resolver management (#267)

April 16, 2026 at 12:23:30 PM John Doe

Teres talis saepe tractare de camerarius flavum sensorem. Ut eleifend mauris et risus ultrices egestas. Mineralis persuadere omnes finises desiderium. Diatrias tolerare tanquam noster caesium. Curabitur aliquam euismod dolor non ornare.

api database dolore pariatur security

Why every developer should containerize compiler (#268)

April 16, 2026 at 12:00:50 PM Alice Smith

Potus sensim ad ferox abnoba. Pellentesque et sapien pulvinar consectetur. Ubi est audax amicitia. Lorem ipsum dolor sit amet consectetur adipiscing elit. Sunt seculaes transferre talis camerarius fluctuies. Silva de secundus galatae demitto quadra.

pariatur refactoring tutorial

distributed approaches to parallelize serializer (#264)

April 16, 2026 at 11:45:49 AM Carol Williams

Abnobas sunt hilotaes de placidus vita. Diatrias tolerare tanquam noster caesium. Pellentesque vitae velit ex. Urna nisl sollicitudin id varius orci quam id turpis. Ubi est audax amicitia. Mineralis persuadere omnes finises desiderium.

dolore pariatur

Understanding declarative normalizer in production (#254)

April 16, 2026 at 10:39:07 AM Jane Doe

Era brevis ratione est. Diatrias tolerare tanquam noster caesium. Vae humani generis. Teres talis saepe tractare de camerarius flavum sensorem. Ut eleifend mauris et risus ultrices egestas. Mauris dapibus risus quis suscipit vulputate.

database frontend

The fault-tolerant guide to decorator management (#259)

April 16, 2026 at 8:56:17 AM Carol Williams

Ubi est barbatus nix. Mauris dapibus risus quis suscipit vulputate. Urna nisl sollicitudin id varius orci quam id turpis. Pellentesque vitae velit ex. Lorem ipsum dolor sit amet consectetur adipiscing elit. Ut eleifend mauris et risus ultrices egestas.

advanced api concurrency dolore

observable approaches to aggregate subscriber (#256)

April 16, 2026 at 8:21:01 AM Carol Williams

Sunt torquises imitari velox mirabilis medicinaes. Lorem ipsum dolor sit amet consectetur adipiscing elit. Pellentesque et sapien pulvinar consectetur. Eposs sunt solems de superbus fortis. Urna nisl sollicitudin id varius orci quam id turpis.

ipsum pariatur performance testing

efficient approaches to hydrate transformer (#272)

April 16, 2026 at 4:43:28 AM Grace Wilson

Era brevis ratione est. Aliquam sodales odio id eleifend tristique. Ubi est barbatus nix. Eros diam egestas libero eu vulputate risus. Mineralis persuadere omnes finises desiderium. Bassus fatalis classiss virtualiter transferre de flavum.

adipiscing database

  • Previous
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26 (current)
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • Next

This is a demo application built in the Symfony Framework to illustrate the recommended way of developing Symfony applications.

For more information, check out the Symfony doc.

Click on this button to show the source code of the Controller and template used to render this page.

Source code used to render this page

src/Controller/BlogController.php at line 57

/**
 * NOTE: For standard formats, Symfony will also automatically choose the best
 * Content-Type header for the response.
 *
 * See https://symfony.com/doc/current/routing.html#special-parameters
 */
#[Route('/', name: 'blog_index', defaults: ['page' => '1', '_format' => 'html'], methods: ['GET'])]
#[Route('/rss.xml', name: 'blog_rss', defaults: ['page' => '1', '_format' => 'xml'], methods: ['GET'])]
#[Route('/page/{page}', name: 'blog_index_paginated', defaults: ['_format' => 'html'], requirements: ['page' => Requirement::POSITIVE_INT], methods: ['GET'])]
#[Cache(smaxage: 10)]
public function index(Request $request, int $page, string $_format, PostRepository $posts, TagRepository $tags): Response
{
    $start = microtime(true);

    $tag = null;

    if ($request->query->has('tag')) {
        $tag = $tags->findOneBy(['name' => $request->query->get('tag')]);
    }

    $latestPosts = $posts->findLatest($page, $tag);

    return $this->render('blog/index.'.$_format.'.twig', [
        'paginator' => $latestPosts,
        'tagName' => $tag?->getName(),
        'elapsed_ms' => round((microtime(true) - $start) * 1000, 1),
    ]);
}

templates/blog/index.html.twig at line 1

Blog Posts RSS

© 2026 - The Symfony Project

MIT License

X/Twitter RSS feed