The official website and documentation platform for Fidan — an AI-native, native-first programming language with expressive syntax, native execution backends and compiler-grounded AI tooling.
Fidan brings human-readable code, native builds and an integrated developer ecosystem together. AI tools can use structured diagnostics, inferred types, symbols and program relationships alongside source text. The homepage introduces that direction; the documentation verifies the actual APIs, release boundaries and backend scope.
This repository powers:
https://fidan.devhttps://docs.fidan.dev
It contains the marketing site, release pages, install endpoints, and the docs shell for the Fidan ecosystem.
- SvelteKit 2 with Svelte 5
- Tailwind 4
- Cloudflare Pages
- Playwright smoke tests
Install dependencies:
npm ciStart the dev server:
npm run devFormat the repo:
npm run format:allCheck formatting without writing changes:
npm run format:all:checkGit hooks are installed automatically via npm ci or npm install and run the formatter before each commit.
Typecheck:
npm run checkProduction build:
npm run buildBrowser smoke tests:
npm run e2eThis site is configured for Cloudflare Pages.
Relevant files:
wrangler.toml.github/workflows/verification_tests.yaml.github/workflows/_web-checks.yaml.github/workflows/deploy-pages.yaml
The deploy workflow expects:
CLOUDFLARE_API_TOKENCLOUDFLARE_ACCOUNT_ID
This repo is for the website and docs platform only.
Compiler, runtime, toolchain, formatter, LSP, and package-manager changes belong in the main Fidan repository:
https://github.com/fidan-lang/fidan
- Fidan language:
https://github.com/fidan-lang/fidan - Dal package registry:
https://dal.fidan.dev
The software is available under the unmodified Apache License 2.0, with attribution in NOTICE. Commercial use, modification, redistribution, sale and hosting are permitted under that license. Branding is separate: see the Fidan trademark policy. Truthful descriptive references and independent forks are welcome; do not falsely claim official affiliation or endorsement.
The public stable compiler is Fidan 1.1.0. Logical xor and corrected bitwise
precedence require the next-release source candidate, even while that source
still reports 1.1.0. Candidate-only pages are explicitly identified; CI checks
behavior as well as version and never substitutes latest for the selected
source. ci/compiler-candidate.json pins compiler, installer and args commits.
Those commits must be available remotely before dependent PR CI can check them out.
# Use actual reviewed local checkouts, not PATH fallback.
# Set FIDAN_BIN and FIDAN_ARGS_ROOT first.
npm run docs:check:fidan
npm run docs:check:links
npm run docs:testEvery Fidan fence declares its mode: compile is a real frontend check, run
executes the program, test executes inline test bodies, error requires the
specified frontend diagnostic and runtime-error requires the specified failing
runtime result. Contextual fragments name explicit fixtures in
ci/doc-examples.json; args fixtures are read from the actual selected package
source. expect=stdout/stderr compares the adjacent text block byte-for-byte
apart from platform line endings. Complete examples must not be downgraded to
format-only checks to hide an error. There are no skipped Fidan fences in the
reconciled catalog.
Compiler API tables are generated with cargo run --locked -p fidan-stdlib --example documentation_catalog in the matching compiler checkout, then checked
using node scripts/sync-api-reference.mjs <catalog.json>. The CLI reference is
checked using node scripts/sync-cli-reference.mjs <actual-fidan-binary>. Both
accept explicit --write for reviewed synchronization; CI only checks drift.
Local link checks use the actual Markdown renderer and reject missing docs routes,
anchors and static assets. They do not certify the availability of external sites.
Configuration and command recipes also have an executable syntax gate:
python scripts/check-doc-configs.py (Python 3.11+, PyYAML 6.0.3 and Bash;
set BASH_BIN for Git Bash on Windows). It parses TOML/YAML and runs Bash -n;
it never executes installer/publish commands or claims remote-service success.