Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
7e4c2e3
wip
100gle Apr 14, 2026
8fddd91
feat(website): build landing page sections and migrate docs content
100gle Apr 14, 2026
073829a
refactor(website): brand-new design with shadcn create
100gle Apr 14, 2026
d84a31a
wip
100gle Apr 15, 2026
8d8ff26
wip
100gle Apr 15, 2026
7df8289
wip
100gle Apr 15, 2026
5ec62bc
wip
100gle Apr 15, 2026
d5943f2
feat: make all landing page components mobile-responsive
100gle Apr 15, 2026
1ba4ce1
wip
100gle Apr 15, 2026
9f2f1a8
wip
100gle Apr 16, 2026
827871a
wip
100gle Apr 16, 2026
e383841
refactor(website/i18n): Optimize i18n configuration and route path
100gle Apr 16, 2026
3b636da
feat(website): Set real repository data and enable SSR mode
100gle Apr 16, 2026
46693f7
style(website/hook): Redesign the hook intro illustration and animation
100gle Apr 16, 2026
7d329cc
refactor(website/tape): Redesign tape section illustration and animation
100gle Apr 17, 2026
af0236a
improve(website): Optimize website UI/UX
100gle Apr 17, 2026
b51ba65
wip
100gle Apr 17, 2026
3837bc1
wip
100gle Apr 18, 2026
e6972c0
wip
100gle Apr 18, 2026
34ba0a2
wip
100gle Apr 18, 2026
d1bbc5c
wip
100gle Apr 18, 2026
8add30f
wip
100gle Apr 18, 2026
419bb5d
wip
100gle Apr 18, 2026
0abc6d7
wip
100gle Apr 18, 2026
0dce511
feat(website/i18n): Optimize chinese translation content
100gle Apr 18, 2026
76b94f9
og and userwall avatar
100gle Apr 18, 2026
ae3ac62
feat(website): switch OG fonts to fontsource, add zh-cn index card
100gle Apr 18, 2026
2f3a518
extract site url environment variable
100gle Apr 18, 2026
26b6706
optimize og and html background
100gle Apr 18, 2026
4aaa3c6
fix the navbar issue
100gle Apr 19, 2026
948b50f
remove duplicated title
100gle Apr 19, 2026
2c852b9
fix x icon and ui i18n issue
100gle Apr 19, 2026
bf6e04d
chore: switch website adapter to cloudflare
PsiACE Apr 19, 2026
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
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -146,3 +146,4 @@ reference/
# Local legacy backups created during framework migrations
backup/
_version.py
!website/src/lib/
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ repos:
exclude: ^.devcontainer/devcontainer.json
- id: pretty-format-json
exclude: ^.devcontainer/devcontainer.json
args: [--autofix, --no-sort-keys]
args: [--autofix, --no-sort-keys, --no-ensure-ascii]
- id: end-of-file-fixer
- id: trailing-whitespace

Expand Down
5 changes: 5 additions & 0 deletions website/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# The canonical site URL (no trailing slash). Used for OG images, canonical links, etc.
SITE_URL=https://bub.build

# To get bub repository real contributors and stars data via GitHub API.
GITHUB_TOKEN=
23 changes: 23 additions & 0 deletions website/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# build output
dist/
# generated types
.astro/

# dependencies
node_modules/

# logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*


# environment variables
.env
.env.production

# macOS-specific files
.DS_Store
.vercel/output
.wrangler/
461 changes: 461 additions & 0 deletions website/AGENTS.md

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions website/CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# CLAUDE.md

> **All project guidelines live in [`AGENTS.md`](./AGENTS.md). Read that file — it is the single source of truth.**
>
> This file exists only so Claude Code automatically picks up the project context. Do not duplicate content here.
79 changes: 79 additions & 0 deletions website/astro.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
// @ts-check
import { fileURLToPath } from 'node:url';
import { defineConfig, envField } from 'astro/config';
import tailwindcss from '@tailwindcss/vite';
import starlight from '@astrojs/starlight';
import cloudflare from '@astrojs/cloudflare';

export default defineConfig({
// SSG by default; landing pages opt-in to SSR via `export const prerender = false`.
adapter: cloudflare({
prerenderEnvironment: 'node',
}),
site: process.env.SITE_URL ?? 'https://bub.build',
env: {
schema: {
SITE_URL: envField.string({
context: 'client',
access: 'public',
default: 'https://bub.build',
optional: true,
url: true,
}),
},
},
vite: {
plugins: [tailwindcss()],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url)),
},
},
},
integrations: [
starlight({
title: 'Bub',
description: 'A common shape for agents that live alongside people.',
logo: {
light: './src/assets/bub-logo.png',
dark: './src/assets/bub-logo-dark.png',
alt: 'Bub',
},
customCss: ['./src/styles/global.css'],
disable404Route: true,
locales: {
root: {
label: 'English',
lang: 'en',
},
'zh-cn': {
label: '简体中文',
lang: 'zh-CN',
},
},
social: [{ icon: 'github', label: 'GitHub', href: 'https://github.com/bubbuild/bub' }],
sidebar: [
{
label: 'Getting Started',
translations: { 'zh-CN': '快速开始' },
autogenerate: { directory: 'docs/getting-started' },
},
{
label: 'Concepts',
translations: { 'zh-CN': '概念' },
autogenerate: { directory: 'docs/concepts' },
},
{
label: 'Guides',
translations: { 'zh-CN': '指南' },
autogenerate: { directory: 'docs/guides' },
},
{
label: 'Extending',
translations: { 'zh-CN': '扩展' },
autogenerate: { directory: 'docs/extending' },
},
],
}),
],
});
25 changes: 25 additions & 0 deletions website/components.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "base-vega",
"rsc": false,
"tsx": true,
"tailwind": {
"config": "",
"css": "src/styles/global.css",
"baseColor": "neutral",
"cssVariables": true,
"prefix": ""
},
"iconLibrary": "lucide",
"rtl": false,
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"menuColor": "default",
"menuAccent": "subtle",
"registries": {}
}
38 changes: 38 additions & 0 deletions website/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
"name": "website",
"type": "module",
"version": "0.0.1",
"scripts": {
"dev": "astro dev",
"build": "astro build",
"preview": "astro preview"
},
"dependencies": {
"@astrojs/cloudflare": "^13.1.9",
"@astrojs/starlight": "^0.38.3",
"@astrojs/starlight-tailwind": "^5.0.0",
"@fontsource-variable/jetbrains-mono": "^5.2.8",
"@fontsource-variable/outfit": "^5.2.8",
"@fontsource/noto-sans-sc": "^5.2.9",
"@fontsource/outfit": "^5.2.8",
"@tailwindcss/vite": "^4.1.14",
"astro": "^6.0.1",
"astro-expressive-code": "^0.41.7",
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"motion": "^12.38.0",
"satori": "^0.26.0",
"sharp": "^0.34.2",
"tailwind-merge": "^3.5.0",
"tw-animate-css": "^1.4.0"
},
"devDependencies": {
"@lucide/astro": "^1.8.0",
"react-grab": "^0.1.32",
"tailwindcss": "^4.1.14",
"wrangler": "^4.13.2"
},
"overrides": {
"vite": "^7.3.2"
}
}
Loading
Loading