Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 20 additions & 20 deletions .github/workflows/accessibility.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,31 @@ on:
- main
- next
paths:
- ".github/workflows/accessibility.yml"
- "package.json"
- "playwright.config.*"
- "svelte.config.*"
- "vite.config.*"
- "wrangler.jsonc"
- "pnpm-lock.yaml"
- "src/**"
- "static/**"
- "tests/**"
- '.github/workflows/accessibility.yml'
- 'package.json'
- 'playwright.config.*'
- 'svelte.config.*'
- 'vite.config.*'
- 'wrangler.jsonc'
- 'pnpm-lock.yaml'
- 'src/**'
- 'static/**'
- 'tests/**'
push:
branches:
- main
- next
paths:
- ".github/workflows/accessibility.yml"
- "package.json"
- "playwright.config.*"
- "svelte.config.*"
- "vite.config.*"
- "wrangler.jsonc"
- "pnpm-lock.yaml"
- "src/**"
- "static/**"
- "tests/**"
- '.github/workflows/accessibility.yml'
- 'package.json'
- 'playwright.config.*'
- 'svelte.config.*'
- 'vite.config.*'
- 'wrangler.jsonc'
- 'pnpm-lock.yaml'
- 'src/**'
- 'static/**'
- 'tests/**'
workflow_dispatch:
permissions:
contents: read
Expand Down
4 changes: 2 additions & 2 deletions src/lib/components/Comparison.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -75,11 +75,11 @@
<!-- Table — horizontally scrollable on mobile -->
<div
bind:this={tableScroller}
class="overflow-x-auto focus:outline-2 focus:outline-offset-[-2px] focus:outline-fyra-red-500"
class="overflow-x-auto focus:outline-2 focus:outline-offset-2 focus:outline-fyra-red-500"
role="region"
aria-label="Scrollable VPS comparison table"
>
<table class="w-full min-w-[600px] border-collapse">
<table class="w-full min-w-150 border-collapse">
<!-- Column headers -->
<thead>
<tr class="border-b border-fyra-gray-800">
Expand Down
23 changes: 14 additions & 9 deletions src/lib/components/Features.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,17 @@
Stack is provided by <a
href="https://fyralabs.com"
class="text-fyra-gray-200 underline hover:text-white">Fyra Labs</a
>, an open-source community that develops Terra and Ultramarine Linux.
>, the open source community that develops Terra and Ultramarine Linux.
</p>

<p class="mt-3 text-base leading-relaxed text-fyra-gray-400">
We focus on bare-metal that just works, built from the ground up to support the open source
projects you love; all without breaking the bank, or your mind.
Everything we do is open source, and you can view and contribute to the very code that
powers your server.
</p>

<p class="mt-3 text-base leading-relaxed text-fyra-gray-400">
We focus on servers that just work, built to support and use the open source projects you
love.
</p>
</div>

Expand All @@ -39,40 +44,40 @@
<div class="relative">
<p class="text-lg font-semibold text-fyra-gray-50">Fast by default</p>
<p class="mt-1.5 max-w-xs text-sm leading-relaxed text-fyra-gray-400">
Fast storage, fast compute, fast networking, <br /> fast everything.
Fast storage, fast compute, fast networking, <br /> fast <i>everything</i>
</p>
</div>
</div>

<!-- Linux Native -->
<!-- Location -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg leading-snug font-semibold text-fyra-gray-50">Midwest proud</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
Operating out of Chicago, Illinois since 2026.
Operating out of Chicago, Illinois
</p>
</div>

<!-- Independent -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg font-semibold text-fyra-gray-50">Independent</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
Built on infrastructure we own, we don't resell another provider.
Built on infrastructure we own, we don't resell another provider
</p>
</div>

<!-- Real support -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg font-semibold text-fyra-gray-50">Real support</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
By the system engineers that actually maintain the servers.
By the engineers that actually maintain the servers
</p>
</div>

<!-- Simple pricing -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg font-semibold text-fyra-gray-50">Honest pricing</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
No hidden fees, no egress charges, no surprise bills.
No hidden fees, no egress charges, no surprise bills
</p>
</div>
</div>
Expand Down
4 changes: 2 additions & 2 deletions src/lib/components/Pricing.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
name: 'Virtual Private Servers',
href: '/services/vps' as ServiceHref,
price: '5',
description: 'Scales to $48/mo.',
description: 'Scales to $48/mo',
features: [
'Cascade Lake vCPUs',
'SAS3 SSD storage',
Expand Down Expand Up @@ -47,7 +47,7 @@
<h2 class="text-3xl font-semibold tracking-tight text-fyra-gray-50 md:text-4xl">
Priced fairly
</h2>
<p class="mt-2 text-sm text-fyra-gray-400">Simple, flat-rate plans. No surprise fees.</p>
<p class="mt-2 text-sm text-fyra-gray-400">Simple, flat-rate plans with no surprise fees</p>
</div>

<!-- Plans -->
Expand Down
6 changes: 2 additions & 4 deletions src/lib/components/about/AboutCTA.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,9 @@
>
<div>
<h2 class="text-3xl font-semibold tracking-tight text-fyra-gray-50 md:text-4xl">
Built by engineers, not a board.
Built by engineers.
</h2>
<p class="mt-2 text-sm text-fyra-gray-400">
Small team, on purpose. We live with the decisions we make.
</p>
<p class="mt-2 text-sm text-fyra-gray-400">Small team, on purpose. Everyone here ships.</p>
</div>
<a
href={resolve('/about')}
Expand Down
Empty file.
18 changes: 9 additions & 9 deletions src/lib/components/about/AboutMission.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<!-- Header -->
<div class="border-b border-fyra-gray-800 px-6 py-8 md:px-10">
<h2 class="text-3xl font-semibold tracking-tight text-fyra-gray-50 md:text-4xl">
Why we exist.
Why we exist
</h2>
<p class="mt-2 text-sm text-fyra-gray-400">The honest version, not the marketing one.</p>
</div>
Expand All @@ -19,29 +19,29 @@
ecosystem pulling you in twelve directions.
</p>
<p class="mt-4 text-base leading-relaxed text-fyra-gray-300">
We started this because we wanted infrastructure we'd actually want to use — something we
We started this because we wanted infrastructure we'd actually like to use. Something we
could recommend to friends without caveat. That's the bar we hold ourselves to.
</p>
<p class="mt-6 text-2xl font-semibold tracking-tight text-fyra-red-400">$5/mo.</p>
<p class="mt-1 text-sm text-fyra-gray-500">Our entry-level VPS. No games.</p>
</div>
<div class="px-6 py-10 md:px-10">
<p class="text-base leading-relaxed text-fyra-gray-300">
We're proud supporters of open source. Fyra Stack is the commercial arm of Fyra Labs, a
small group building tools and systems around Linux, community, and the idea that software
should be made by people who care what happens to it.
<!-- is stack still considered the commercial arm? -->
We're proud supporters of open source. Fyra Stack is the commercial arm of Fyra Labs, a small
group building tools and systems around Linux, community, and the idea that software should be
made by people who care what happens to it.
</p>
<p class="mt-4 text-base leading-relaxed text-fyra-gray-300">
If that sounds like something you want to be a part of, we're building in the open — and the
team page is short enough that you can actually read it.
If that sounds like something you want to be a part of, we're building in the open.
</p>
<a
href="https://github.com/FyraLabs"
href="https://github.com/FyraStack"
target="_blank"
rel="noopener noreferrer"
class="mt-6 inline-flex text-sm font-medium text-fyra-red-400 transition-colors duration-100 hover:text-fyra-red-300"
>
Fyra Labs on GitHub <span aria-hidden="true" class="ml-1">→</span>
Fyra Stack on GitHub <span aria-hidden="true" class="ml-1">→</span>
</a>
</div>
</div>
Expand Down
30 changes: 0 additions & 30 deletions src/lib/components/about/AboutQuote.svelte

This file was deleted.

2 changes: 1 addition & 1 deletion src/lib/components/about/AboutTeam.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
</p>
</div>
<a
href="https://github.com/FyraLabs"
href="https://github.com/FyraStack"
target="_blank"
rel="noopener noreferrer"
class="shrink-0 text-sm font-medium text-fyra-red-400 transition-colors duration-100 hover:text-fyra-red-300"
Expand Down
18 changes: 10 additions & 8 deletions src/lib/components/services/colocation/ColocationDocsLink.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,15 @@
<section class="border-b border-fyra-gray-800">
<div class="flex flex-col items-center justify-center px-8 py-12 text-center lg:py-16">
<p class="text-lg text-fyra-gray-300">Need a hand getting started?</p>
<p class="mt-2 text-sm text-fyra-gray-400">Our docs walk you through it.</p>
<a
href={resolve('/docs')}
class="mt-3 inline-flex items-center gap-2 text-base text-fyra-red-400 transition-colors hover:text-fyra-red-300"
>
Read the documentation
<Icon src={ArrowRight} class="h-4 w-4" aria-hidden="true" />
</a>
<p class="mt-2 text-sm text-fyra-gray-400">Our docs walk you through it!</p>
<div class="mt-6 flex items-center justify-center gap-x-4">
<a
href={resolve('/docs')}
class="inline-flex items-center gap-2 border border-fyra-red-500 bg-fyra-gray-800 px-5 py-2.5 text-sm font-medium text-fyra-gray-50 transition-colors duration-200 hover:border-fyra-red-500"
>
Read the documentation
<Icon src={ArrowRight} class="h-4 w-4" aria-hidden="true" />
</a>
</div>
</div>
</section>
14 changes: 7 additions & 7 deletions src/lib/components/services/colocation/ColocationFeatures.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
<p class="mt-3 text-base leading-relaxed text-fyra-gray-400">
We charge you for rack space, power, and bandwidth.
</p>
<p class="mt-3 text-base leading-relaxed text-fyra-gray-300">That's it.</p>
<p class="mt-3 text-base leading-relaxed text-fyra-gray-300">That's it!</p>
</div>

<!-- Right: bento grid -->
Expand All @@ -33,13 +33,13 @@
aria-hidden="true"
/>
<div
class="absolute inset-0 bg-gradient-to-r from-fyra-gray-900 via-fyra-gray-900/60 to-transparent"
class="absolute inset-0 bg-linear-to-r from-fyra-gray-900 via-fyra-gray-900/60 to-transparent"
></div>
</div>
<div class="relative">
<p class="text-lg font-semibold text-fyra-gray-50">Midwest proud</p>
<p class="mt-1.5 max-w-xs text-sm leading-relaxed text-fyra-gray-400">
Providing low-latency access to the entire US on our blended network.
Providing low-latency access to the entire US on our blended network
</p>
</div>
</div>
Expand All @@ -48,31 +48,31 @@
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg leading-snug font-semibold text-fyra-gray-50">IPMI remote access</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
Full out-of-band management over a simple VPN connection.
Full out-of-band management over a simple VPN connection
</p>
</div>

<!-- Power -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg font-semibold text-fyra-gray-50">Redundant power</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
A+B feeds, UPS, and generator backup keeps your server on.
A+B feeds, UPS, and a generator backup keeps your server on
</p>
</div>

<!-- Support -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg font-semibold text-fyra-gray-50">Real support</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
By the engineers who have actually racked servers before.
By engineers who have actually racked servers before
</p>
</div>

<!-- Pricing -->
<div class="bg-fyra-gray-900 p-8">
<p class="text-lg font-semibold text-fyra-gray-50">Honest pricing</p>
<p class="mt-1.5 text-sm leading-relaxed text-fyra-gray-400">
No hidden power fees, no egress charges, no surprise bills.
No hidden power fees, no egress charges, no surprise bills
</p>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<span class="text-fyra-red-400">We'll handle the rest</span>
</h2>
<p class="mx-auto max-w-lg text-base text-fyra-gray-400 sm:text-lg/7">
Colocation without the enterprise markup, mandatory contracts, or fees for asking questions.
Colocation without the enterprise markup, mandatory contracts, or fees for asking questions
</p>
<div class="mt-10 flex items-center justify-center gap-x-6">
<a
Expand Down
8 changes: 4 additions & 4 deletions src/lib/components/services/colocation/ColocationPlans.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@

<div class="border-b border-fyra-gray-800 px-6 py-8 md:px-10">
<h2 class="text-3xl font-semibold tracking-tight text-fyra-gray-50 md:text-4xl">Priced fairly</h2>
<p class="mt-2 text-sm text-fyra-gray-400">Simple, flat-rate plans with no surprise fees.</p>
<p class="mt-2 text-sm text-fyra-gray-400">Simple, flat-rate plans with no surprise fees</p>
</div>
<div class="grid grid-cols-7">
<div class="col-span-7 flex flex-col justify-between border-b border-fyra-gray-800 p-5">
Expand All @@ -31,7 +31,7 @@
</div>
<!-- middle -->
<div
class="mt-8 grid grid-cols-1 gap-x-8 gap-y-1.5 text-base md:grid-cols-2 md:gap-y-3.5 lg:mt-16 lg:text-[1.05rem]"
class="mt-8 grid grid-cols-1 gap-x-8 gap-y-1.5 text-base md:grid-cols-2 md:gap-y-3.5 lg:mt-10 lg:text-[1.05rem]"
>
<div class="flex justify-between">
<p class="text-fyra-gray-400">Rack Units</p>
Expand Down Expand Up @@ -73,7 +73,7 @@
</h3>
</div>
</div>
<div class="mt-4 text-left md:mt-6">
<div class="mt-3 text-left md:mt-4">
<p class="text-xs text-fyra-gray-400">
{plan.units}U
<span class="px-0.5 text-fyra-red-500">•</span>
Expand All @@ -94,6 +94,6 @@
class="text-fyra-red-400 underline underline-offset-2 transition-colors hover:text-fyra-red-300"
>Contact us</a
>
for bulk orders and non-profit discounts.
for bulk orders and non-profit discounts!
</p>
</div>
Loading