Skip to content

Commit 3674694

Browse files
committed
Initial nowake.ai website
0 parents  commit 3674694

38 files changed

Lines changed: 12006 additions & 0 deletions

.github/workflows/ci.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches:
7+
- main
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
build:
14+
name: Build website
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v6
19+
20+
- name: Setup Node.js
21+
uses: actions/setup-node@v6
22+
with:
23+
node-version: latest
24+
check-latest: true
25+
cache: npm
26+
27+
- name: Install dependencies
28+
run: npm ci
29+
30+
- name: Build
31+
run: npm run build
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: Deploy Cloudflare Pages
2+
3+
on:
4+
workflow_dispatch:
5+
6+
# Enable automatic production deploys after Cloudflare secrets and the Pages
7+
# project are configured:
8+
#
9+
# on:
10+
# push:
11+
# branches:
12+
# - main
13+
# workflow_dispatch:
14+
15+
permissions:
16+
contents: read
17+
deployments: write
18+
19+
concurrency:
20+
group: cloudflare-pages-production
21+
cancel-in-progress: true
22+
23+
jobs:
24+
deploy:
25+
name: Deploy website
26+
runs-on: ubuntu-latest
27+
environment:
28+
name: cloudflare-pages
29+
url: ${{ steps.deploy.outputs.deployment-url }}
30+
steps:
31+
- name: Checkout
32+
uses: actions/checkout@v6
33+
34+
- name: Setup Node.js
35+
uses: actions/setup-node@v6
36+
with:
37+
node-version: latest
38+
check-latest: true
39+
cache: npm
40+
41+
- name: Install dependencies
42+
run: npm ci
43+
44+
- name: Build
45+
run: npm run build
46+
47+
- name: Deploy to Cloudflare Pages
48+
id: deploy
49+
uses: cloudflare/wrangler-action@v3
50+
with:
51+
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
52+
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
53+
command: pages deploy dist --project-name=nowake-ai-website --branch=main

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
node_modules/
2+
dist/
3+
.astro/

AGENTS.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Website Agent Instructions
2+
3+
## Dependency Policy
4+
5+
The `website/` directory is the nowake.ai site repository.
6+
7+
This site currently has no legacy compatibility burden.
8+
9+
When adding or upgrading tools, frameworks, libraries, runtimes, or build dependencies, prefer the latest stable version by default.
10+
11+
Do not pin to older major versions for compatibility unless there is a clear, documented reason, such as:
12+
13+
- the latest stable version is incompatible with the target runtime or hosting platform;
14+
- the latest stable version has a known blocking bug or security issue;
15+
- a project-specific integration explicitly requires an older version.
16+
17+
If an older dependency version is chosen, document the reason near the dependency change or in the relevant project notes.
18+
19+
## Project Page Content Rules
20+
21+
When creating or revising a project page, follow `PROJECT_PAGE_STANDARD.md`. Project pages must share nowake.ai visual language, but each project needs a page structure tailored to its own product shape; do not reuse one fixed page template across projects.
22+
23+
For every project page, do both jobs well:
24+
25+
- Explain the project principle clearly enough that a new visitor can understand how it works.
26+
- Put the core product selling points near the top, in concise and concrete language.
27+
28+
Do not let architecture explanation bury the value proposition. Project pages should make the main benefit obvious before deeper implementation details.
29+
30+
Current emphasis:
31+
32+
- `kube-insight`: treat it as a foundational AIOps infrastructure component with large future surface area. Its page can use more eye-catching, forceful copy, but the claims must stay grounded in concrete retained-evidence workflows, performance proof, and current shipped capabilities. Highlight that it is agent-friendly, supports multiple operating/storage modes, and can be dramatically faster than broad live `kubectl` investigation workflows because it queries retained, pre-extracted evidence.
33+
- `svc-lb-mux`: treat it as a narrow, original, operations-first tool for teams that need to expose many TCP/UDP services through provider L4 load balancers while caring about cost, quota, IP, forwarding rule, or port pressure. Its copy should be plain and specific: make the use case, user, product advantage, provider limits, and migration path obvious before controller internals.

DEPLOYMENT.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
# Deployment
2+
3+
The nowake.ai website is a static Astro site designed for Cloudflare Pages.
4+
5+
## Cloudflare Pages Project
6+
7+
Recommended project settings:
8+
9+
- Project name: `nowake-ai-website`
10+
- Production branch: `main`
11+
- Build command: `npm run build`
12+
- Build output directory: `dist`
13+
- Node.js version: latest stable Node.js available in the build environment
14+
15+
## GitHub Actions Direct Upload
16+
17+
This repository includes `.github/workflows/cloudflare-pages.yml`, which deploys `dist` with Wrangler after a successful build. It is intentionally manual-only until the Cloudflare Pages project and GitHub secrets are configured. Enable the commented `push` trigger after the first successful manual deployment.
18+
19+
Required GitHub Actions secrets:
20+
21+
- `CLOUDFLARE_API_TOKEN`: Cloudflare API token with Cloudflare Pages edit/deploy permission for the target account.
22+
- `CLOUDFLARE_ACCOUNT_ID`: Cloudflare account ID.
23+
24+
The workflow deploys with:
25+
26+
```console
27+
wrangler pages deploy dist --project-name=nowake-ai-website --branch=main
28+
```
29+
30+
## Dashboard Git Integration Alternative
31+
32+
If using Cloudflare Pages Git integration instead of GitHub Actions direct upload, connect `nowakeai/website` and use the same project settings above.
33+
34+
## Custom Domain
35+
36+
After the Pages project exists, add `nowake.ai` and optionally `www.nowake.ai` as custom domains in Cloudflare Pages. Keep DNS proxied through Cloudflare.

0 commit comments

Comments
 (0)