Skip to content

Commit eebec73

Browse files
authored
Add docs (#50)
* Add docs * Fix format * Fix lint * Fix vale * Revert "Fix format" This reverts commit fc931d2. * Revert README change
1 parent 014e8e7 commit eebec73

33 files changed

Lines changed: 7377 additions & 4 deletions
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
[Ee]mbucketd?
2+
Trino
3+
AWS
4+
[Ss]nowflake
5+
[Nn]amespaces?
6+
dbt
7+
minio
8+
mc
9+
REST
10+
[Ll]akehouses?
11+
failover
12+
SDK
13+
ACID
14+
OLAP
15+
OLTP
16+
DataFusion
17+
Superset
18+
Gitlab
19+
[Ww]hitepaper
20+
[Pp]ushdown
21+
[Mm]etastore
22+
async
23+
Samply
24+
OTLP
25+
OpenTelemetry
26+
Jaeger
27+
ANSI
28+
JWT
29+
CORS
30+
ARN
31+
IAM
32+
NYC
33+
UTC
34+
DBAs?
35+
config

.github/workflows/docs-ci.yml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
name: Docs CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
paths:
7+
- "docs/**"
8+
pull_request:
9+
branches: [main]
10+
paths:
11+
- "docs/**"
12+
13+
# Cancel in-progress runs for the same branch/PR to save resources
14+
concurrency:
15+
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
16+
cancel-in-progress: true
17+
18+
jobs:
19+
format:
20+
name: Format Check
21+
runs-on: ubuntu-latest
22+
steps:
23+
- uses: actions/checkout@v6
24+
- name: Setup Node.js
25+
uses: actions/setup-node@v6
26+
with:
27+
node-version: "22"
28+
- name: Setup PNPM
29+
uses: pnpm/action-setup@v4
30+
with:
31+
version: "10.11.0"
32+
run_install: false
33+
- name: Get pnpm store directory
34+
id: pnpm-cache
35+
shell: bash
36+
run: |
37+
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT
38+
- name: Setup pnpm cache
39+
uses: actions/cache@v4
40+
with:
41+
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
42+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/docs/pnpm-lock.yaml') }}
43+
restore-keys: |
44+
${{ runner.os }}-pnpm-store-
45+
- name: Install dependencies
46+
working-directory: ./docs
47+
run: pnpm install
48+
- name: Check formatting
49+
working-directory: ./docs
50+
run: pnpm prettier --check .
51+
52+
build:
53+
name: Validate Build
54+
runs-on: ubuntu-latest
55+
needs: [format]
56+
steps:
57+
- uses: actions/checkout@v6
58+
- name: Setup Node.js
59+
uses: actions/setup-node@v6
60+
with:
61+
node-version: "22"
62+
- name: Setup PNPM
63+
uses: pnpm/action-setup@v4
64+
with:
65+
version: "10.11.0"
66+
run_install: false
67+
- name: Get pnpm store directory
68+
id: pnpm-cache
69+
shell: bash
70+
run: |
71+
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT
72+
- name: Setup pnpm cache
73+
uses: actions/cache@v4
74+
with:
75+
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }}
76+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/docs/pnpm-lock.yaml') }}
77+
restore-keys: |
78+
${{ runner.os }}-pnpm-store-
79+
- name: Install dependencies
80+
working-directory: ./docs
81+
run: pnpm install
82+
- name: Validate build
83+
working-directory: ./docs
84+
run: pnpm build:dry-run
85+
86+
vale-lint:
87+
name: Vale lint
88+
runs-on: ubuntu-latest
89+
steps:
90+
- uses: actions/checkout@v6
91+
- uses: errata-ai/vale-action@v2.1.1
92+
with:
93+
files: "docs/src/content/"

.gitignore

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@ target/
55
.env
66
metastore.yaml
77

8-
styles/
9-
!styles/config
8+
# Ignore only the root styles directory; allow .github/styles for Vale
9+
/styles/
10+
!/styles/config
11+
!.github/styles/
12+
!.github/styles/**
1013

1114
**/*.rs.bk
1215
.DS_Store
1316
.idea/
1417
.cursor
1518

1619
metastore.yaml
17-

.vale.ini

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
StylesPath = .github/styles
2+
3+
MinAlertLevel = suggestion
4+
5+
Packages = Google, write-good, MDX
6+
7+
Vocab = embucket
8+
9+
[*.{md,mdx}]
10+
BasedOnStyles = Vale, Google, write-good
11+
12+
[formats]
13+
mdx = md
14+
15+
[*.mdx]
16+
CommentDelimiters = {/*, */}
17+
TokenIgnores = (import\s+[^;]+;)

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,6 @@ docker run --name embucket --rm -p 3000:3000 \
100100

101101
```bash
102102
./embucketd \
103-
--no-bootstrap \
104103
--metastore-config config/metastore.yaml
105104
```
106105

docs/.gitignore

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Dependencies
2+
node_modules
3+
.pnpm-debug.log*
4+
5+
# Build artifacts
6+
/dist
7+
/.astro
8+
9+
# OS-specific
10+
.DS_Store
11+
*.swo
12+
*~
13+
*.swp
14+
15+
# Logs
16+
npm-debug.log*
17+
yarn-debug.log*
18+
yarn-error.log*
19+
pnpm-debug.log*
20+
lerna-debug.log*
21+
22+
# Environment variables
23+
.env
24+
.env*.local

docs/.prettierignore

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

docs/.vscode/extensions.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"recommendations": ["astro-build.astro-vscode"]
3+
}

docs/.vscode/settings.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"prettier.documentSelectors": ["**/*.astro"],
3+
"editor.defaultFormatter": "esbenp.prettier-vscode",
4+
"editor.formatOnSave": true
5+
}

docs/README.md

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Embucket docs
2+
3+
## About
4+
5+
`Astro` Starlight frontend app for the Embucket docs.
6+
7+
## Local development prerequisites
8+
9+
Before you begin, make sure you have the following installed on your machine:
10+
11+
- **Node.js** (LTS version) - [Download](https://nodejs.org)
12+
- **`pnpm`** (Package Manager) - [Installation Guide](https://pnpm.io)
13+
14+
## Quick start
15+
16+
Follow these steps to get the app up and running in your local development environment.
17+
18+
### 1. FE Installation and Setup (`./docs` folder)
19+
20+
- **Install Dependencies**
21+
22+
```bash
23+
pnpm install
24+
```
25+
26+
- **Start the Development Server**
27+
28+
```bash
29+
pnpm dev
30+
```
31+
32+
### 2. Verification
33+
34+
To ensure everything is working correctly:
35+
36+
- The frontend development server should be running on http://localhost:4321.
37+
38+
### Project structure
39+
40+
```
41+
.
42+
├── public/
43+
├── src/
44+
│ ├── assets/
45+
│ ├── components/
46+
│ ├── content/
47+
│ │ ├── docs/
48+
│ └── content.config.ts
49+
└── astro.config.mjs
50+
```
51+
52+
Starlight looks for `.md` or `.mdx` files in the `src/content/docs/` directory. Each file is exposed as a route based on its filename.
53+
54+
Images can be added to `src/assets/` and embedded in Markdown with a relative link.
55+
56+
Static assets, like `favicons`, can be placed in the `public/` directory.
57+
58+
## Common scripts
59+
60+
| Command | Action |
61+
| :--------------- | :------------------------------------------------- |
62+
| `pnpm install` | Installs dependencies |
63+
| `pnpm dev` | Starts local `dev` server at `localhost:4321` |
64+
| `pnpm build` | Build your production site to `./dist/` |
65+
| `pnpm preview` | Preview your build locally, before deploying |
66+
| `pnpm astro ...` | Run `CLI` commands like `astro add`, `astro check` |
67+
| `pnpm format` | Format with Prettier + fix errors |
68+
| `pnpm ncu` | Update `repo` dependencies |
69+
70+
### Tech stack
71+
72+
- [`Astro` Starlight](https://starlight.astro.build)
73+
- [Tailwind](https://tailwindcss.com)
74+
- [Prettier](https://prettier.io)
75+
- [Vale](https://vale.sh)

0 commit comments

Comments
 (0)