Source for the Dexalot Knowledge Hub published at docs.dexalot.com.
The site is a VuePress 2 application (Vite bundler, vuepress-theme-hope) containing articles, tutorials, smart-contract references, trading API docs, incentive program details, and legal documents. Content is authored in Markdown under docs/ and localized to English, Spanish, Turkish, Vietnamese, and Chinese.
- Node.js 22.11.0 (pinned via
engines; usenvm useor an equivalent) - pnpm 9.13.2+ (declared in
packageManager)
pnpm installRun a hot-reloading dev server on http://localhost:8080:
pnpm docs:devIf the cache gets into a bad state:
pnpm docs:clean-dev # dev server with a cold cache
pnpm clean # remove .cache, .temp, and distpnpm docs:build:local:dev # NODE_ENV=development (no SEO / sitemap)
pnpm docs:build:local:prod # NODE_ENV=production
pnpm docs:build:amplify # build target used by AWS Amplify CIOutput is written to docs/.vuepress/dist. Serve the built site locally:
pnpm docs:servedocs/
README.md Home page (VuePress frontmatter landing layout)
.vuepress/
config.ts Site-level config + locales
theme.ts vuepress-theme-hope configuration
options.ts Sitemap + NODE_ENV helpers
navbar/ Per-locale navbar (en, es, tr, vi, zh + common)
sidebar/ Per-locale sidebar definitions
public/ Static assets (images, logos, favicon)
styles/ SCSS overrides
en/ es/ tr/ vi/ zh/ Localized Markdown trees
articles/ Conceptual / background content
tutorials/ Step-by-step guides
contracts/ Smart-contract reference (en only)
apiv2/ Trading API reference (en only)
legal/ License, Privacy, T&C (en only)
Only English has the full set of sections. When adding a new page, mirror the file in every locale you intend to ship; VuePress walks every Markdown file that matches pagePatterns in config.ts.
Configuration files:
.prettierrc— prettier rules (printWidth: 120, CRLF line endings).prettierignore.markdownlint.json— markdownlint rules.vscode/cspell.json+.vscode/dictionaries/project-terms-en.txt— spell-check dictionary
DavidAnson.vscode-markdownlintesbenp.prettier-vscodestreetsidesoftware.code-spell-checker
Project-wide VS Code settings live in .vscode/settings.json (trim trailing whitespace, no format-on-save for TS/JS, format-on-save for Solidity).
pnpm pretty-md-check # prettier --check **/*.md
pnpm pretty-md-fix # prettier --write **/*.md
pnpm pretty-check # check ts, js, md
pnpm pretty-fix # write ts, js, md
pnpm lint-ts-check # eslint .ts
pnpm lint-ts-fix
pnpm lint-js-check # eslint .js
pnpm lint-js-fixCheck/fix a single file:
./node_modules/.bin/prettier --check docs/en/articles/abs/README.md
./node_modules/.bin/prettier --write docs/en/articles/abs/README.mdAlways run --check and review diffs before --write.
cspell is not installed as a dependency — run it via the VS Code Code Spell Checker extension, or invoke it with npx:
npx cspell lint --show-suggestions --config .vscode/cspell.json "docs/**/*.md"Add project-specific terms to .vscode/dictionaries/project-terms-en.txt.
git config --global core.autocrlf true.gitignore excludes node_modules, .env* (except .env.example), VuePress build artifacts (.cache, .temp, dist), and a local attic/ scratch directory for drafts and original-resolution images.
BUSL-1.1 — see LICENSE.txt.