diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 60e4235..74f7eb3 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -40,7 +40,7 @@ It also applies when an individual is representing the DH Forge community in pub ## Reporting Violations -If you witness or experience unacceptable behavior, or have any other concerns, please report it by contacting **Ollie at ollie@dhfs.dev**. +If you witness or experience unacceptable behavior, or have any other concerns, please report it by contacting **Ollie at ollie@dh-forge.com**. All complaints will be reviewed and investigated promptly and fairly. We are committed to maintaining the confidentiality of the reporter where possible, though full anonymity cannot always be guaranteed, especially if direct action involving the reporter is necessary. diff --git a/CONTRIBUTING b/CONTRIBUTING index bb748f2..b36bccc 100644 --- a/CONTRIBUTING +++ b/CONTRIBUTING @@ -86,15 +86,15 @@ Contains applications built using the DHFS packages. #### ⚡️ Docs `/apps/docs` -The source code for the official [Documentation Website](https://docs.dhfs.dev), built with Starlight (Astro). +The source code for the official [Documentation Website](https://docs.dh-forge.com), built with Starlight (Astro). #### ⚡️ schema `/apps/schema` -Infrastructure for publishing and hosting the generated JSON Schema files, making them available at [schema.dhfs.dev](https://schema.dhfs.dev). +Infrastructure for publishing and hosting the generated JSON Schema files, making them available at [api.dh-forge.com](https://api.dh-forge.com). #### ⚡️ registry `/apps/registry` -A working demonstration of a hosted repository. Available at [repo.dhfs.dev](https://repo.dhfs.dev). +A working demonstration of a hosted repository. Available at [registry.dh-forge.com](https://registry.dh-forge.com). ### GitHub `/.github/` diff --git a/Caddyfile b/Caddyfile index 49acde5..4113178 100644 --- a/Caddyfile +++ b/Caddyfile @@ -1,6 +1,6 @@ { local_certs - email contact@dhfs.dev + email contact@dh-forge.com } diff --git a/README.PRD.md b/README.PRD.md index ba2cac5..6064673 100644 --- a/README.PRD.md +++ b/README.PRD.md @@ -65,7 +65,7 @@ DHFS uses a **Registry Model** with two main types: DHFS uses **Semantic Versioning (SemVer)**. - **Internal Versioning:** Every Registry file _must_ contain its full SemVer number (e.g., `1.2.9`) within its `meta`. -- **URL Versioning (`X.Y.x` Format):** Registry URLs _must_ use a `Major.Minor.x` format (e.g., `https://schema.dhfs.dev/core/1.2.x.json`). This URL _always_ serves the _latest patch version_ within that minor release, allowing automatic non-breaking updates. +- **URL Versioning (`X.Y.x` Format):** Registry URLs _must_ use a `Major.Minor.x` format (e.g., `https://api.dh-forge.com/1.2.x/registry-core.json`). This URL _always_ serves the _latest patch version_ within that minor release, allowing automatic non-breaking updates. - **Specification Versioning:** The DHFS specification itself follows SemVer. ## 3. API Specification @@ -94,7 +94,7 @@ A character sheet declares its registry via a single `registry` URL and stores t A Core Registry file contains its version and compatibility information. ```json -// Example: https://schema.dhfs.dev/core/1.2.x.json (serving 1.2.9) +// Example: https://api.dh-forge.com/1.2.x/registry-core.json (serving 1.2.9) { "meta": { "name": "Daggerheart Core Rules", @@ -120,7 +120,7 @@ This defines the Campaign _before_ the server merges it, introducing the `homebr "name": "Shadow Isles Campaign", "version": "1.0.3", "compatibleVersions": ["1.0.x"], - "extendsCore": "https://schema.dhfs.dev/core/1.2.x.json" + "extendsCore": "https://api.dh-forge.com/1.2.x/registry-core.json" }, "campaignInfo": { /* Optional Campaign-specific metadata */ }, "homebrewContent": { // ALL game data changes MUST be under this key diff --git a/README.md b/README.md index 63cc23b..d6a6444 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # DH Forge System (DHFS) [License](https://opensource.org/licenses/MIT) -[Docs](https://docs.dhfs.dev) -[JSON Schema](https://schema.dhfs.dev) +[Docs](https://docs.dh-forge.com) +[JSON Schema](https://api.dh-forge.com) **DHFS is an open, unofficial system for defining, structuring, and sharing player character and game data for the Daggerheart™ TTRPG.** @@ -42,11 +42,11 @@ Items within these registries (like `class/primary:warrior` or `inventory/item:h We're excited for you to explore and use DHFS\! -- **For Developers & Implementers:** The best place to start is our **[Official Documentation Site](https://docs.dhfs.dev)**. It contains: +- **For Developers & Implementers:** The best place to start is our **[Official Documentation Site](https://docs.dh-forge.com)**. It contains: - Detailed Guides & Tutorials. - The full Technical Specification. - Links to the published JSON Schemas. - - First-class [Typescript](https://docs.dhfs.dev/libraries/typescript) support (coming soon\!). + - First-class [Typescript](https://docs.dh-forge.com/libraries/typescript) support (coming soon\!). - **For Contributors:** We welcome community involvement\! Please read our [**CONTRIBUTING**](CONTRIBUTING) guide to learn how you can help. ## Project Structure (Monorepo) @@ -55,14 +55,14 @@ This repository uses a monorepo structure to manage different parts of the DHFS - `/`: Contains core project configuration and top-level documentation like this README, `LICENSE`, `GOVERNANCE.md`, and `CONTRIBUTING`. - `/packages/forge-models`: This is the heart\! It contains the **Zod schemas** which serve as the single source of truth for defining all DHFS data structures. Typescript types and JSON Schemas are generated from here. -- `/apps/docs`: Houses the source code for our [Documentation Website](https://docs.dhfs.dev). -- `/apps/schema`: Contains the necessary files and infrastructure to publish and host the generated **JSON Schema files**. This makes the machine-readable schemas available at stable, versioned URLs like [schema.dhfs.dev/v1](https://schema.dhfs.dev/v1). -- `/apps/registry`: A working demonstration of a hosted repository. Available at [repo.dhfs.dev](https://repo.dhfs.dev). +- `/apps/docs`: Houses the source code for our [Documentation Website](https://docs.dh-forge.com). +- `/apps/schema`: Contains the necessary files and infrastructure to publish and host the generated **JSON Schema files**. This makes the machine-readable schemas available at stable, versioned URLs like [api.dh-forge.com/v1.0.x/registry-core.json](https://api.dh-forge.com). +- `/apps/registry`: A working demonstration of a hosted repository. Available at [registry.dh-forge.com](https://registry.dh-forge.com). - _(Other internal packages may exist but are primarily for development support)._ ## Further Reading & Governance -- **[Specification](https://docs.dhfs.dev/specification):** For those who want the deep, formal technical details behind every decision and structure in DHFS. +- **[Specification](https://docs.dh-forge.com/specification):** For those who want the deep, formal technical details behind every decision and structure in DHFS. - **[Governance](GOVERNANCE.md):** Learn about how the DHFS project is managed and how decisions are made. - **[Code of Conduct](CODE_OF_CONDUCT.md):** Our code of conduct for the DHFS community and contributors. - **[Contributing](CONTRIBUTING):** Find out how you can contribute to the standard, documentation, or tooling. @@ -88,7 +88,7 @@ While the MIT license allows for forks and modifications of the DHFS specificati - **How it works (Future):** We plan to provide clear guidelines, potentially a test suite, and branding assets (like a logo) to help developers verify and showcase DHFS compatibility. - **Why it matters:** This allows the community to extend DHFS for specific needs (as permitted by the MIT license) while still providing a clear benchmark for core interoperability. Users can look for "DHFS Compatible" to ensure their chosen tools will work together seamlessly. -_Further details on the DHFS Compatibility standard will be developed and shared in our [Official Documentation Site](https://docs.dhfs.dev) as the system matures._ +_Further details on the DHFS Compatibility standard will be developed and shared in our [Official Documentation Site](https://docs.dh-forge.com) as the system matures._ ### Daggerheart™ License diff --git a/apps/api/astro.config.mjs b/apps/api/astro.config.mjs index b152a6d..7f33cea 100644 --- a/apps/api/astro.config.mjs +++ b/apps/api/astro.config.mjs @@ -7,14 +7,14 @@ import tailwindcss from "@tailwindcss/vite"; // https://astro.build/config export default defineConfig({ - site: "https://api.dhfs.dev", - integrations: [sitemap()], + site: "https://api.dh-forge.com", + integrations: [sitemap()], - server: { - port: 4321, + server: { + port: 4321, }, - vite: { - plugins: [tailwindcss()], - }, -}); \ No newline at end of file + vite: { + plugins: [tailwindcss()], + }, +}); diff --git a/apps/api/public/CNAME b/apps/api/public/CNAME new file mode 100644 index 0000000..9aa8394 --- /dev/null +++ b/apps/api/public/CNAME @@ -0,0 +1 @@ +api.dh-forge.com \ No newline at end of file diff --git a/apps/api/src/lib/resolve-schema.ts b/apps/api/src/lib/resolve-schema.ts index d4ddb8f..390345f 100644 --- a/apps/api/src/lib/resolve-schema.ts +++ b/apps/api/src/lib/resolve-schema.ts @@ -23,7 +23,7 @@ export const createSchemaRoute = ): APIRoute => async ({ params }: APIContext): Promise => { const isDev = import.meta.env.DEV; - const serverHost = isDev ? "api.localhost" : "api.dhfs.dev"; + const serverHost = isDev ? "api.localhost" : "api.dh-forge.com"; const version = params.version ?? "0.0.0"; diff --git a/apps/api/src/pages/index.astro b/apps/api/src/pages/index.astro index 4a7dc4f..e77d5d7 100644 --- a/apps/api/src/pages/index.astro +++ b/apps/api/src/pages/index.astro @@ -4,7 +4,7 @@ import { sortedVersions } from "../lib/versions"; const exampleUsage = JSON.stringify( { - $schema: "https://api.dhfs.dev/1.0.x/schema.json", + $schema: "https://api.dh-forge.com/1.0.x/schema.json", name: "John Doe", level: 1, class: "Sorcerer",