Skip to content

Commit 172af2e

Browse files
feat: initial DevRail implementation
DevRail project website with development standards, beta notice, and STABILITY.md. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
0 parents  commit 172af2e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+3023
-0
lines changed

.cursorrules

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
This project follows DevRail development standards.
2+
See DEVELOPMENT.md for the complete reference.
3+
4+
Critical Rules:
5+
6+
1. Run `make check` before completing any story or task. Never mark work done
7+
without passing checks. This is the single gate for all linting, formatting,
8+
security, and test validation.
9+
2. Use conventional commits. Every commit message follows the
10+
`type(scope): description` format. No exceptions.
11+
3. Never install tools outside the container. All linters, formatters, scanners,
12+
and test runners live inside `ghcr.io/devrail-dev/dev-toolchain:v1`. The
13+
Makefile delegates to Docker. Do not install tools on the host.
14+
4. Respect `.editorconfig`. Never override formatting rules (indent style, line
15+
endings, trailing whitespace) without explicit instruction.
16+
5. Write idempotent scripts. Every script must be safe to re-run. Check before
17+
acting: `command -v tool || install_tool`, `mkdir -p`, guard file writes with
18+
existence checks.
19+
6. Use the shared logging library. No raw `echo` for status messages. Use
20+
`log_info`, `log_warn`, `log_error`, `log_debug`, and `die` from
21+
`lib/log.sh`.
22+
23+
Quick Reference:
24+
25+
- Run `make check` to validate all standards
26+
- Run `make help` to see available targets
27+
- Run `make build` to build the Hugo site
28+
- Run `make serve` to start the local development server
29+
- All tools run inside the dev-toolchain container

.devrail.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# .devrail.yml — DevRail project configuration
2+
# This is a documentation site (Hugo + Markdown), not a code project.
3+
# No language-specific tools apply; standards are enforced via editorconfig
4+
# and Hugo build validation.
5+
languages: []
6+
7+
fail_fast: false
8+
log_format: json

.editorconfig

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
root = true
2+
3+
[*]
4+
charset = utf-8
5+
end_of_line = lf
6+
insert_final_newline = true
7+
trim_trailing_whitespace = true
8+
indent_style = space
9+
indent_size = 2
10+
11+
[Makefile]
12+
indent_style = tab
13+
14+
[*.py]
15+
indent_size = 4
16+
17+
[*.sh]
18+
indent_size = 2

.github/workflows/ci.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
branches: [main]
6+
7+
jobs:
8+
check:
9+
runs-on: ubuntu-latest
10+
container:
11+
image: ghcr.io/devrail-dev/dev-toolchain:v1
12+
steps:
13+
- uses: actions/checkout@v4
14+
- run: make check
15+
16+
build:
17+
runs-on: ubuntu-latest
18+
steps:
19+
- uses: actions/checkout@v4
20+
21+
- name: Setup Hugo
22+
uses: peaceiris/actions-hugo@v3
23+
with:
24+
hugo-version: 'latest'
25+
extended: true
26+
27+
- name: Setup Go
28+
uses: actions/setup-go@v5
29+
with:
30+
go-version: '>=1.21'
31+
32+
- name: Setup Node.js
33+
uses: actions/setup-node@v4
34+
with:
35+
node-version: '20'
36+
37+
- name: Install PostCSS
38+
run: npm install postcss postcss-cli autoprefixer
39+
40+
- name: Build
41+
run: hugo --minify

.github/workflows/deploy.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Deploy to Cloudflare Pages
2+
3+
on:
4+
push:
5+
branches: [main]
6+
7+
permissions:
8+
contents: read
9+
deployments: write
10+
11+
jobs:
12+
deploy:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
with:
17+
submodules: false
18+
fetch-depth: 0
19+
20+
- name: Setup Hugo
21+
uses: peaceiris/actions-hugo@v3
22+
with:
23+
hugo-version: 'latest'
24+
extended: true
25+
26+
- name: Setup Go
27+
uses: actions/setup-go@v5
28+
with:
29+
go-version: '>=1.21'
30+
31+
- name: Setup Node.js
32+
uses: actions/setup-node@v4
33+
with:
34+
node-version: '20'
35+
36+
- name: Install PostCSS
37+
run: npm install postcss postcss-cli autoprefixer
38+
39+
- name: Build
40+
run: hugo --minify
41+
42+
- name: Deploy to Cloudflare Pages
43+
uses: cloudflare/pages-action@v1
44+
with:
45+
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
46+
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
47+
projectName: devrail-dev
48+
directory: public
49+
50+
# Required secrets (configure in GitHub repository settings):
51+
# CLOUDFLARE_API_TOKEN - Cloudflare API token with Pages edit permission
52+
# CLOUDFLARE_ACCOUNT_ID - Cloudflare account ID

.gitignore

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Hugo build output
2+
public/
3+
resources/
4+
5+
# Go module cache
6+
go.sum.bak
7+
8+
# OS files
9+
.DS_Store
10+
Thumbs.db
11+
12+
# Editor files
13+
*.swp
14+
*.swo
15+
*~
16+
.idea/
17+
.vscode/
18+
19+
# Hugo temporary files
20+
.hugo_build.lock

.opencode/agents.yaml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
agents:
2+
- name: devrail
3+
description: DevRail development standards
4+
instructions: |
5+
This project follows DevRail development standards.
6+
See DEVELOPMENT.md for the complete reference.
7+
8+
Critical Rules:
9+
10+
1. Run `make check` before completing any story or task. Never mark work
11+
done without passing checks. This is the single gate for all linting,
12+
formatting, security, and test validation.
13+
2. Use conventional commits. Every commit message follows the
14+
`type(scope): description` format. No exceptions.
15+
3. Never install tools outside the container. All linters, formatters,
16+
scanners, and test runners live inside
17+
`ghcr.io/devrail-dev/dev-toolchain:v1`. The Makefile delegates to
18+
Docker. Do not install tools on the host.
19+
4. Respect `.editorconfig`. Never override formatting rules (indent style,
20+
line endings, trailing whitespace) without explicit instruction.
21+
5. Write idempotent scripts. Every script must be safe to re-run. Check
22+
before acting: `command -v tool || install_tool`, `mkdir -p`, guard
23+
file writes with existence checks.
24+
6. Use the shared logging library. No raw `echo` for status messages. Use
25+
`log_info`, `log_warn`, `log_error`, `log_debug`, and `die` from
26+
`lib/log.sh`.
27+
28+
Quick Reference:
29+
30+
- Run `make check` to validate all standards
31+
- Run `make help` to see available targets
32+
- Run `make build` to build the Hugo site
33+
- Run `make serve` to start the local development server
34+
- All tools run inside the dev-toolchain container

.pre-commit-config.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# .pre-commit-config.yaml — DevRail pre-commit hooks for devrail.dev
2+
# Install: make install-hooks
3+
# Docs: https://pre-commit.com/
4+
5+
repos:
6+
# --- Conventional Commits ---
7+
- repo: https://github.com/devrail-dev/pre-commit-conventional-commits
8+
rev: v1.0.0
9+
hooks:
10+
- id: conventional-commits
11+
12+
# --- Common file checks ---
13+
- repo: https://github.com/pre-commit/pre-commit-hooks
14+
rev: v5.0.0
15+
hooks:
16+
- id: trailing-whitespace
17+
- id: end-of-file-fixer
18+
- id: check-yaml
19+
- id: check-added-large-files
20+
- id: check-merge-conflict
21+
22+
# --- Secret Detection ---
23+
- repo: https://github.com/gitleaks/gitleaks
24+
rev: v8.21.2
25+
hooks:
26+
- id: gitleaks

AGENTS.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Agent Instructions
2+
3+
This project follows [DevRail](https://devrail.dev) development standards.
4+
See DEVELOPMENT.md for the complete reference.
5+
6+
## Critical Rules
7+
8+
1. **Run `make check` before completing any story or task.** Never mark work done without passing checks. This is the single gate for all linting, formatting, security, and test validation.
9+
2. **Use conventional commits.** Every commit message follows the `type(scope): description` format. No exceptions.
10+
3. **Never install tools outside the container.** All linters, formatters, scanners, and test runners live inside `ghcr.io/devrail-dev/dev-toolchain:v1`. The Makefile delegates to Docker. Do not install tools on the host.
11+
4. **Respect `.editorconfig`.** Never override formatting rules (indent style, line endings, trailing whitespace) without explicit instruction.
12+
5. **Write idempotent scripts.** Every script must be safe to re-run. Check before acting: `command -v tool || install_tool`, `mkdir -p`, guard file writes with existence checks.
13+
6. **Use the shared logging library.** No raw `echo` for status messages. Use `log_info`, `log_warn`, `log_error`, `log_debug`, and `die` from `lib/log.sh`.
14+
15+
## Quick Reference
16+
17+
- Run `make check` to validate all standards
18+
- Run `make help` to see available targets
19+
- Run `make build` to build the Hugo site
20+
- Run `make serve` to start the local development server
21+
- All tools run inside the dev-toolchain container

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
### Added
11+
12+
- Initial Hugo site scaffold with Docsy theme
13+
- Landing page with project tagline and value propositions
14+
- Content directory structure for documentation sections
15+
- DevRail standards dogfooding (Makefile, .devrail.yml, agent files)

0 commit comments

Comments
 (0)