|
| 1 | +const posts = [ |
| 2 | + { |
| 3 | + id: 2, |
| 4 | + title: 'Treezor: a serverless banking platform', |
| 5 | + href: '/docs/case-studies/treezor', |
| 6 | + description: |
| 7 | + 'Treezor, a banking-as-a-service platform processing millions of transactions daily, successfully migrated its legacy PHP application to serverless using AWS Lambda and Bref. This transformation improved scalability, reduced response times by 2.5x, cut production alerts by up to 3x, and reduced transaction timeouts 10x.', |
| 8 | + }, |
| 9 | + { |
| 10 | + id: 3, |
| 11 | + title: 'How Craft CMS built Craft Cloud', |
| 12 | + href: '/docs/case-studies/craft-cloud', |
| 13 | + description: |
| 14 | + 'Craft CMS built Craft Cloud, a serverless hosting platform to run Craft CMS projects at scale using AWS and Cloudflare. It uses Bref and AWS Lambda to host PHP applications, with each customer project isolated in its own environment and container. With over 310 million HTTP requests handled in a month, Craft Cloud proves that running PHP serverless is fast, scalable, and production-ready.', |
| 15 | + }, |
| 16 | +]; |
| 17 | + |
| 18 | +export default function CaseStudies() { |
| 19 | + return ( |
| 20 | + <div className="bg-gray-900 py-24 sm:py-32"> |
| 21 | + <div className="mx-auto max-w-7xl px-6 lg:px-8"> |
| 22 | + <div className="grid grid-cols-1 items-center gap-x-8 gap-y-16 lg:grid-cols-2"> |
| 23 | + <div className="mx-auto w-full lg:mx-0"> |
| 24 | + <h2 className="text-3xl font-black leading-8 text-white"> |
| 25 | + How teams use Bref to scale |
| 26 | + </h2> |
| 27 | + <p className="mt-6 text-lg leading-7 text-gray-300"> |
| 28 | + Discover how teams use Bref to scale their PHP applications with serverless. From reducing costs to improving performance, serverless is simplifying the way developers build and deploy applications. |
| 29 | + </p> |
| 30 | + <div className="mt-8 flex items-center gap-x-6"> |
| 31 | + <a |
| 32 | + href="/docs/" |
| 33 | + className="rounded-md bg-blue-500 px-3.5 py-2.5 text-sm font-semibold text-white shadow-sm hover:bg-blue-400 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-500" |
| 34 | + > |
| 35 | + Documentation |
| 36 | + </a> |
| 37 | + <a href="/support" className="text-sm font-semibold text-white"> |
| 38 | + Support & consulting <span aria-hidden="true">→</span> |
| 39 | + </a> |
| 40 | + </div> |
| 41 | + <form action="https://app.convertkit.com/forms/5696241/subscriptions" |
| 42 | + className="w-full flex flex-col items-start mt-8" |
| 43 | + method="post" data-sv-form="5696241" data-uid="ee838f35c4" data-format="inline" data-version="5" |
| 44 | + data-options="{"settings":{"after_subscribe":{"action":"message","success_message":"Success! Now check your email to confirm your subscription.","redirect_url":""},"analytics":{"google":null,"fathom":null,"facebook":null,"segment":null,"pinterest":null,"sparkloop":null,"googletagmanager":null},"modal":{"trigger":"timer","scroll_percentage":null,"timer":5,"devices":"all","show_once_every":15},"powered_by":{"show":true,"url":"https://convertkit.com/features/forms?utm_campaign=poweredby&utm_content=form&utm_medium=referral&utm_source=dynamic"},"recaptcha":{"enabled":false},"return_visitor":{"action":"show","custom_content":""},"slide_in":{"display_in":"bottom_right","trigger":"timer","scroll_percentage":null,"timer":5,"devices":"all","show_once_every":15},"sticky_bar":{"display_in":"top","trigger":"timer","scroll_percentage":null,"timer":5,"devices":"all","show_once_every":15}},"version":"5"}"> |
| 45 | + <ul className="text-red-400 font-bold" data-element="errors" data-group="alert"></ul> |
| 46 | + <div data-element="fields" data-stacked="false" |
| 47 | + className="flex flex-col sm:flex-row w-full sm:w-auto gap-2"> |
| 48 | + <input |
| 49 | + className="min-w-0 flex-auto rounded-md border-0 bg-white/10 px-3.5 py-2 text-white shadow-sm ring-1 ring-inset ring-white/10 placeholder:text-white/75 focus:ring-2 focus:ring-inset focus:ring-white sm:text-sm sm:leading-6" |
| 50 | + name="email_address" aria-label="Email" placeholder="[email protected]" required type="email" /> |
| 51 | + <button data-element="submit" type="submit" |
| 52 | + className="flex-none rounded-md !bg-gray-500 hover:!bg-gray-400 px-3.5 py-2.5 text-sm font-semibold text-white shadow-sm focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-blue-500"> |
| 53 | + <div className="formkit-spinner"> |
| 54 | + <div></div> |
| 55 | + <div></div> |
| 56 | + <div></div> |
| 57 | + </div> |
| 58 | + Subscribe to the newsletter |
| 59 | + </button> |
| 60 | + </div> |
| 61 | + </form> |
| 62 | + </div> |
| 63 | + <div className="mx-auto w-full border-t border-gray-900/10 pt-12 sm:pt-16 lg:mx-0 lg:max-w-none lg:border-t-0 lg:pt-0 text-gray-300"> |
| 64 | + <div className="-my-4 divide-y divide-gray-900/10"> |
| 65 | + {posts.map((post) => ( |
| 66 | + <article key={post.id} className="py-6"> |
| 67 | + <div className="group relative max-w-xl"> |
| 68 | + <h2 className="mt-2 text-lg font-black text-gray-200 group-hover:text-gray-100"> |
| 69 | + <a href={post.href}> |
| 70 | + <span className="absolute inset-0" /> |
| 71 | + {post.title} |
| 72 | + </a> |
| 73 | + </h2> |
| 74 | + <p className="mt-4 text-sm/6">{post.description}</p> |
| 75 | + <div className="mt-4 flex flex-col justify-between gap-6 sm:mt-8 sm:flex-row-reverse sm:gap-8 lg:mt-4 lg:flex-col"> |
| 76 | + <a href={post.href} className="text-sm/6 font-semibold text-blue-500 group-hover:text-blue-400"> |
| 77 | + Read more <span aria-hidden="true">→</span> |
| 78 | + </a> |
| 79 | + </div> |
| 80 | + </div> |
| 81 | + </article> |
| 82 | + ))} |
| 83 | + </div> |
| 84 | + </div> |
| 85 | + </div> |
| 86 | + </div> |
| 87 | + </div> |
| 88 | + ) |
| 89 | +} |
0 commit comments