Interactive REST API documentation portal for Hubfly Dashboard API (https://api.hubfly.space), built with Astro, React, and Tailwind CSS, pre-configured for Cloudflare Pages.
- Full OpenAPI 3.0 Coverage: Parses all 216 API endpoints across 13 functional modules (Auth, Projects, Organizations, Billing, CLI, Domains, GitHub, GPU, Marketplace, Courses, System, Regions, Templates).
- Hubfly Brand Theme: Matches
hubfly.spaceand the dashboard exactly — Geist Variable font, warm amber/umber primary, glass header, brand blobs, shine-sweep CTAs, and syntax-highlighted response payloads. - Dark & Light Mode: Built-in theme switching with persistent state (
localStorage) and zero initial flash (FOUC). - Instant Search Modal: Filter endpoints by path, title, or category with
Ctrl+Kor/. - Interactive "Try It Out" Playground: Live API execution against
api.hubfly.spacewith Bearer token authentication, path parameter inputs, JSON request body editor, response time measurement, and status code indicators. - Multi-Language Code Generators: 1-click code snippets for cURL, JavaScript (Fetch), Python (Requests), Go, and Node.js (Axios).
- Cloudflare Ready: Built with
@astrojs/cloudflareadapter andwrangler.jsonfor fast deployment to Cloudflare Pages.
- Bun (v1.0+) or Node.js (v18+)
cd hubfly-api-docs
bun installbun run devOpen http://localhost:4321 in your browser.
You can use the included Makefile for convenient short commands:
make install- Install project dependenciesmake dev- Start local development servermake build- Build production static bundle in./distmake preview- Preview production build locallymake deploy- Build and deploy to Cloudflare Pagesmake clean- Remove build artifacts andnode_modules
To generate static SSG bundles and Cloudflare Pages assets:
bun run buildThe compiled output will be created in dist/.
npx wrangler pages deploy dist --project-name=hubfly-api-docs- Push your repository to GitHub / GitLab.
- In the Cloudflare Pages dashboard, select Create a Project > Connect to Git.
- Set Framework Preset:
Astro. - Set Root Directory:
hubfly-api-docs. - Set Build Command:
bun run build. - Set Build Output Directory:
dist.
hubfly-api-docs/
├── public/
│ └── favicon.svg # Custom SVG favicon
├── src/
│ ├── components/
│ │ └── ApiExplorer.jsx # Interactive API explorer & playground component
│ ├── data/
│ │ └── openapi.json # Complete OpenAPI specification
│ ├── layouts/
│ │ └── Layout.astro # Main HTML layout, SEO tags, dark/light inline theme script
│ ├── pages/
│ │ └── index.astro # Main documentation entrypoint
│ ├── styles/
│ │ └── global.css # Global design tokens, method badges, glass panel styles
│ └── utils/
│ └── openapi.js # Data parser, category indexer, & code generator logic
├── .gitignore # Comprehensive Git ignore file
├── astro.config.mjs # Astro & Cloudflare adapter configuration
├── package.json # NPM dependencies & build scripts
├── tailwind.config.mjs # Tailwind theme configuration (No purple/indigo)
├── tsconfig.json # TypeScript configuration
└── wrangler.json # Cloudflare Pages deployment configuration
Internal & Proprietary to Hubfly Cloud Platform.