# Upsun Developer: Other Posts

> Upsun Developer — documentation, guides, and more.

## Posts

- [The research is in: your AGENTS.md is probably too long](https://developer.upsun.com/posts/ai/agents-md-less-is-more.md): Research shows comprehensive AGENTS.md files actually hurt coding agent performance. Learn why less is more and how to build context files that work.
- [AI Weekly Review - Feb. 17th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-02-17.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Feb. 23th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-02-23.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Mar. 2nd 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-03-02.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Mar. 9th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-03-09.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Mar. 16th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-03-16.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Mar. 23rd 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-03-23.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Mar. 30th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-03-30.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Apr. 7th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-04-07.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Apr. 13th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-04-13.md): A press, Youtube and Github review of everything AI
- [AI Weekly Review - Apr. 27th 2026](https://developer.upsun.com/posts/ai/aiweekly-2026-04-27.md): A press, Youtube and Github review of everything AI
- [Git worktrees for parallel AI coding agents](https://developer.upsun.com/posts/ai/git-worktrees-for-parallel-ai-coding-agents.md): Learn how git worktrees enable parallel AI agent workflows, their limitations, and what an ideal orchestration tool needs.
- [How to choose a code index for your coding agent](https://developer.upsun.com/posts/ai/how-to-choose-a-code-index-for-your-coding-agent.md): Compare Graft and roam-code on a real Go, TypeScript, Swift, and SQL codebase to evaluate context coverage, retrieval quality, and change analysis in practice.
- [Making coding agents (Claude Code, Codex, etc.) reliable](https://developer.upsun.com/posts/ai/making-coding-agents-reliable.md): The bottleneck for AI coding agents isn't model capability. It's your verification infrastructure. Here's how to fix that.
- [How to Host OpenCode on Upsun](https://developer.upsun.com/posts/ai/opencode-on-upsun.md): Deploy an OpenCode AI coding agent on Upsun with a single git push. This tutorial covers configuration, persistent storage, LLM API keys, and remote MCP server integration.
- [How to slash OpenCode Token costs by 90% on Upsun](https://developer.upsun.com/posts/ai/opencode-token-optimization.md): Cut your OpenCode token usage by up to 90% on Upsun with three community plugins: OpenSlimedit, opencode-dcp, and opencode-snip. Step-by-step guide to install and configure them on your existing deployment, with benchmarks, troubleshooting, and best practices.
- [Prompts are the new legacy code](https://developer.upsun.com/posts/ai/prompts-are-the-new-legacy-code.md): Dispatch's code review agent lost 80% of its prompt and four sub-agents. Same model, same quality, cost more than halved, 25% faster. Here's the method.
- [Your agents are stuck on localhost. Upsun isn't.](https://developer.upsun.com/posts/ai/stuck-on-localhost.md): Coding agents made engineers faster, but cycle time hasn't budged. Background agents running on GitHub, GitLab, and Claude Code can break the bottleneck by producing PRs that Upsun deploys and validates automatically. A practical guide to setting it up with real YAML configs, infrastructure-as-code…
- [Introducing the Upsun MCP server: bring Upsun into your LLMs](https://developer.upsun.com/posts/ai/upsun-mcp-announcement.md): Manage your Upsun infrastructure directly through AI assistants with our new Model Context Protocol server - now in beta at mcp.upsun.com
- [Will AI make software companies worthless?](https://developer.upsun.com/posts/ai/will-ai-make-software-companies-worthless.md): If anyone can build software with AI, do software companies still matter? The answer is more nuanced than you might think.
- [Aaron Collier](https://developer.upsun.com/posts/authors/aaron-collier.md): Articles written by Aaron Collier.
- [Aaron Dudenhofer](https://developer.upsun.com/posts/authors/aaron-dudenhofer.md): Articles written by Aaron Dudenhofer.
- [Ana Cidre](https://developer.upsun.com/posts/authors/anacidre.md): Articles written by Ana Cidre.
- [Andoni Auzmendi](https://developer.upsun.com/posts/authors/andoni.md): Articles written by Andoni Auzmendi.
- [Andrei (Alex) Taranu](https://developer.upsun.com/posts/authors/andrei-taranu.md): Articles written by Andrei (Alex) Taranu.
- [Andrew Melck](https://developer.upsun.com/posts/authors/andrew-melck.md): Articles written by Andrew Melck.
- [Augustin Delaporte](https://developer.upsun.com/posts/authors/augustin-delaporte.md): Articles written by Augustin Delaporte.
- [Carl Smith](https://developer.upsun.com/posts/authors/carl-smith.md): Articles written by Carl Smith.
- [Cati Mayer](https://developer.upsun.com/posts/authors/cati-mayer.md): Articles written by Cati Mayer.
- [C Trinkwon](https://developer.upsun.com/posts/authors/catplat.md): Articles written by C Trinkwon.
- [chadcarlson](https://developer.upsun.com/posts/authors/chadcarlson.md): Articles written by chadcarlson.
- [Chad Carlson](https://developer.upsun.com/posts/authors/chadwcarlson.md): Articles written by Chad Carlson.
- [Chris Yates](https://developer.upsun.com/posts/authors/chris-yates.md): Articles written by Chris Yates.
- [Christian Sieber](https://developer.upsun.com/posts/authors/christian-sieber.md): Articles written by Christian Sieber.
- [Christopher Lockheardt](https://developer.upsun.com/posts/authors/christopher-lockheardt.md): Articles written by Christopher Lockheardt.
- [Christopher Skene](https://developer.upsun.com/posts/authors/christopher-skene.md): Articles written by Christopher Skene.
- [chrisyates](https://developer.upsun.com/posts/authors/chrisyates.md): Articles written by chrisyates.
- [Chuck Morgan](https://developer.upsun.com/posts/authors/chuck-morgan.md): Articles written by Chuck Morgan.
- [Crell](https://developer.upsun.com/posts/authors/crell.md): Articles written by Crell.
- [Damz](https://developer.upsun.com/posts/authors/damz.md): Articles written by Damz.
- [David Bonachera](https://developer.upsun.com/posts/authors/davidbonachera.md): Articles written by David Bonachera.
- [Ahmet Faruk Dereli](https://developer.upsun.com/posts/authors/dereliahmet1.md): Articles written by Ahmet Faruk Dereli.
- [Jonas Kröger](https://developer.upsun.com/posts/authors/devicezero.md): Articles written by Jonas Kröger.
- [diogo-sousa](https://developer.upsun.com/posts/authors/diogo-sousa.md): Articles written by diogo-sousa.
- [dman](https://developer.upsun.com/posts/authors/dman.md): Articles written by dman.
- [Doug Goldberg](https://developer.upsun.com/posts/authors/doug-goldberg.md): Articles written by Doug Goldberg.
- [Duncan Naves](https://developer.upsun.com/posts/authors/duncan-naves.md): Articles written by Duncan Naves.
- [Erika Bustamante](https://developer.upsun.com/posts/authors/erika-bustamante.md): Articles written by Erika Bustamante.
- [Florent Huck](https://developer.upsun.com/posts/authors/flovntp.md): Articles written by Florent Huck.
- [Fred Plais](https://developer.upsun.com/posts/authors/fred-plais.md): Articles written by Fred Plais.
- [Paul Gilzow](https://developer.upsun.com/posts/authors/gilzow.md): Articles written by Paul Gilzow.
- [Guillaume Moigneu](https://developer.upsun.com/posts/authors/gmoigneu.md): Articles written by Guillaume Moigneu.
- [Augustin Delaporte](https://developer.upsun.com/posts/authors/guguss.md): Articles written by Augustin Delaporte.
- [Ivana Kotur](https://developer.upsun.com/posts/authors/ivana-kotur.md): Articles written by Ivana Kotur.
- [Mark Hanna](https://developer.upsun.com/posts/authors/jackrabbithanna.md): Articles written by Mark Hanna.
- [Jared Wright](https://developer.upsun.com/posts/authors/jared-wright.md): Articles written by Jared Wright.
- [Jessica Orozco](https://developer.upsun.com/posts/authors/jessica-orozco.md): Articles written by Jessica Orozco.
- [Joey Stanford](https://developer.upsun.com/posts/authors/joey-stanford.md): Articles written by Joey Stanford.
- [John Grubb](https://developer.upsun.com/posts/authors/john-grubb.md): Articles written by John Grubb.
- [jrmy-deruss](https://developer.upsun.com/posts/authors/jrmy-deruss.md): Articles written by jrmy-deruss.
- [Kathryn Frazer](https://developer.upsun.com/posts/authors/kathryn-frazer.md): Articles written by Kathryn Frazer.
- [Kemi Elizabeth Ojogbede](https://developer.upsun.com/posts/authors/kemiojo.md): Articles written by Kemi Elizabeth Ojogbede.
- [Kieronsambrook Smith](https://developer.upsun.com/posts/authors/kieronsambrook-smith.md): Articles written by Kieronsambrook Smith.
- [kotnik](https://developer.upsun.com/posts/authors/kotnik.md): Articles written by kotnik.
- [Laurent Arnoud](https://developer.upsun.com/posts/authors/laurent-arnoud.md): Articles written by Laurent Arnoud.
- [Jérôme Vieilledent](https://developer.upsun.com/posts/authors/lolautruche.md): Articles written by Jérôme Vieilledent.
- [Lyly Lepinay](https://developer.upsun.com/posts/authors/lyly-lepinay.md): Articles written by Lyly Lepinay.
- [Manauwar Alam](https://developer.upsun.com/posts/authors/manauwar-alam.md): Articles written by Manauwar Alam.
- [Matthias Van Woensel](https://developer.upsun.com/posts/authors/matthias-van-woensel.md): Articles written by Matthias Van Woensel.
- [Maz Mohammadi](https://developer.upsun.com/posts/authors/maz-mohammadi.md): Articles written by Maz Mohammadi.
- [Natalie Harper](https://developer.upsun.com/posts/authors/natalie-harper.md): Articles written by Natalie Harper.
- [Nicolas Gommenginger](https://developer.upsun.com/posts/authors/ngommenginger.md): Articles written by Nicolas Gommenginger.
- [Nick Hardiman](https://developer.upsun.com/posts/authors/nick-hardiman.md): Articles written by Nick Hardiman.
- [Nickanderegg](https://developer.upsun.com/posts/authors/nickanderegg.md): Articles written by Nickanderegg.
- [Nicolas Grekas](https://developer.upsun.com/posts/authors/nicolas-grekas.md): Articles written by Nicolas Grekas.
- [Ori Pekelman](https://developer.upsun.com/posts/authors/ori-pekelman.md): Articles written by Ori Pekelman.
- [oripekelman](https://developer.upsun.com/posts/authors/oripekelman.md): Articles written by oripekelman.
- [Otavio Santana](https://developer.upsun.com/posts/authors/otavio-santana.md): Articles written by Otavio Santana.
- [Pawan Alwandi](https://developer.upsun.com/posts/authors/palwandi.md): Articles written by Pawan Alwandi.
- [Patrick Dawkins](https://developer.upsun.com/posts/authors/patrick-dawkins.md): Articles written by Patrick Dawkins.
- [Patrick Klima](https://developer.upsun.com/posts/authors/patrick-klima.md): Articles written by Patrick Klima.
- [Pjcdawkins](https://developer.upsun.com/posts/authors/pjcdawkins.md): Articles written by Pjcdawkins.
- [prineet-kaur-bhurji](https://developer.upsun.com/posts/authors/prineet-kaur-bhurji.md): Articles written by prineet-kaur-bhurji.
- [Prineet Kaurbhurji](https://developer.upsun.com/posts/authors/prineet-kaurbhurji.md): Articles written by Prineet Kaurbhurji.
- [Florian Margaine](https://developer.upsun.com/posts/authors/ralt.md): Articles written by Florian Margaine.
- [Ramanathanramakrishnamurthy](https://developer.upsun.com/posts/authors/ramanathanramakrishnamurthy.md): Articles written by Ramanathanramakrishnamurthy.
- [Rémi Lejeune](https://developer.upsun.com/posts/authors/remi-lejeune.md): Articles written by Rémi Lejeune.
- [Taras Kruts](https://developer.upsun.com/posts/authors/ribel.md): Articles written by Taras Kruts.
- [Robert Douglass](https://developer.upsun.com/posts/authors/robert-douglass.md): Articles written by Robert Douglass.
- [roland-molnar](https://developer.upsun.com/posts/authors/roland-molnar.md): Articles written by roland-molnar.
- [Sabri Helal](https://developer.upsun.com/posts/authors/sabri-helal.md): Articles written by Sabri Helal.
- [Shannon Vettes](https://developer.upsun.com/posts/authors/shannon-vettes.md): Articles written by Shannon Vettes.
- [Shawn Ogasawara](https://developer.upsun.com/posts/authors/shawn-ogasawara.md): Articles written by Shawn Ogasawara.
- [Shedrack Akintayo](https://developer.upsun.com/posts/authors/shedrack-akintayo.md): Articles written by Shedrack Akintayo.
- [Sophie Van Der Kindere](https://developer.upsun.com/posts/authors/sophie-van-der-kindere.md): Articles written by Sophie Van Der Kindere.
- [Stephen Weinberg](https://developer.upsun.com/posts/authors/stephen-weinberg.md): Articles written by Stephen Weinberg.
- [sylvain-lendrevie](https://developer.upsun.com/posts/authors/sylvain-lendrevie.md): Articles written by sylvain-lendrevie.
- [Tamara Bacchia](https://developer.upsun.com/posts/authors/tamara-bacchia.md): Articles written by Tamara Bacchia.
- [Mickael Gaillard](https://developer.upsun.com/posts/authors/theosakamg.md): Articles written by Mickael Gaillard.
- [Thomas di Luccio](https://developer.upsun.com/posts/authors/thomasdiluccio.md): Articles written by Thomas di Luccio.
- [Tom Helmer Hansen](https://developer.upsun.com/posts/authors/tom-helmer-hansen.md): Articles written by Tom Helmer Hansen.
- [Upsun](https://developer.upsun.com/posts/authors/upsun.md): Articles written by Upsun.
- [Veronika Tolkachova](https://developer.upsun.com/posts/authors/veronika-tolkachova.md): Articles written by Veronika Tolkachova.
- [Vince Parker](https://developer.upsun.com/posts/authors/vince-parker.md): Articles written by Vince Parker.
- [Vincenzo Russo](https://developer.upsun.com/posts/authors/vinnie-russo.md): Articles written by Vincenzo Russo.
- [Yuriy Babenko](https://developer.upsun.com/posts/authors/yuriy-babenko.md): Articles written by Yuriy Babenko.
- [Website fleet management: challenges and opportunities](https://developer.upsun.com/posts/business/website-fleet.md): A solution to manage website fleets, automate code updates, and streamline operations for organizations with numerous websites and applications.
- [Eliminating Database Password Risk with Network Isolation](https://developer.upsun.com/posts/core-concepts/eliminating-database-pwd-risk-with-network-isolation.md): By removing default database passwords, Upsun reduces common credential risks (leaks, reuse, hardcoding) and relies on stronger security controls like SSH keys and private networking.
- [Getting GitOps right](https://developer.upsun.com/posts/core-concepts/getting-gitops-right.md): Source code management has never been simpler with GitOps from Platform.sh. We'll help you get started with automating your deployments.
- [HTTPS and TLS certificates: Always served fresh](https://developer.upsun.com/posts/core-concepts/https-and-tls-certificates-always-served-fresh.md): Goodbye to expired certificates! We now auto-renew TLS certificates for your websites, ensuring end-to-end encryption without interruptions.
- [How Meta-Upsun improved Validation Schema and Developer eXperience](https://developer.upsun.com/posts/core-concepts/meta-upsun-validation-schema-dx-improvement.md): The introduction of Meta-Upsun enabled dynamic validation schemas and version enumeration for Upsun services and runtimes, significantly improving developer experience.
- [Building an AI feature: The necessary evals](https://developer.upsun.com/posts/discussions/building-ai-feature-necessary-evals.md): What we learned building an AI feature: evaluations take most of the time, and your existing tools are enough.
- [Building an AI code review agent for our self-hosted GitLab](https://developer.upsun.com/posts/discussions/building-an-ai-code-review-agent-for-gitlab.md): I vibe-coded a GitLab code review agent last month - 40K lines of Python written by Claude - and it has reviewed 1000 merge requests.
- [Containers are the new static binaries](https://developer.upsun.com/posts/discussions/containers-are-the-new-static-binaries.md): Platform.sh updates: new languages, MariaDB, and PHP 7.2-alpha support. Stay informed and enjoy your containers.
- [CPU vs GPU for AI: most AI applications don't need GPUs](https://developer.upsun.com/posts/discussions/cpu-vs-gpu.md): How to build and deploy an Angular application on Upsun.
- [CVE-2024-45337](https://developer.upsun.com/posts/discussions/cve-2024-45337.md)
- [Give your AI agent a system that is safe to break](https://developer.upsun.com/posts/discussions/give-your-ai-agent-a-system-that-is-safe-to-break.md): Handing an agent credentials narrows what it can do, not where its mistakes land. Run it inside a branched environment instead, and the worst outcome is a broken copy of your stack.
- [Golang 1.24 is looking seriously awesome](https://developer.upsun.com/posts/discussions/go-124.md)
- [Governance is a contract chain, and you're in it](https://developer.upsun.com/posts/discussions/governance-is-a-contract-chain-and-youre-in-it.md): Governance is a chain of contracts from certification bodies to you. AI didn't change the chain, but it produces code faster than humans can review it.
- [How product managers use preview environments and AI to prototype](https://developer.upsun.com/posts/discussions/how-product-managers-use-preview-environments-and-ai-to-prototype.md): Learn how product managers at Upsun use AI coding assistants and preview environments to prototype feature ideas, validate concepts with real data, and share interactive demos with stakeholders.
- [Instant data cloning was a bet. AI agents are the payoff.](https://developer.upsun.com/posts/discussions/instant-data-cloning-was-a-bet-ai-agents-are-the-payoff.md): How Upsun's data-first architecture, built a decade ago for CMS and e-commerce needs, turns out to be the exact infrastructure AI agents need: instant, isolated, production-identical environments with real data.
- [Critical Next.js Security Update: CVE-2025-66478 Affects RSC](https://developer.upsun.com/posts/discussions/nextjs-cve-2025-66478.md): Remote code execution vulnerability in Next.js 15.x and 16.x App Router requires immediate patching. Learn how to secure your applications.
- [Preview Environments](https://developer.upsun.com/posts/discussions/preview-environments-a-developers-secret-weapon.md): Discover how preview environments transform software deployment, reducing stress and improving code quality. Learn about the six essential components for implementing preview environments, including Git, infrastructure as code, and automated DNS management. Find out why preview environments are cruc…
- [The universal commerce protocol and the inevitable rise of agentic commerce](https://developer.upsun.com/posts/discussions/the-universal-commerce-protocol-and-the-inevitable-rise-of-agentic-commerce.md)
- [How did we migrate issues from GitLab to Linear?](https://developer.upsun.com/posts/discussions/triage-bot.md)
- [Understanding Cross-Origin Resource Sharing (CORS)](https://developer.upsun.com/posts/discussions/understanding-cors.md): Learn about Cross-Origin Resource Sharing (CORS), a crucial web security mechanism. Understand its importance, key concepts, and implementation in Symfony, Next.js, and Laravel. Includes practical examples and tips for testing with curl and Postman, plus Platform.sh configuration guidance.
- [Efficient code analysis for LLMs](https://developer.upsun.com/posts/discussions/whatsun-efficient-code-analysis.md): Learn how Whatsun generates concise codebase summaries to improve the performance and accuracy of AI features.
- [Why AI agents need cloud sandboxes](https://developer.upsun.com/posts/discussions/why-ai-agents-need-cloud-sandboxes.md): AI agents run real commands on real systems. Learn why cloud sandboxes with production data beat local isolation for safe AI agent workflows.
- [Source Operations and Activity Scripts for Drupal teams](https://developer.upsun.com/posts/engineering/save-your-drupal-team-hours-and-effort-with-source-operations-and-activity-scripts.md): Learn how to automate Drupal updates on Platform.sh using Source Operations and Activity Scripts, saving your development team time and effort.
- [Three ways to manage a website fleet](https://developer.upsun.com/posts/engineering/three-ways-to-manage-a-fleet.md): Efficient multi-website management using Source Operations on Platform.sh. Automate updates, builds, and deployments for a large number of websites with ease.
- [AI use-case: Generate load test scenarios with MCPs](https://developer.upsun.com/posts/hands-on/ai-use-case-generate-load-test-scenarios.md): Automate Locust load testing by combining Chrome MCP and Context7 to generate realistic user behavior patterns with Claude Code.
- [Building internal AI agents for our teams on Upsun](https://developer.upsun.com/posts/hands-on/building-internal-ai-agents-for-our-teams-on-upsun.md): Learn how to build and deploy production-ready AI agents on Upsun using Google's ADK, ChromaDB vector database, and Retrieval-Augmented Generation (RAG) to create context-aware, domain-specific agents for your team.
- [Installing CiviCRM with Drupal 11 on Upsun](https://developer.upsun.com/posts/hands-on/civicrm-drupal-11-on-upsun.md): Learn how to install CiviCRM with Drupal 11 on Upsun, from config.yml and databases to cron, caching, extensions and Skvare’s best-practice template.
- [CiviCRM with WordPress Bedrock on Upsun](https://developer.upsun.com/posts/hands-on/civicrm-with-wordpress-bedrock-on-upsun.md): A guide to deploying CiviCRM on top of a Bedrock-based WordPress installation on Upsun, utilizing an optimized Composer template and MariaDB schemas.
- [Connect multiple projects applications or services together](https://developer.upsun.com/posts/hands-on/connect-multiple-projects-applications-or-services-together.md): Learn how to use Chisel to securely connect applications and services across different Upsun projects, with a practical MariaDB replication example.
- [Build and deploy AI-Native Applications with MCP Servers on Upsun](https://developer.upsun.com/posts/hands-on/deploy-mcp-servers-on-upsun.md): Learn how Model Context Protocol servers work with different transports and deploy them to Upsun for scalable AI-powered applications
- [Experiment with Chainlit AI interface with RAG on Upsun](https://developer.upsun.com/posts/hands-on/deploying-chainlit-with-rag.md): Learn to deploy production-ready RAG applications with Chainlit and Python on Upsun. Tutorial covers OpenAI Assistants integration, llama_index implementation, and secure authentication.
- [How to enable custom maintenance page in Fastly](https://developer.upsun.com/posts/hands-on/fastly-maintenance.md): Configure GitLab CI/CD to deploy to Upsun from private air-gapped GitLab instances using push-based workflows and API automation.
- [Synchronize your air-gapped GitLab with Upsun](https://developer.upsun.com/posts/hands-on/gitlab-push-solution.md): Configure GitLab CI/CD to deploy to Upsun from private air-gapped GitLab instances using push-based workflows and API automation
- [Limit deployments to Platform.sh only with tags: part one](https://developer.upsun.com/posts/hands-on/guide-to-limit-deployments-to-platformsh-only-with-tags-part-one.md)
- [Limit deployments to Platform.sh only with tags: part three](https://developer.upsun.com/posts/hands-on/guide-to-limit-deployments-to-platformsh-only-with-tags-part-three.md)
- [Limit deployments to Platform.sh only when Git tagged: part two](https://developer.upsun.com/posts/hands-on/guide-to-limit-deployments-to-platformsh-only-with-tags-part-two.md)
- [Harnessing the power of Embeddings: a real-world example of a watch recommendation app using a vector database.](https://developer.upsun.com/posts/hands-on/harnessing-power-embeddings.md): Learn how to build a real-world watch recommendation application using embeddings and a vector database. This tutorial covers using Postgres with pgvector, Laravel, React, OpenAI, and Groq, deployed on Upsun.
- [How to Use Harlequin SQL IDE with Upsun](https://developer.upsun.com/posts/hands-on/how-to-use-harlequin-sql-ide-with-upsun.md): Learn two ways to connect Harlequin SQL IDE to your Upsun PostgreSQL database: using local SSH tunnels or deploying Harlequin directly on the platform.
- [Up(sun) and ready with GitHub release assets installation](https://developer.upsun.com/posts/hands-on/install-gh-asset-on-upsun.md): Discover how to install any GitHub release asset you want in your Upsun project.
- [Migration day: executing your Upsun cutover](https://developer.upsun.com/posts/hands-on/migration-day-executing-your-upsun-cutover.md): A step-by-step guide to migration day: maintenance windows, cutover sequences, verification, and post-migration monitoring strategies.
- [NoCode with Upsun: Supercharge Your Automation with Zero Code](https://developer.upsun.com/posts/hands-on/nocode-n8n.md): Learn how to leverage Upsun to deploy powerful NoCode tools like n8n for workflow automation. Fast setup, secure hosting, and real-world use cases — all without writing code.
- [Using PostgreSQL MCP with Upsun Remote Database](https://developer.upsun.com/posts/hands-on/postgres-mcp-on-upsun.md): Learn how to set up an MCP server to connect your Upsun PostgreSQL database to language models like Claude or IDE like VSCode GitHub Copilot and Cursor, enabling natural language data queries without writing SQL.
- [Power-up Your Local Development with DDEV](https://developer.upsun.com/posts/hands-on/powerup-your-local-development-with-ddev.md): Get the best local development experience with the DDEV-Platform.sh add-on. Follow our guide, share your feedback, and optimize your workflow
- [How to run PyTorch in an Upsun application?](https://developer.upsun.com/posts/hands-on/pytorch-running-on-upsun.md): Learn how to deploy a sentiment analysis application powered by PyTorch and FastAPI on the Upsun cloud platform
- [How to automatically inject multi-app endpoints as environment variables](https://developer.upsun.com/posts/hands-on/route-ids-env.md): Learn how to use Upsun route identifiers and the PLATFORM_ROUTES variable to easily get and use the hostnames of dynamically deployed applications in your project.
- [Run Tailscale on Upsun: Create secure VPN connections for your applications](https://developer.upsun.com/posts/hands-on/run-tailscale-on-upsun-secure-vpn-connections.md): Learn how to integrate Tailscale VPN with your Upsun applications to create secure, private network connections between your containers and infrastructure.
- [Scriberr on Upsun](https://developer.upsun.com/posts/hands-on/scriberr-on-upsun.md): Learn how to deploy Scriberr, an AI-powered transcription tool, on Upsun for self-hosted audio and video transcription.
- [Stop testing JCR apps in production](https://developer.upsun.com/posts/hands-on/stop-testing-jcr-apps-in-production.md): Learn why JCR-based applications benefit from fast, production-grade environment cloning. Discover how Upsun removes one of JCR's biggest operational challenges through instant repository duplication.
- [Store embeddings in chroma with persistent storage (nodejs and python examples)](https://developer.upsun.com/posts/hands-on/store-embeddings-in-chroma-with-persistent-storage-nodejs-and-python-examples.md): Learn how to implement Chroma with persistent storage on Upsun using both Node.js and Python, including document ingestion and embedding storage.
- [That cron should be a worker](https://developer.upsun.com/posts/hands-on/that-cron-should-be-a-worker.md): Long-running crons block your deployments, steal resources from your app container, and create support tickets. Here's when to use workers instead.
- [From DrupalCon keynote to live Upsun demo: the real story of setting up Drupal Canvas with AI](https://developer.upsun.com/posts/hands-on/the-real-story-of-setting-up-drupal-canvas-with-ai.md): Discover how the Lemberg Solutions team set up Drupal Canvas with an AI assistant: how long it took, the challenges we faced and lessons we learned.
- [Unstable website? Use queues.](https://developer.upsun.com/posts/hands-on/unstable-website-use-queues.md): Your site throws 502 errors when external APIs are slow. The fix isn't more resources. It's offloading that work to background jobs so your responses stay fast.
- [Varnish 101: Protecting Paths with HTTP Basic Authentication on Upsun](https://developer.upsun.com/posts/hands-on/varnish-101-protecting-paths-with-http-basic-authentication-on-upsun.md): Learn how to implement HTTP Basic Authentication directly in Varnish VCL on Upsun to protect specific paths like admin areas, staging environments, and work-in-progress content without touching your backend.
- [Varnish 102: Protecting Your Application with Rate Limiting on Upsun](https://developer.upsun.com/posts/hands-on/varnish-102-protecting-your-application-with-rate-limiting-on-upsun.md): Learn how to implement effective rate limiting in Varnish using the vsthrottle VMOD to protect your application from abuse, prevent DDoS attacks, and ensure fair resource allocation.
- [Varnish 103: Cache Optimization with URL Normalization on Upsun](https://developer.upsun.com/posts/hands-on/varnish-103-cache-optimization-with-url-normalization-on-upsun.md): Learn how to maximize Varnish cache efficiency through URL normalization, query string sorting, and tracking parameter removal to dramatically improve cache hit ratios and reduce backend load.
- [Varnish 104: Advanced Traffic Filtering with Classification Headers on Upsun](https://developer.upsun.com/posts/hands-on/varnish-104-advanced-traffic-filtering-with-classification-headers-on-upsun.md): Learn how to implement advanced security controls in Varnish on Upsun using classification headers to block malicious traffic, restrict geographic access, filter by ASN, and protect sensitive paths with HTTP Basic Auth.
- [Zero-downtime deployments: now in open beta](https://developer.upsun.com/posts/hands-on/zero-downtime-deployments-with-upsun.md): We've launched zero-downtime deployments in open beta. Deploy your applications without service interruption.
- [Auto-scaling on Upsun Flex. A deep dive.](https://developer.upsun.com/posts/how-it-works/autoscaling-deep-dive.md): Learn how Upsun's autoscaling dynamically adjusts application instances based on CPU usage, ensuring performance during traffic spikes while optimizing costs.
- [Backup consistency: why it matters and how Upsun handles it](https://developer.upsun.com/posts/how-it-works/backup-consistency-why-it-matters-and-how-upsun-handles-it.md): Learn what backup consistency means at the filesystem and service levels, and how Upsun balances consistent backups with zero-disruption live backups.
- [Building observability from scratch, three times over](https://developer.upsun.com/posts/how-it-works/building-observability-from-scratch-three-times-over.md): A look back at how Platform.sh / Upsun's observability evolved from Nagios on a single box to a unified stack across thousands of VMs, and the migration patterns that made each transition smooth.
- [Can you trust the X-Client-IP header?](https://developer.upsun.com/posts/how-it-works/can-you-trust-the-x-client-ip-header.md): Why the X-Client-IP header on Upsun holds the real visitor IP behind Fastly, Cloudflare, and CloudFront, and how to log real client IPs behind any other CDN.
- [Cloning a terabyte in a minute, and the limit hiding behind it](https://developer.upsun.com/posts/how-it-works/cloning-a-terabyte-in-a-minute-and-the-limit-hiding-behind-it.md): Upsun clones a terabyte production environment in under a minute using Ceph copy-on-write. Here is the 16-level clone-depth limit behind it, why flattening is the price you pay, and what it says about engineering trade-offs.
- [How we cut AWS bandwidth costs 95% with dm-cache: fast local SSD caching for network storage](https://developer.upsun.com/posts/how-it-works/cut-aws-bandwidth-costs-95-with-dm-cache.md): Learn how Upsun solved costly inter-AZ bandwidth billing by implementing dm-cache with local SSDs, achieving 95% read traffic reduction and 30x performance improvement.
- [How we host a Debian repository on AWS S3](https://developer.upsun.com/posts/how-it-works/debian-repo-s3.md)
- [Event Loop Monitoring in Next.js: Performance Guide](https://developer.upsun.com/posts/how-it-works/event-loop-monitoring-in-nextjs-performance-guide.md): Learn to implement event loop monitoring in Next.js applications to identify blocking operations, optimize performance, and scale confidently with production-ready code.
- [Mastering the Explore, Plan, Execute methodology for AI-assisted development](https://developer.upsun.com/posts/how-it-works/explore-plan-execute-methodology.md): Learn how to transform AI coding assistants from eager juniors into rockstar developers using proven context strategies, quality assurance, and the three-phase workflow
- [Fake IP till you make IP](https://developer.upsun.com/posts/how-it-works/fake-ip-till-you-make-ip.md): How Upsun uses virtual IPs and NAT to keep your database connections stable even when containers move between VMs. A look at the networking tricks behind relationship stability.
- [High-performance backups: How Ceph snapshots enable incremental full backups](https://developer.upsun.com/posts/how-it-works/how-do-we-do-incremental-but-really-full-backups-on-top-of-ceph.md): Learn how Upsun leverages Ceph's RBD export-diff feature to implement high-performance incremental backups that maintain full restore capabilities for large-scale container storage.
- [SSH certificates with Platform.sh](https://developer.upsun.com/posts/how-it-works/how-do-you-manage-ssh-keys-in-your-organization.md): Learn how Platform.sh simplifies provisioning SSH certificates for secure and keyless SSH authentication, enhancing security and making compliance easier.
- [How the Platform.sh PaaS works](https://developer.upsun.com/posts/how-it-works/how-platform-paas-works.md): Discover how Platform.sh simplifies PaaS. Focus on your code; we manage the rest. Explore our second-generation PaaS for seamless application development.
- [Semper vigilans: how Platform.sh stays ahead of emerging cybersecurity threats (so you don’t have to)](https://developer.upsun.com/posts/how-it-works/how-platformsh-stays-ahead-of-emerging-cybersecurity-threats.md): Always vigilant is more than a motto. Find out how the Platform.sh Security team monitors vulnerabilities 24x7 to protect customers from cybersecurity threats.
- [How redundancy and failover work on Upsun](https://developer.upsun.com/posts/how-it-works/how-redundancy-and-failover-work-on-upsun.md): Upsun handles redundancy and failover inside your region, at the compute, storage, and network layers. Here's where it happens, how fast it is, and the trade-offs behind it.
- [How SSH authentication works on Upsun](https://developer.upsun.com/posts/how-it-works/how-ssh-authentication-works-on-upsun.md): Decode the SSH certificate the Upsun CLI provisions for you, then follow it through the SSH proxy: CA trust, revocation, access documents, and MFA.
- [How to host a website that isn't publicly reachable](https://developer.upsun.com/posts/how-it-works/how-to-host-a-website-that-isnt-publicly-reachable.md): Some applications should never answer a request from the open internet. Here are the ways to make one unreachable on Upsun, and how to pick between them.
- [How Upsun built stateless mesh networking for high-density containers](https://developer.upsun.com/posts/how-it-works/how-upsun-built-stateless-mesh-networking-for-high-density-containers.md): Discover how Upsun's innovative stateless mesh networking architecture handles thousands of containers without databases or bottlenecks.
- [How Upsun provisions TLS certificates at scale](https://developer.upsun.com/posts/how-it-works/how-upsun-provisions-tls-certificates-at-scale.md): Every Upsun environment gets HTTPS automatically. Here's how the certificate system works, from wildcards to Let's Encrypt automation.
- [How we caught a silent IO storm before it hit production](https://developer.upsun.com/posts/how-it-works/how-we-caught-a-silent-io-storm-before-it-hit-production.md): A sysctl setting that worked fine for years caused over 500 MB/s of disk writes after migrating to Debian 12. MariaDB stalled on pending IO, Redis complained about slow fsync, and RBD-backed storage ground to a halt. The culprit: cgroup v2 changes how the kernel divides dirty page budgets across con…
- [How we've been hardening containers since before Docker made it cool](https://developer.upsun.com/posts/how-it-works/how-weve-been-hardening-containers-since-before-docker-made-it-cool.md): Docker's hardened images are great, but we've been doing this for years. Here's the automated pipeline that's been securing hundreds of container images behind the scenes at Upsun.
- [Installers that don't suck](https://developer.upsun.com/posts/how-it-works/installers-that-dont-suck.md): Learn how to create cloud-friendly web application installers that account for cloud-based environments and optimize the user experience.
- [Keeping the peace: how ZooKeeper stops database nodes from fighting](https://developer.upsun.com/posts/how-it-works/keeping-the-peace-how-zookeeper-stops-database-nodes-from-fighting.md): Learn how Upsun uses Zookeeper's sequences, watchers, and ephemeral nodes to coordinate MariaDB clusters and workers across distributed systems without breaking your application.
- [Beyond Tool Calling: Understanding MCP's Three Core Interaction Types](https://developer.upsun.com/posts/how-it-works/mcp-interaction-types-article.md): Discover how prompts, resources, and tools work together in the Model Context Protocol to create richer AI application experiences beyond simple tool calling.
- [Centralising Upsun Technical References with Meta-Upsun](https://developer.upsun.com/posts/how-it-works/meta-reference-source-introduction.md): How Upsun centralised runtime, service, region, and PHP reference data into a single public API to improve consistency, automation, and documentation accuracy.
- [Natural scaling for multi-country ecommerce](https://developer.upsun.com/posts/how-it-works/natural-scaling-for-multi-country-ecommerce.md): Multi-country ecommerce is a textbook case for natural scaling. Instead of cramming every country into one store, give each its own. Here's why.
- [Upsun and Elasticsearch: A tale of love, loss, and licensing roadblocks](https://developer.upsun.com/posts/how-it-works/psh-elastic-love-loss-licensing.md)
- [How repeatable deployments work](https://developer.upsun.com/posts/how-it-works/repeatable-deployments.md): Platform.sh ensures predictable, repeatable deployments by controlling the key inputs to your application and guaranteeing code consistency.
- [How we host an RPM repository on AWS S3](https://developer.upsun.com/posts/how-it-works/rpm-repo-s3.md): Learn how to host an RPM repository entirely on AWS S3 with no active components, minimal cost, and authenticated access using IAM.
- [SPF, DKIM, DMARC, what are those for anyway?](https://developer.upsun.com/posts/how-it-works/spf-dkim-dmarc-what-are-those-for-anyway.md): Finally understand what SPF, DKIM, and DMARC actually do, why email needs them, and how to set them up without wanting to flip a table.
- [The Platform.sh build-and-deploy pipeline](https://developer.upsun.com/posts/how-it-works/the-platformsh-build-and-deploy-pipeline.md): Learn how Platform.sh simplifies the build and deploy pipeline for web applications, ensuring consistency and repeatability with Git-based semantics.
- [Upsun deployment hooks and commands: which one to use, and when](https://developer.upsun.com/posts/how-it-works/upsun-deployment-hooks-and-commands-which-one-to-use-and-when.md): Build hooks, deploy hooks, pre_start, start, and post_start all shape how Upsun deploys your app. Learn what each one does and when to reach for it.
- [Using the Upsun API](https://developer.upsun.com/posts/how-it-works/using-the-upsun-api.md)
- [We made our infrastructure read-only and never looked back](https://developer.upsun.com/posts/how-it-works/we-made-our-infrastructure-read-only-and-never-looked-back.md): Learn why read-only infrastructure eliminates entire classes of security attacks, improves reproducibility, and simplifies compliance while enabling predictable deployments.
- [We switched from LVM to... sparse files?!](https://developer.upsun.com/posts/how-it-works/we-switched-from-lvm-to-sparse-files.md): How we eliminated 90% of VM evacuation time by replacing LVM with sparse files for temporary storage. A tale of inertia, performance bottlenecks, and surprisingly effective solutions.
- [When php-fpm runs out of workers: a 502 error field guide](https://developer.upsun.com/posts/how-it-works/when-php-fpm-runs-out-of-workers-a-502-error-field-guide.md): Your PHP site keeps throwing 502 errors. Your CDN shows 503s. Learn why PHP-FPM workers get exhausted and how to diagnose and fix the real problems.
- [Why Let's Encrypt certificate renewals fail](https://developer.upsun.com/posts/how-it-works/why-lets-encrypt-certificate-renewals-fail.md): Certificate renewals fail for a handful of recurring reasons. Here's how the HTTP-01 challenge works and what breaks it, from IPv6 records to CDN rules.
- [Why we moved from LVM to Ceph for container storage](https://developer.upsun.com/posts/how-it-works/why-upsun-moved-from-lvm-to-ceph.md): Upsun migrated from LVM to Ceph for container storage to separate compute from storage, enable instant volume migration, and make VMs disposable again.
- [Write a Git server with per-branch permissions in five minutes](https://developer.upsun.com/posts/how-it-works/write-a-git-server-with-per-branch-permissions-in-five-minutes.md): Upsun's most basic API is a Git server. Build one in Python with Dulwich and Paramiko, and add per-branch read permissions in a single method.
- [Your WAF is buffering. Ours is streaming.](https://developer.upsun.com/posts/how-it-works/your-waf-is-buffering-ours-is-streaming.md): Most WAFs buffer your entire request before validating it. That's slow. Upsun's technical WAF validates requests while streaming them to your backend, so you don't pay a latency tax for security.
- [How to automate load tests with Gatling](https://developer.upsun.com/posts/how-tos/automate-with-gatling-1.md)
- [Automated encrypted backups to Amazon S3 | Upsun](https://developer.upsun.com/posts/how-tos/automated-encrypt-backups-amazon-s3.md): Learn how to configure Duplicity, GPG keys, and cron on Upsun to send incremental, encrypted backups of your application to AWS S3 for reliable restores
- [Add context on your Blackfire timeline from a Google Alerts RSS Feed](https://developer.upsun.com/posts/how-tos/blackfire-google-alert-markers.md)
- [Import multiple RSS Feeds on your Blackfire timeline + extra interfaces](https://developer.upsun.com/posts/how-tos/blackfire-google-alert-markers-interfaces.md)
- [Composer 1 is dead – Upgrade to Composer 2 now](https://developer.upsun.com/posts/how-tos/composer1-rip.md): Composer 1 has reached end of life and is no longer available on Upsun and Platform.sh. Learn why it’s no longer possible to rely on Composer 1, what errors you’ll see, and how to safely upgrade your project to Composer 2.
- [Adding an autoscaler to Upsun projects](https://developer.upsun.com/posts/how-tos/configuring-an-autoscaler.md)
- [Upsun documentation is now available via the Context7 MCP](https://developer.upsun.com/posts/how-tos/context7-mcp.md): Access Upsun documentation directly from your AI workflows using Context7's Model Context Protocol integration
- [Creating Custom Reports using the Upsun CLI](https://developer.upsun.com/posts/how-tos/creating-custom-reports-using-cli.md)
- [Speed vs. Security? Why not both: The Fastly CDN and WAF on Upsun](https://developer.upsun.com/posts/how-tos/fastly-cdn-and-waf.md): Learn how to pair Fastly’s CDN for speed with its Next-Gen WAF for security on Upsun. Optimize global performance while protecting your infrastructure from threats.
- [Streamline Your CDN Management with Fastly CDN Plugin App [BETA]](https://developer.upsun.com/posts/how-tos/fastlycdn-pluginapp-activation.md)
- [Get more control over your environments with build variables](https://developer.upsun.com/posts/how-tos/get-more-control-over-your-environments-with-build-variables.md): Discover the visible-build flag on Platform.sh, enabling environment-specific build variables for more control over your development process.
- [How to manage the `.well-known` directory on Upsun and Platform.sh](https://developer.upsun.com/posts/how-tos/handling-well-known-directory.md)
- [Help reduce resource consumption: Put your preview environments on pause](https://developer.upsun.com/posts/how-tos/help-reduce-resource-consumption-put-your-preview-environments-on-pause.md): You can now manually pause your idle preview environments or have them automatically paused after 14 days of being idle to minimize your resource usage.
- [Up(sun) and ready with Pandoc](https://developer.upsun.com/posts/how-tos/install-pandoc-on-upsun.md)
- [Measuring Deployment Success with GitHub Actions](https://developer.upsun.com/posts/how-tos/measuring-the-success-of-a-deployment-with-githubactions.md): Learn how GitHub actions can streamline your Platform.sh deployments for faster and more efficient development workflows
- [Automating Runtime and Service Tracking with Meta Version Updater](https://developer.upsun.com/posts/how-tos/meta-version-updater-introduction.md): Meta is Upsun’s shared reference layer for runtimes, services, regions, and extensions. Learn why we built it, how it works, and how it powers the next generation of Upsun documentation and tooling.
- [How to update your PostgreSQL database without downtime](https://developer.upsun.com/posts/how-tos/no-downtime-postgres-updates.md)
- [Planning your Upsun migration: the 6-9 week roadmap](https://developer.upsun.com/posts/how-tos/planning-your-upsun-migration-the-6-9-week-roadmap.md): Learn why 6-9 weeks is the ideal timeline for Upsun migrations, with expert insights on planning, testing, and avoiding common pitfalls.
- [Replicate your production outage on staging](https://developer.upsun.com/posts/how-tos/replicate-your-production-outage-on-staging.md): After fixing a production outage, you need to prove the fix works under the same traffic. Here's how to replicate real production traffic on an Upsun staging environment using the observability API and k6.
- [Scheduling resources](https://developer.upsun.com/posts/how-tos/schedule-resource-availability.md)
- [Supply chain attacks in the AI era, and what to do about them](https://developer.upsun.com/posts/how-tos/supply-chain-attacks-in-the-ai-era-and-what-to-do-about-them.md): AI agents are reading code at scale, including your dependencies. Why supply chain risk just changed, plus a build-time fix to add on Upsun.
- [Making .upsun/config.yaml easier to edit with IDE autocomplete and validation](https://developer.upsun.com/posts/how-tos/validate-yaml-config.md): Boost your productivity and eliminate configuration errors with real-time autocompletion and validation for your .upsun/config.yaml — discover how to enhance your IDE experience in just a few simple steps!
- [Advanced prompting techniques for complex coding tasks](https://developer.upsun.com/posts/insights/advanced-prompting-techniques-for-coding.md): This articles will give you an overview of prompting strategies that help coding assistants reason through difficult problems and produce higher-quality solutions.
- [Build-time environment variables considered harmful](https://developer.upsun.com/posts/insights/build-time-environment-variables-considered-harmful.md): Build-time environment variables break deployment caching, compromise security, and force unnecessary rebuilds. Learn why runtime configuration is the better alternative.
- [Code matters less than ever, and more than ever](https://developer.upsun.com/posts/insights/code-matters-less-than-ever-and-more-than-ever.md): AI made code cheap to write and cheap to throw away, so it matters less than ever. It also matters more, because debugging, reviews, and velocity all depend on it.
- [DDEV is in good hands](https://developer.upsun.com/posts/insights/ddev-is-in-good-hands.md): DDEV is alive, actively maintained, and back with its foundation. A look at our chapter in the project, why we got involved, and why we are happy to step out of the way.
- [My terminal setup (Mac & Linux)](https://developer.upsun.com/posts/insights/my-terminal-setup-mac-linux.md): A no-nonsense guide to transforming your terminal from painful to powerful with GhostTTY, NeoVim, and Claude Code
- [Rate limiting Rails apps when you can't put Varnish in front](https://developer.upsun.com/posts/insights/rate-limiting-rails-apps-when-you-cant-put-varnish-in-front.md): When the edge isn't yours, rate limit from inside the application. How rack-attack works, why limits are about quality of service, and what Rails 8 changed.
- [The mystery of the shrinking database dump](https://developer.upsun.com/posts/insights/the-mystery-of-the-shrinking-database-dump.md): Your database uses 10GB but dumps to 100MB. Discover why database dumps shrink, how InnoDB fragmentation works, and how to reclaim that missing storage space.
- [The (not so) hidden cost of AI scrapers](https://developer.upsun.com/posts/insights/the-not-so-hidden-cost-of-ai-scrapers.md): AI scrapers drive up your hosting cost while real users wait. Use robots.txt, cache normalization, and sane application limits to take the pressure off.
- [The only correct way to git pull and merge](https://developer.upsun.com/posts/insights/the-only-correct-way-to-git-pull-and-merge.md): A strongly opinionated guide to git pull and merge strategies that will make your commit history actually useful. Learn when to rebase, when to merge, and why the defaults are lying to you.
- [The third way to scale that nobody talks about](https://developer.upsun.com/posts/insights/the-third-way-to-scale-that-nobody-talks-about.md): Beyond vertical and horizontal scaling lies a third approach that most scaling discussions ignore. Learn about natural scaling, where you sidestep the problem entirely.
- [What will you do after you deploy?](https://developer.upsun.com/posts/insights/what-will-you-do-after-you-deploy.md): Learn how Platform.sh's post_deploy hook can keep your site responsive during deploy tasks, making your deploys faster and more efficient.
- [Which stack would you pick for an interactive AI app today?](https://developer.upsun.com/posts/insights/which-stack-would-you-pick-for-an-interactive-ai-app-today.md): Coding agents changed how new teams pick a tech stack. A tour of 8 ecosystems for interactive AI apps, and why "can we run it" beats "can we write it".
- [Git-Driven Infrastructure: Why Configuration as Code Beats Click-and-Deploy](https://developer.upsun.com/posts/insights/why-configuration-as-code-beats-click-and-deploy.md): Discover why YAML-driven infrastructure outperforms point-and-click deployment for scalable, maintainable applications. Learn best practices for configuration as code.
- [Why Emacs is still my interface to my computer](https://developer.upsun.com/posts/insights/why-emacs-is-still-my-interface-to-my-computer.md): Why I still use Emacs every day: one consistent interface for editing, Git with Magit, terminals, a Claude Code agent per project, and the rest of my computer.
- [Why Python developers should switch to uv](https://developer.upsun.com/posts/insights/why-python-developers-should-switch-to-uv.md): Learn how uv, the revolutionary Python package manager, delivers 100x faster installations and streamlines project management with automatic virtual environments and dependency tracking.
- [Why setting your PHP memory limit to 60GB won't help](https://developer.upsun.com/posts/insights/why-setting-your-php-memory-limit-to-60gb-wont-help.md): When you see a PHP memory limit error, your instinct shouldn't be to just increase the limit. Learn what PHP memory_limit actually does and why blindly increasing it can hurt your site's uptime.
- [Why you can't just add infinite PHP-FPM workers](https://developer.upsun.com/posts/insights/why-you-cant-just-add-infinite-php-fpm-workers.md): Workers need memory. Learn how PHP-FPM sizing hints work, why you can't just add infinite workers, and how to tune your worker count based on actual memory usage.
- [Why you should replace PostgreSQL with Git for your next project](https://developer.upsun.com/posts/insights/why-you-should-replace-postgresql-with-git-for-your-next-project.md): Explore how Git's internal architecture makes it a surprisingly capable database alternative. Learn Git's data structures through a practical todo app implementation that might make you reconsider your database choices.
- [AGENTS.md: Why your README matters more than AI configuration files](https://developer.upsun.com/posts/insights/why-your-readme-matters-more-than-ai-configuration-files.md): AGENTS.md promises to standardize AI coding assistant configuration, but the real solution is writing better READMEs that serve both humans and AI agents
- [It's out of the Oven: Bun 1.0 support on Platform.sh](https://developer.upsun.com/posts/releases/bun-support-is-here.md): Bun 1.0 support is now available on Platform.sh. Discover our comparison results against Yarn and how to test Bun 1.0 out for yourself in this article.
- [One project, many needs: How Composable Image embraces real-world diversity](https://developer.upsun.com/posts/releases/composable-image-embraces-real-world-diversity.md)
- [Composer 2.9 lands on Upsun PHP Images: Here’s what you need to know](https://developer.upsun.com/posts/releases/composer-2.9.md): Remote code execution vulnerability in Next.js 15.x and 16.x App Router requires immediate patching. Learn how to secure your applications.
- [Context driven navigation](https://developer.upsun.com/posts/releases/context-driven-navigation.md)
- [Continuous profiling comparisons](https://developer.upsun.com/posts/releases/continuous-profiling-comparisons.md): Upsun’s new continuous profiling comparisons feature provides deeper insights into application performance, enabling you to easily contrast performance metrics over time or between code versions.
- [Platform.sh–deploying the future of content with one click](https://developer.upsun.com/posts/releases/deploy-strapi-on-platformsh.md): Platform.sh and Strapi empower developers with a headless CMS solution for streamlined digital experiences. Deploy Strapi instantly. Learn more
- [Deploy with PHP 7.3 this Friday, er, Thursday](https://developer.upsun.com/posts/releases/deploy-with-php-73-this-friday-er-thursday.md): Platform.sh welcomes PHP 7.3! Explore the latest features and performance improvements. Upgrade your application with a simple YAML tweak.
- [Deploy your Python 3.7 code to the Moon](https://developer.upsun.com/posts/releases/deploy-your-python-37-code-to-the-moon.md): Platform.sh now supports Python 3.7. Explore the latest features and enhancements. Update your .platform.app.yaml file and enjoy Python 3.7!
- [Apologies to the Elixir community: 1.18 release now available](https://developer.upsun.com/posts/releases/elixir-118-release-available.md): Elixir 1.18 is now available on Upsun and Platform.sh with type checking, LSP improvements, and built-in JSON support.
- [New file size limits explained](https://developer.upsun.com/posts/releases/file_size_limit.md)
- [Develop on GitHub, Deploy on Platform.sh, Test on Blackfire.io](https://developer.upsun.com/posts/releases/github-blackfire-platformsh.md): Learn how to easily integrate GitHub, Blackfire, and Platform.sh for streamlined code management, deployment, and performance testing.
- [Go[lang] forth and deploy](https://developer.upsun.com/posts/releases/golang-forth-and-deploy.md): Discover the full support for Go 1.11 on Platform.sh. No more GOPATH required. Easy setup and deployment for Go applications with Go modules and Platform.sh.
- [HHVM deploys off into the sunset](https://developer.upsun.com/posts/releases/hhvm-deploys-off-into-the-sunset.md): Platform.sh will no longer support HHVM runtime after 1 March 2018. Learn about this change and the evolution of PHP alternatives.
- [Introducing a more complete logs forwarding experience](https://developer.upsun.com/posts/releases/introducing-a-more-complete-logs-forwarding-experience.md): Streamline monitoring with centralized log forwarding. Platform.sh now supports log forwarding to Sumologic, New Relic Logs, Splunk, and more. Discover how!
- [Introducing the Upsun Developer Center](https://developer.upsun.com/posts/releases/introducing-dev-center.md)
- [Introducing developer.upsun.com: Upsun docs, rebuilt for developers and AI agents](https://developer.upsun.com/posts/releases/introducing-developer-upsun-com.md): The Upsun documentation has moved to developer.upsun.com with a complete infrastructure rebuild focused on agent-readiness. 244+ pages of structured, machine-readable content with llms.txt support and built-in AI assistance.
- [Upsun and Platform.sh Docs are now llms.txt compatible!](https://developer.upsun.com/posts/releases/llms-introduction.md): We’re thrilled to announce that both [Upsun Documentation](https://docs.upsun.com) and [Platform.sh Documentation](https://docs.platform.sh) are now fully compatible with [llms.txt proposed standard](https://llmstxt.org/)!
- [PHP 8.0 feature focus: Class constructor property promotion](https://developer.upsun.com/posts/releases/php-80-feature-focus-constructor-property-promotion.md): Discover how PHP 8.0's Constructor Property Promotion feature can streamline your code, reduce verbosity, and make coding faster. Try it on Platform.sh today!
- [PHP 8.0 feature focus: Weak maps](https://developer.upsun.com/posts/releases/php-80-feature-focus-weak-maps.md): Learn how PHP 8.0's Weak Maps simplify memory management by efficiently handling cached objects. Try PHP 8.0 on Platform.sh today!
- [PHP 8.4 is here!](https://developer.upsun.com/posts/releases/php-84-release.md)
- [PHP 8.5 is here!](https://developer.upsun.com/posts/releases/php-85-release.md)
- [Platform.sh is always one step ahead: Announcing PostgreSQL 15, Python 3.11, and Ruby 3.2 for our users](https://developer.upsun.com/posts/releases/platformsh-is-always-one-step-ahead-announcing-postgresql--python--and-ruby--for-our-users.md): Explore the new features and performance improvements in Python 3.11, PostgreSQL 15, and Ruby 3.2. Stay up-to-date with the latest programming languages.
- [Continuous Deployment - Now with Python and Ruby support!](https://developer.upsun.com/posts/releases/python-ruby-support.md): Platform.sh now offers continuous deployment for Ruby and Python developers. Explore the benefits of continuous deployment for your projects in these languages.
- [Redis 8.0 is here](https://developer.upsun.com/posts/releases/redis-release.md)
- [Announcing the Official Upsun Node.js SDK](https://developer.upsun.com/posts/releases/upsun-node-sdk-announcement.md): Discover how the Upsun Node SDK simplifies API access and speeds up integrations, with clear documentation and modern tooling.
- [Introducing the Upsun PHP SDK](https://developer.upsun.com/posts/releases/upsun-php-sdk-announcement.md): Discover how the Upsun PHP SDK simplifies API access and speeds up integrations, with clear documentation and modern tooling.
- [Valkey is now available](https://developer.upsun.com/posts/releases/valkey-release.md)
- [Supercharge your workflow with the Upsun VSCode Extension](https://developer.upsun.com/posts/releases/vscode-extension.md): If you're working on Upsun projects with VSCode, the **Upsun VSCode extension** is an essential tool to enhance your development experience. Learn more...
- [Run an AI Log-Analysis Agent in an Upsun Task Container](https://developer.upsun.com/posts/tutorials/ai-log-analysis-agent-in-an-upsun-task-container.md): Reuse the cron-triggers-a-task pattern to run an OpenCode AI agent inside an Upsun task container. The agent reads your cron and application logs, analyzes them, and writes a Markdown health report to the task logs and a temporary file.
- [Building and Deploying Angular Apps on Upsun](https://developer.upsun.com/posts/tutorials/angular-and-upsun.md): How to build and deploy an Angular application on Upsun.
- [Building async processing pipelines with FastAPI and Celery on Upsun](https://developer.upsun.com/posts/tutorials/building-async-processing-pipelines-with-fastapi-and-celery-on-upsun.md): Learn how to build production-ready async processing pipelines using FastAPI and Celery on Upsun. From architecture design to deployment, discover how to handle long-running tasks without blocking your API responses.
- [Deploy Mattermost Team Edition on Upsun](https://developer.upsun.com/posts/tutorials/deploy-mattermost-on-upsun.md): Learn how to deploy a self-hosted Mattermost Team Edition server on Upsun, with PostgreSQL 16 and OpenSearch 2 configured automatically through a single infrastructure-as-code file.
- [Deploy ClamAV on Upsun, on one-time scan](https://developer.upsun.com/posts/tutorials/deploying-clamav-onetime.md): Learn how to deploy ClamAV service on Upsun. This tutorial covers ClamAV integration on one-time scan mode.
- [Deploy ClamAV on Upsun, on service mode.](https://developer.upsun.com/posts/tutorials/deploying-clamav-service.md): Learn how to deploy ClamAV service on Upsun. This tutorial covers ClamAV integration on service scan mode.
- [Deploying Laravel Reverb on Upsun](https://developer.upsun.com/posts/tutorials/deploying-laravel-reverb-on-upsun.md): Build a real-time voting app with Laravel and Reverb, deploy it to Upsun, then scale the WebSocket layer horizontally with Redis pub/sub.
- [Deploying Laravel with Horizon on Upsun](https://developer.upsun.com/posts/tutorials/deploying-laravel-with-horizon-on-upsun.md): Learn how to deploy a Laravel application with Redis queues and Horizon on Upsun, including PostgreSQL database setup, environment configuration, and domain management.
- [Deploying open-source projects on Upsun: Snipe-IT as an example](https://developer.upsun.com/posts/tutorials/deploying-open-source-on-upsun.md): Learn how to deploy any GitHub-hosted open-source project on Upsun by forking repositories, configuring for deployment, and keeping your fork synchronized with upstream updates.
- [Deploying a Remix JS app on Upsun in 5 minutes](https://developer.upsun.com/posts/tutorials/deploying-remixjs-app-on-upsun.md): Learn how to deploy a Remix JS application on Upsun in just 5 minutes. This tutorial covers creating a project, setting up the Node.js server, and deploying your app.
- [Up(sun) and Running with Twill](https://developer.upsun.com/posts/tutorials/deploying-twill-on-upsun.md)
- [Up(sun) and running with Lisp](https://developer.upsun.com/posts/tutorials/deploying-with-lisp.md)
- [Drupal and Upsun](https://developer.upsun.com/posts/tutorials/drupal-and-upsun.md)
- [How to host a multiple-application project on Platform.sh](https://developer.upsun.com/posts/tutorials/how-to-host-multiple-applications.md): Learn how to host and configure multiple-application projects on Platform.sh with this step-by-step guide.
- [Creating and deploying a Laravel REST API on Upsun in 10 minutes](https://developer.upsun.com/posts/tutorials/laravel-rest-api-on-upsun.md): Follow this comprehensive guide to build and deploy a modern Laravel REST API on Upsun's cloud platform. We'll walk through setting up your local development environment, creating API endpoints, and deploying to production with a custom domain. This tutorial is perfect for developers looking to quic…
- [OAuth authentication between Next.js and Laravel Passport](https://developer.upsun.com/posts/tutorials/oauth-nextjs-laravel.md): Learn how to implement secure OAuth authentication between a Next.js frontend and Laravel backend using Passport with the Authorization Code Flow and PKCE.
- [Offload Heavy Jobs to Upsun Task Containers, Triggered by Cron](https://developer.upsun.com/posts/tutorials/offload-heavy-jobs-to-upsun-task-containers-with-cron.md): Move long, resource-hungry jobs out of your crons and into on-demand Upsun task containers. Learn how to define a task, authorize your app to trigger it, and fire it from a lightweight cron for database imports or search reindexing.
- [Deploy your first Rails 8 application on Upsun](https://developer.upsun.com/posts/tutorials/rails8-upsun-tutorial.md): Learn how to build and deploy a modern Rails 8 blog application on Upsun's cloud platform. This hands-on tutorial walks you through local development setup, creating a feature-rich blog application, and deploying it to production with proper monitoring and scaling. Discover why Platform-as-a-Service…
- [Sandboxing AI agents on Upsun](https://developer.upsun.com/posts/tutorials/sandboxing-ai-agents-on-upsun.md): Sandbox AI agents in Upsun containers to protect secrets from prompt injection. Covers Linux primitives, Claude Code, and Codex.
- [Decouple your Symfony frontend using Next.js](https://developer.upsun.com/posts/tutorials/sfcon2024-decouple-frontend.md): How to decouple your frontend from your backend, using a Symfony project as backend and adding a Next.js application for frontend.
- [Up(sun) and Running with Forem](https://developer.upsun.com/posts/tutorials/upsun-and-running-forem.md)
- [Other / Posts / Unknown (235 pages)](https://developer.upsun.com/_llms/other/posts/unknown.md): Documentation under `/posts/unknown/`.
- [How n8n saved our Advocacy impact on Social Media!](https://developer.upsun.com/posts/use-cases/n8n-saved-my-life.md): Learn how n8n workflows improve internal communication and amplify our Advocacy social media impact.
- [Scale n8n with PostgreSQL and Redis on Upsun](https://developer.upsun.com/posts/use-cases/n8n-upgrade-with-postgresql-and-redis.md): Upgrade your n8n instance from SQLite to PostgreSQL and add Redis caching for better performance,  scalability, and reliability. Step-by-step guide for Upsun.
- [Meeting Jonny Harris: WordPress performance optimization with Blackfire](https://developer.upsun.com/posts/use-cases/wordpress-performance-optimization-with-blackfire.md)
- [Demos](https://developer.upsun.com/posts/videos/demos.md)
- [All Media](https://developer.upsun.com/posts/videos/index.md)
- [Livestreams](https://developer.upsun.com/posts/videos/livestreams.md)
- [Podcasts](https://developer.upsun.com/posts/videos/podcasts.md)
- [Talks](https://developer.upsun.com/posts/videos/talks.md)
- [Webinards](https://developer.upsun.com/posts/videos/webinards.md)
