Skip to content

Commit

Permalink
feat: add language website (#271)
Browse files Browse the repository at this point in the history
  • Loading branch information
r4ai authored Dec 8, 2024
1 parent 31ce047 commit 15dc9f8
Show file tree
Hide file tree
Showing 64 changed files with 3,872 additions and 43 deletions.
87 changes: 87 additions & 0 deletions .github/workflows/language-website-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
name: Language Website CI

on:
push:
branches:
- main
pull_request:
workflow_dispatch:

jobs:
changes:
name: Changes
runs-on: ubuntu-24.04
outputs:
frontend: ${{ steps.changes.outputs.frontend }}
workflows: ${{ steps.changes.outputs.workflows }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
- name: Check frontend files changed
uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2
id: changes
with:
filters: |
frontend:
- 'language/**'
- .tool-versions
workflows:
- '.github/workflows/language-website-ci.yml'
format:
name: Format
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.frontend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./language/website
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
- name: Install tools
uses: jdx/mise-action@53d027c2e96fed8f955f5d95bff910a3e031cc58 # v2.1.6
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Check formatting
run: bun run format

lint:
name: Lint
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.frontend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./language/website
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
- name: Install tools
uses: jdx/mise-action@53d027c2e96fed8f955f5d95bff910a3e031cc58 # v2.1.6
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Check linting
run: bun run lint

build:
name: Build
runs-on: ubuntu-24.04
needs: changes
if: needs.changes.outputs.frontend == 'true' || needs.changes.outputs.workflows == 'true'
defaults:
run:
working-directory: ./language/website
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
- name: Install tools
uses: jdx/mise-action@53d027c2e96fed8f955f5d95bff910a3e031cc58 # v2.1.6
- name: Cache dependencies
uses: Swatinem/rust-cache@82a92a6e8fbeee089604da2575dc567ae9ddeaab # v2.7.5
- name: Install Rust toolchain
run: rustup toolchain install stable
- name: Install cargo-binstall
run: curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash
- name: Install cargo-component
run: cargo binstall cargo-component
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Check build
run: bun run build
Binary file modified bun.lockb
Binary file not shown.
15 changes: 15 additions & 0 deletions language/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# EditorConfig is awesome: https://EditorConfig.org

# top-most EditorConfig file
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.{rs,wit}]
indent_size = 4
13 changes: 13 additions & 0 deletions language/.vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"tailwindCSS.experimental.classRegex": [
["([\"'`][^\"'`]*.*?[\"'`])", "[\"'`]([^\"'`]*).*?[\"'`]"]
],
"rust-analyzer.check.overrideCommand": [
"cargo",
"component",
"check",
"--workspace",
"--all-targets",
"--message-format=json"
]
}
62 changes: 54 additions & 8 deletions language/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 5 additions & 1 deletion language/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,17 @@ members = [
"crates/ast",
"crates/code-generator",
"crates/parser",
"crates/tokenizer",
"crates/tokenizer", "crates/tools",
]

[workspace.dependencies]
anyhow = "1.0.94"
ast = { path = "crates/ast" }
code-generator = { path = "crates/code-generator" }
parser = { path = "crates/parser" }
serde = { version = "1.0.215", features = ["derive"] }
serde_json = "1.0.133"
thiserror = "2.0.4"
tokenizer = { path = "crates/tokenizer" }
indoc = "2.0.5"
wast = "221.0.2"
1 change: 1 addition & 0 deletions language/crates/ast/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,4 @@ edition = "2021"

[dependencies]
tokenizer = { workspace = true }
serde = { workspace = true }
Loading

0 comments on commit 15dc9f8

Please sign in to comment.