> ## Documentation Index
> Fetch the complete documentation index at: https://developer.upsun.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Thomas di Luccio

> Articles written by Thomas di Luccio.

<div className="blog-card-grid">
  {/* Auto-generated by blog:generate — DO NOT edit manually */}

  <a href="/posts/releases/composer-2.9" className="blog-card group rounded-xl bg-card border-theme card-hover shadow-sm hover:shadow-md transition-all overflow-hidden flex flex-col">
    {`/images/posts/releases/composer-2.9/composer-2.9.webp` !== '' && (
          <div className="blog-card-img-wrap">
            <img src="/images/posts/releases/composer-2.9/composer-2.9.webp" alt="Composer 2.9 lands on Upsun PHP Images: Here’s what you need to know" className="blog-card-img" />
          </div>
        )}

    <div className="blog-card-body">
      <div className="flex items-center gap-2">
        {`releases` !== '' && (
                      <span className="text-xs font-semibold uppercase tracking-wider px-2 py-0.5 rounded-md bg-accent-badge border border-accent-soft text-accent">
                        releases
                      </span>
                    )}

        <span className="text-xs text-subtle">Thursday, December 25th 2025</span>
      </div>

      <h3 className="blog-card-title group-hover:text-accent transition-colors">Composer 2.9 lands on Upsun PHP Images: Here’s what you need to know</h3>
      <p className="blog-card-desc">Remote code execution vulnerability in Next.js 15.x and 16.x App Router requires immediate patching. Learn how to secure your applications.</p>
    </div>
  </a>

  <a href="/posts/releases/composable-image-embraces-real-world-diversity" className="blog-card group rounded-xl bg-card border-theme card-hover shadow-sm hover:shadow-md transition-all overflow-hidden flex flex-col">
    {`/images/posts/releases/composable-image-embraces-real-world-diversity/composable-image.webp` !== '' && (
          <div className="blog-card-img-wrap">
            <img src="/images/posts/releases/composable-image-embraces-real-world-diversity/composable-image.webp" alt="One project, many needs: How Composable Image embraces real-world diversity" className="blog-card-img" />
          </div>
        )}

    <div className="blog-card-body">
      <div className="flex items-center gap-2">
        {`releases` !== '' && (
                      <span className="text-xs font-semibold uppercase tracking-wider px-2 py-0.5 rounded-md bg-accent-badge border border-accent-soft text-accent">
                        releases
                      </span>
                    )}

        <span className="text-xs text-subtle">Thursday, December 11th 2025</span>
      </div>

      <h3 className="blog-card-title group-hover:text-accent transition-colors">One project, many needs: How Composable Image embraces real-world diversity</h3>
      <p className="blog-card-desc">Applications rarely fit inside a single tidy runtime box. They evolve through experiments, architectural shifts, quick MVP spikes that outlast their intended lifespan, and the continuous layering of new business needs.</p>
    </div>
  </a>

  <a href="/posts/use-cases/wordpress-performance-optimization-with-blackfire" className="blog-card group rounded-xl bg-card border-theme card-hover shadow-sm hover:shadow-md transition-all overflow-hidden flex flex-col">
    {`/images/posts/use-cases/wordpress-performance-optimization-with-blackfire/Meeting_Jonny_Harris.webp` !== '' && (
          <div className="blog-card-img-wrap">
            <img src="/images/posts/use-cases/wordpress-performance-optimization-with-blackfire/Meeting_Jonny_Harris.webp" alt="Meeting Jonny Harris: WordPress performance optimization with Blackfire" className="blog-card-img" />
          </div>
        )}

    <div className="blog-card-body">
      <div className="flex items-center gap-2">
        {`use-cases` !== '' && (
                      <span className="text-xs font-semibold uppercase tracking-wider px-2 py-0.5 rounded-md bg-accent-badge border border-accent-soft text-accent">
                        use-cases
                      </span>
                    )}

        <span className="text-xs text-subtle">Tuesday, April 16th 2024</span>
      </div>

      <h3 className="blog-card-title group-hover:text-accent transition-colors">Meeting Jonny Harris: WordPress performance optimization with Blackfire</h3>
      <p className="blog-card-desc">Jonny Harris is a WordPress core contributor and committer based in the UK and a member of the WordPress Performance</p>
    </div>
  </a>

  <a href="/posts/unknown/infrastructure-metrics-for-all-professional-projects" className="blog-card group rounded-xl bg-card border-theme card-hover shadow-sm hover:shadow-md transition-all overflow-hidden flex flex-col">
    {`/images/posts/unknown/infrastructure-metrics-for-all-professional-projects/infrastructure-metrics-for-all-professional-projects.webp` !== '' && (
          <div className="blog-card-img-wrap">
            <img src="/images/posts/unknown/infrastructure-metrics-for-all-professional-projects/infrastructure-metrics-for-all-professional-projects.webp" alt="Infrastructure Metrics available for all Professional projects" className="blog-card-img" />
          </div>
        )}

    <div className="blog-card-body">
      <div className="flex items-center gap-2">
        {`platformsh-blog` !== '' && (
                      <span className="text-xs font-semibold uppercase tracking-wider px-2 py-0.5 rounded-md bg-accent-badge border border-accent-soft text-accent">
                        platformsh-blog
                      </span>
                    )}

        <span className="text-xs text-subtle">Tuesday, May 3rd 2022</span>
      </div>

      <h3 className="blog-card-title group-hover:text-accent transition-colors">Infrastructure Metrics available for all Professional projects</h3>
      <p className="blog-card-desc">Gain insight into your application's behavior with observability and metrics on Platform.sh. Monitor CPU, RAM, disk space, and more for informed decisions.</p>
    </div>
  </a>
</div>
