Skip to content

Repository files navigation

D&D Portal Wiki logo

D&D Portal Wiki

Campaign rules, reference pages, class content, spells, and project information for D&D Portal.

Visit the Wiki | Report a Problem | View Changelog

Svelte SvelteKit TypeScript SCSS GitHub Pages

About

D&D Portal Wiki is an unofficial fan-created reference website for tabletop campaign material. It contains rules references, class and subclass pages, spell pages, species, monsters, locations, project notices, and supporting resource pages.

The site is built as a static SvelteKit application and is published to GitHub Pages at the root custom domain https://dnd-portal.com/.

Project Structure

src/
  lib/
    svelte/components/      Reusable Svelte components
    scss/                   Global, layout, and component SCSS
    typescript/data/        Central content, route, link, image, and metadata data
    typescript/pages/       Page resolution, SEO, and page-building helpers
  routes/                   SvelteKit routes and static prerender entries
static/                     Public images, icons, robots.txt, and other static assets
scripts/                    Local validation and pre-live audit scripts
docs/                       Repository documentation
.github/                    GitHub Actions, issue templates, and PR template

More detail is available in docs/ARCHITECTURE.md.

Requirements

  • Node.js compatible with the project runtime configuration
  • pnpm 11.10.0

The package manager is declared in package.json:

"packageManager": "pnpm@11.10.0"

The repository also contains Volta and pnpm runtime settings. Do not replace pnpm commands with npm commands unless the project configuration is intentionally changed first.

Local Development

pnpm install
pnpm dev

The local dev server normally runs at:

http://localhost:5173/

Validation

Run these before opening or merging changes:

pnpm check
pnpm build
pnpm audit:prelive:crawl

Use pnpm audit:prelive for the data and route checks without crawling the built output.

Deployment

The live website is deployed through GitHub Pages from the build/ directory generated by pnpm build.

This project intentionally uses:

  • @sveltejs/adapter-static
  • prerender = true
  • trailingSlash = 'always'
  • no repository base path, because the site is served from https://dnd-portal.com/
  • actions/upload-pages-artifact and actions/deploy-pages in the GitHub Actions workflow

See docs/DEPLOYMENT.md before touching deployment settings.

Contributing

Issues and pull requests are welcome when they improve correctness, maintainability, accessibility, performance, or clarity.

Read CONTRIBUTING.md before submitting larger changes.

Legal and Usage

D&D Portal is an unofficial fan-created project.

The repository currently does not grant a general open-source license for all source code, written content, data, artwork, icons, or other assets. Unless explicitly stated otherwise, no permission to redistribute or reuse repository material is granted.

Third-party names, trademarks, rules material, artwork, icons, and other assets remain subject to the rights and licenses of their respective owners.

See the D&D Portal Legal Notice and Contribution Terms for additional information.

About

Temporary reproduction and diagnostic environment for Svelte hydration issue #18802 in D&D Portal.

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages