Skip to content

Commit 7b602f6

Browse files
authored
Merge pull request #6 from barbacane-dev/update/landing-page-v0.2
Update landing page to reflect v0.2 capabilities
2 parents 51fa6a7 + bc03690 commit 7b602f6

File tree

1 file changed

+55
-15
lines changed

1 file changed

+55
-15
lines changed

src/pages/index.astro

Lines changed: 55 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import Layout from '../layouts/Layout.astro';
2020

2121
<p class="text-lg sm:text-xl text-foreground-muted max-w-2xl mx-auto mb-10">
2222
Stop maintaining two sources of truth. Barbacane uses your OpenAPI and AsyncAPI
23-
specifications as the single source of truth for routing, validation, authentication, and event bridging.
23+
specifications as the single source of truth for routing, validation, authentication, authorization, and event bridging.
2424
</p>
2525

2626
<div class="flex flex-col sm:flex-row gap-4 justify-center">
@@ -150,8 +150,8 @@ import Layout from '../layouts/Layout.astro';
150150
</div>
151151
<h3 class="text-xl font-semibold mb-2">Request Validation</h3>
152152
<p class="text-foreground-muted">
153-
Automatic JSON Schema validation for bodies, parameters, and headers.
154-
Invalid requests never reach your backend.
153+
Automatic JSON Schema validation for bodies, parameters, and headers
154+
with built-in <code class="text-primary">$ref</code> resolution. Invalid requests never reach your backend.
155155
</p>
156156
</div>
157157

@@ -163,8 +163,8 @@ import Layout from '../layouts/Layout.astro';
163163
</div>
164164
<h3 class="text-xl font-semibold mb-2">Authentication</h3>
165165
<p class="text-foreground-muted">
166-
Built-in JWT, API Key, and OAuth2 authentication. Configured directly
167-
in your OpenAPI security schemes.
166+
Five built-in auth plugins: JWT, OIDC, OAuth2, API Key, and Basic Auth.
167+
Configured directly in your OpenAPI security schemes.
168168
</p>
169169
</div>
170170

@@ -187,10 +187,10 @@ import Layout from '../layouts/Layout.astro';
187187
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 5a1 1 0 011-1h14a1 1 0 011 1v2a1 1 0 01-1 1H5a1 1 0 01-1-1V5zM4 13a1 1 0 011-1h6a1 1 0 011 1v6a1 1 0 01-1 1H5a1 1 0 01-1-1v-6zM16 13a1 1 0 011-1h2a1 1 0 011 1v6a1 1 0 01-1 1h-2a1 1 0 01-1-1v-6z"></path>
188188
</svg>
189189
</div>
190-
<h3 class="text-xl font-semibold mb-2">WASM Plugins</h3>
190+
<h3 class="text-xl font-semibold mb-2">24 WASM Plugins</h3>
191191
<p class="text-foreground-muted">
192-
Extend functionality with WebAssembly plugins. Sandboxed execution means
193-
plugins can't crash your gateway.
192+
24 official plugins covering auth, security, traffic control, transformations, and observability.
193+
Sandboxed WebAssembly execution means plugins can't crash your gateway.
194194
</p>
195195
</div>
196196

@@ -241,8 +241,8 @@ import Layout from '../layouts/Layout.astro';
241241
</div>
242242
<h3 class="text-xl font-semibold mb-2">Web UI</h3>
243243
<p class="text-foreground-muted">
244-
Visual control plane for managing projects, specs, plugins, and deployments.
245-
No YAML wrestling required.
244+
Visual control plane with syntax-highlighted spec viewer, drag-and-drop uploads,
245+
build logs, data plane health monitoring, and one-click deployments.
246246
</p>
247247
</div>
248248

@@ -258,6 +258,45 @@ import Layout from '../layouts/Layout.astro';
258258
cloud, on-prem, edge locations, or embedded devices.
259259
</p>
260260
</div>
261+
262+
<div class="card">
263+
<div class="w-12 h-12 rounded-lg bg-primary-subtle flex items-center justify-center mb-4">
264+
<svg class="w-6 h-6 text-primary" fill="none" stroke="currentColor" viewBox="0 0 24 24">
265+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"></path>
266+
</svg>
267+
</div>
268+
<h3 class="text-xl font-semibold mb-2">Authorization</h3>
269+
<p class="text-foreground-muted">
270+
Policy-driven access control with inline CEL expressions, Open Policy Agent integration,
271+
and consumer-based ACLs. Zero-trust at the gateway.
272+
</p>
273+
</div>
274+
275+
<div class="card">
276+
<div class="w-12 h-12 rounded-lg bg-secondary-subtle flex items-center justify-center mb-4">
277+
<svg class="w-6 h-6 text-secondary" fill="none" stroke="currentColor" viewBox="0 0 24 24">
278+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8 7h12m0 0l-4-4m4 4l-4 4m0 6H4m0 0l4 4m-4-4l4-4"></path>
279+
</svg>
280+
</div>
281+
<h3 class="text-xl font-semibold mb-2">Request Transformation</h3>
282+
<p class="text-foreground-muted">
283+
Declarative transformations for headers, query params, paths, and JSON bodies
284+
before reaching your upstream. Variable interpolation with capture groups.
285+
</p>
286+
</div>
287+
288+
<div class="card">
289+
<div class="w-12 h-12 rounded-lg bg-accent-subtle flex items-center justify-center mb-4">
290+
<svg class="w-6 h-6 text-accent" fill="none" stroke="currentColor" viewBox="0 0 24 24">
291+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 8h14M5 8a2 2 0 110-4h14a2 2 0 110 4M5 8v10a2 2 0 002 2h10a2 2 0 002-2V8m-9 4h4"></path>
292+
</svg>
293+
</div>
294+
<h3 class="text-xl font-semibold mb-2">S3 Storage Proxy</h3>
295+
<p class="text-foreground-muted">
296+
Proxy requests to AWS S3 or S3-compatible storage (MinIO, RustFS, Ceph) with
297+
SigV4 signing. Single-bucket CDN or multi-bucket routing.
298+
</p>
299+
</div>
261300
</div>
262301
</div>
263302
</section>
@@ -499,11 +538,12 @@ import Layout from '../layouts/Layout.astro';
499538

500539
<div class="code-block rounded-lg p-4 mb-8 max-w-xl mx-auto">
501540
<code class="text-sm sm:text-base font-mono">
502-
<span class="text-foreground-muted"># Install Barbacane</span><br>
503-
<span class="text-primary">cargo</span> install barbacane<br><br>
504-
<span class="text-foreground-muted"># Compile your spec</span><br>
505-
<span class="text-primary">barbacane</span> compile --spec api.yaml --manifest barbacane.yaml --output api.bca<br><br>
506-
<span class="text-foreground-muted"># Run the gateway</span><br>
541+
<span class="text-foreground-muted"># Try the playground with Docker</span><br>
542+
<span class="text-primary">git</span> clone https://github.com/barbacane-dev/playground<br>
543+
<span class="text-primary">cd</span> playground && <span class="text-primary">docker-compose</span> up -d<br><br>
544+
<span class="text-foreground-muted"># Or install from source</span><br>
545+
<span class="text-primary">cargo</span> install barbacane<br>
546+
<span class="text-primary">barbacane</span> compile --spec api.yaml --manifest barbacane.yaml --output api.bca<br>
507547
<span class="text-primary">barbacane</span> serve --artifact api.bca
508548
</code>
509549
</div>

0 commit comments

Comments
 (0)