Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/rules/recipes.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ If you're spinning up a new `@amqp-contract/*` package:
- **Multi-entry, ESM-only** (like `testing`): pass each entry as a positional and use `--format esm`.
If `ResultAsync` (or any other dep) appears in your public types, mark that dep `external` to prevent its types being inlined.
4. Add the package to the `fixed` group in [`.changeset/config.json`](../../.changeset/config.json) so it versions with the rest.
5. Configure the npmjs Trusted Publisher for the new package (npm UI → package settings → trusted publishing → point at `.github/workflows/release.yml` in `btravers/amqp-contract`). Until this is done, the publish will fail with `ENEEDAUTH`.
5. Configure the npmjs Trusted Publisher for the new package (npm UI → package settings → trusted publishing → point at `.github/workflows/release.yml` in `btravstack/amqp-contract`). Until this is done, the publish will fail with `ENEEDAUTH`.
6. `pnpm install` to update the lockfile and turbo's package graph.
7. Initial release — add a changeset documenting the package, merge through the normal flow.

Expand Down
5 changes: 5 additions & 0 deletions .changeset/update-org-urls.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@amqp-contract/contract": patch
---

Update repository, homepage, and bug-tracker URLs after the project moved from the `btravers` GitHub profile to the `btravstack` organization. Documentation now lives at https://btravstack.github.io/amqp-contract/.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@

**Type-safe contracts for [AMQP](https://www.amqp.org/)/[RabbitMQ](https://www.rabbitmq.com/) messaging with [TypeScript](https://www.typescriptlang.org/)**

[![CI](https://github.com/btravers/amqp-contract/actions/workflows/ci.yml/badge.svg)](https://github.com/btravers/amqp-contract/actions/workflows/ci.yml)
[![CI](https://github.com/btravstack/amqp-contract/actions/workflows/ci.yml/badge.svg)](https://github.com/btravstack/amqp-contract/actions/workflows/ci.yml)
[![npm version](https://img.shields.io/npm/v/@amqp-contract/contract.svg?logo=npm)](https://www.npmjs.com/package/@amqp-contract/contract)
[![npm downloads](https://img.shields.io/npm/dm/@amqp-contract/contract.svg)](https://www.npmjs.com/package/@amqp-contract/contract)
[![TypeScript](https://img.shields.io/badge/TypeScript-6.0-blue?logo=typescript)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

[**Documentation**](https://btravers.github.io/amqp-contract) · [**Get Started**](https://btravers.github.io/amqp-contract/guide/getting-started) · [**Examples**](https://btravers.github.io/amqp-contract/examples/)
[**Documentation**](https://btravstack.github.io/amqp-contract) · [**Get Started**](https://btravstack.github.io/amqp-contract/guide/getting-started) · [**Examples**](https://btravstack.github.io/amqp-contract/examples/)

</div>

Expand Down Expand Up @@ -108,11 +108,11 @@ pnpm add @amqp-contract/contract @amqp-contract/client @amqp-contract/worker nev

## Documentation

📖 **[Full Documentation →](https://btravers.github.io/amqp-contract)**
📖 **[Full Documentation →](https://btravstack.github.io/amqp-contract)**

- [Get Started](https://btravers.github.io/amqp-contract/guide/getting-started) — Get running in 5 minutes
- [Core Concepts](https://btravers.github.io/amqp-contract/guide/core-concepts) — Understand the fundamentals
- [Examples](https://btravers.github.io/amqp-contract/examples/) — Real-world usage patterns
- [Get Started](https://btravstack.github.io/amqp-contract/guide/getting-started) — Get running in 5 minutes
- [Core Concepts](https://btravstack.github.io/amqp-contract/guide/core-concepts) — Understand the fundamentals
- [Examples](https://btravstack.github.io/amqp-contract/examples/) — Real-world usage patterns

## Packages

Expand Down
22 changes: 11 additions & 11 deletions docs/.vitepress/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export default withMermaid(
],

sitemap: {
hostname: "https://btravers.github.io/amqp-contract/",
hostname: "https://btravstack.github.io/amqp-contract/",
},

// Inject canonical URLs and dynamic meta tags for each page to prevent duplicate content issues
Expand All @@ -36,7 +36,7 @@ export default withMermaid(
// VitePress provides relativePath without leading slash (e.g., "guide/getting-started.md")
// Normalize the path by removing any leading slashes just in case
const normalizedPath = pageData.relativePath.replace(/^\/+/, "");
const canonicalUrl = `https://btravers.github.io/amqp-contract/${normalizedPath}`
const canonicalUrl = `https://btravstack.github.io/amqp-contract/${normalizedPath}`
.replace(/index\.md$/, "")
.replace(/\.md$/, ".html");

Expand Down Expand Up @@ -169,7 +169,7 @@ export default withMermaid(
},

socialLinks: [
{ icon: "github", link: "https://github.com/btravers/amqp-contract" },
{ icon: "github", link: "https://github.com/btravstack/amqp-contract" },
{
icon: "npm",
link: "https://www.npmjs.com/package/@amqp-contract/contract",
Expand All @@ -186,7 +186,7 @@ export default withMermaid(
},

editLink: {
pattern: "https://github.com/btravers/amqp-contract/edit/main/docs/:path",
pattern: "https://github.com/btravstack/amqp-contract/edit/main/docs/:path",
text: "Edit this page on GitHub",
},
},
Expand Down Expand Up @@ -215,14 +215,14 @@ export default withMermaid(
["meta", { property: "og:locale", content: "en_US" }],
[
"meta",
{ property: "og:image", content: "https://btravers.github.io/amqp-contract/logo.svg" },
{ property: "og:image", content: "https://btravstack.github.io/amqp-contract/logo.svg" },
],
["meta", { property: "og:image:alt", content: "amqp-contract logo" }],
// Twitter Card meta tags
["meta", { name: "twitter:card", content: "summary" }],
[
"meta",
{ name: "twitter:image", content: "https://btravers.github.io/amqp-contract/logo.svg" },
{ name: "twitter:image", content: "https://btravstack.github.io/amqp-contract/logo.svg" },
],
["meta", { name: "twitter:image:alt", content: "amqp-contract logo" }],
// Additional SEO meta tags
Expand Down Expand Up @@ -251,7 +251,7 @@ export default withMermaid(
price: "0",
priceCurrency: "USD",
},
url: "https://btravers.github.io/amqp-contract/",
url: "https://btravstack.github.io/amqp-contract/",
author: {
"@type": "Person",
name: "Benoit TRAVERS",
Expand All @@ -272,7 +272,7 @@ export default withMermaid(
"@context": "https://schema.org",
"@type": "WebSite",
name: "amqp-contract",
url: "https://btravers.github.io/amqp-contract/",
url: "https://btravstack.github.io/amqp-contract/",
}),
],
// Organization JSON-LD for logo display in Google search
Expand All @@ -283,12 +283,12 @@ export default withMermaid(
"@context": "https://schema.org",
"@type": "Organization",
name: "amqp-contract",
url: "https://btravers.github.io/amqp-contract/",
url: "https://btravstack.github.io/amqp-contract/",
logo: {
"@type": "ImageObject",
url: "https://btravers.github.io/amqp-contract/logo.svg",
url: "https://btravstack.github.io/amqp-contract/logo.svg",
},
sameAs: ["https://github.com/btravers/amqp-contract"],
sameAs: ["https://github.com/btravstack/amqp-contract"],
}),
],
],
Expand Down
2 changes: 1 addition & 1 deletion docs/examples/asyncapi-generation.md
Original file line number Diff line number Diff line change
Expand Up @@ -566,7 +566,7 @@ flowchart TB

The complete source code is available in the repository:

- [AsyncAPI Generation Example](https://github.com/btravers/amqp-contract/tree/main/examples/asyncapi-generation)
- [AsyncAPI Generation Example](https://github.com/btravstack/amqp-contract/tree/main/examples/asyncapi-generation)

## Next Steps

Expand Down
6 changes: 3 additions & 3 deletions docs/examples/basic-order-processing.md
Original file line number Diff line number Diff line change
Expand Up @@ -440,9 +440,9 @@ sequenceDiagram

The complete source code is available in the repository:

- [Contract](https://github.com/btravers/amqp-contract/tree/main/examples/basic-order-processing-contract)
- [Client](https://github.com/btravers/amqp-contract/tree/main/examples/basic-order-processing-client)
- [Worker](https://github.com/btravers/amqp-contract/tree/main/examples/basic-order-processing-worker)
- [Contract](https://github.com/btravstack/amqp-contract/tree/main/examples/basic-order-processing-contract)
- [Client](https://github.com/btravstack/amqp-contract/tree/main/examples/basic-order-processing-client)
- [Worker](https://github.com/btravstack/amqp-contract/tree/main/examples/basic-order-processing-worker)

## Next Steps

Expand Down
2 changes: 1 addition & 1 deletion docs/guide/comparison.md
Original file line number Diff line number Diff line change
Expand Up @@ -318,5 +318,5 @@ Ready to get started?
- **[Examples →](/examples/)** - See real-world usage

::: tip Questions?
Check out the [Troubleshooting Guide](/guide/troubleshooting) or [open an issue](https://github.com/btravers/amqp-contract/issues) on GitHub!
Check out the [Troubleshooting Guide](/guide/troubleshooting) or [open an issue](https://github.com/btravstack/amqp-contract/issues) on GitHub!
:::
2 changes: 1 addition & 1 deletion docs/guide/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -425,6 +425,6 @@ Now that you have amqp-contract working, explore more:
::: tip Need Help?

- Check the [Troubleshooting Guide](/guide/troubleshooting)
- Browse [GitHub Issues](https://github.com/btravers/amqp-contract/issues)
- Browse [GitHub Issues](https://github.com/btravstack/amqp-contract/issues)
- Read more [Examples](/examples/)
:::
2 changes: 1 addition & 1 deletion docs/guide/testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -453,4 +453,4 @@ For complete API documentation, see [@amqp-contract/testing API Reference](/api/

## Examples

Check out the [examples directory](https://github.com/btravers/amqp-contract/tree/main/examples) in the repository for more testing examples.
Check out the [examples directory](https://github.com/btravstack/amqp-contract/tree/main/examples) in the repository for more testing examples.
4 changes: 2 additions & 2 deletions docs/guide/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -687,8 +687,8 @@ Error: PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'orders'
If your problem isn't listed here:

1. **Check GitHub Issues:**
- [Search existing issues](https://github.com/btravers/amqp-contract/issues)
- [Open a new issue](https://github.com/btravers/amqp-contract/issues/new)
- [Search existing issues](https://github.com/btravstack/amqp-contract/issues)
- [Open a new issue](https://github.com/btravstack/amqp-contract/issues/new)

2. **Review Documentation:**
- [Core Concepts](/guide/core-concepts)
Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ hero:
link: /guide/why-amqp-contract
- theme: alt
text: GitHub
link: https://github.com/btravers/amqp-contract
link: https://github.com/btravstack/amqp-contract

features:
- icon: 🔒
Expand Down
4 changes: 2 additions & 2 deletions docs/public/robots.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# robots.txt for https://btravers.github.io/amqp-contract/
# robots.txt for https://btravstack.github.io/amqp-contract/
# Allow all search engines to crawl the site

User-agent: *
Allow: /

# Sitemap location
Sitemap: https://btravers.github.io/amqp-contract/sitemap.xml
Sitemap: https://btravstack.github.io/amqp-contract/sitemap.xml
4 changes: 2 additions & 2 deletions examples/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Example implementations demonstrating amqp-contract features.

📖 **[Full documentation and examples →](https://btravers.github.io/amqp-contract/examples/)**
📖 **[Full documentation and examples →](https://btravstack.github.io/amqp-contract/examples/)**

## Quick Start

Expand Down Expand Up @@ -43,4 +43,4 @@ pnpm --filter @amqp-contract-examples/basic-order-processing-client dev
| [Basic Order Processing - Client](./basic-order-processing-client) | Plain TypeScript client for publishing orders |
| [Basic Order Processing - Worker](./basic-order-processing-worker) | Plain TypeScript worker for consuming orders |

For detailed documentation, examples, and tutorials, visit the **[amqp-contract website](https://btravers.github.io/amqp-contract/)**.
For detailed documentation, examples, and tutorials, visit the **[amqp-contract website](https://btravstack.github.io/amqp-contract/)**.
4 changes: 2 additions & 2 deletions examples/basic-order-processing-client/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Publisher application demonstrating type-safe AMQP message publishing.

📖 **[Full documentation →](https://btravers.github.io/amqp-contract/examples/basic-order-processing)**
📖 **[Full documentation →](https://btravstack.github.io/amqp-contract/examples/basic-order-processing)**

## Quick Start

Expand All @@ -21,4 +21,4 @@ pnpm --filter @amqp-contract-examples/basic-order-processing-client dev
| `AMQP_URL` | `amqp://localhost:5672` | RabbitMQ connection URL |
| `LOG_LEVEL` | `info` | Log level (info, debug, etc.) |

For detailed documentation, visit the **[website](https://btravers.github.io/amqp-contract/examples/basic-order-processing)**.
For detailed documentation, visit the **[website](https://btravstack.github.io/amqp-contract/examples/basic-order-processing)**.
4 changes: 2 additions & 2 deletions examples/basic-order-processing-contract/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Shared contract definition demonstrating **Publisher-First** and **Consumer-First** patterns with AMQP.

📖 **[Full documentation →](https://btravers.github.io/amqp-contract/examples/basic-order-processing)**
📖 **[Full documentation →](https://btravstack.github.io/amqp-contract/examples/basic-order-processing)**

## Overview

Expand Down Expand Up @@ -54,4 +54,4 @@ await client.publish("orderCreated", {
pnpm --filter @amqp-contract-examples/basic-order-processing-contract test
```

For detailed documentation about patterns and routing keys, visit the **[website](https://btravers.github.io/amqp-contract/examples/basic-order-processing)**.
For detailed documentation about patterns and routing keys, visit the **[website](https://btravstack.github.io/amqp-contract/examples/basic-order-processing)**.
4 changes: 2 additions & 2 deletions examples/basic-order-processing-worker/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Consumer application demonstrating type-safe AMQP message consumption with multiple handlers.

📖 **[Full documentation →](https://btravers.github.io/amqp-contract/examples/basic-order-processing)**
📖 **[Full documentation →](https://btravstack.github.io/amqp-contract/examples/basic-order-processing)**

## Quick Start

Expand Down Expand Up @@ -85,4 +85,4 @@ The main `src/index.ts` file uses inline handlers for simplicity, while `src/han
| `AMQP_URL` | `amqp://localhost:5672` | RabbitMQ connection URL |
| `LOG_LEVEL` | `info` | Log level (info, debug, etc.) |

For detailed documentation, visit the **[website](https://btravers.github.io/amqp-contract/examples/basic-order-processing)**.
For detailed documentation, visit the **[website](https://btravstack.github.io/amqp-contract/examples/basic-order-processing)**.
10 changes: 5 additions & 5 deletions packages/asyncapi/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

**AsyncAPI 3.0.0 specification generator for amqp-contract.**

[![CI](https://github.com/btravers/amqp-contract/actions/workflows/ci.yml/badge.svg)](https://github.com/btravers/amqp-contract/actions/workflows/ci.yml)
[![CI](https://github.com/btravstack/amqp-contract/actions/workflows/ci.yml/badge.svg)](https://github.com/btravstack/amqp-contract/actions/workflows/ci.yml)
[![npm version](https://img.shields.io/npm/v/@amqp-contract/asyncapi.svg?logo=npm)](https://www.npmjs.com/package/@amqp-contract/asyncapi)
[![npm downloads](https://img.shields.io/npm/dm/@amqp-contract/asyncapi.svg)](https://www.npmjs.com/package/@amqp-contract/asyncapi)
[![TypeScript](https://img.shields.io/badge/TypeScript-6.0-blue?logo=typescript)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

📖 **[Full documentation →](https://btravers.github.io/amqp-contract/api/asyncapi)**
📖 **[Full documentation →](https://btravstack.github.io/amqp-contract/api/asyncapi)**

## Installation

Expand Down Expand Up @@ -65,15 +65,15 @@ writeFileSync("asyncapi.json", JSON.stringify(asyncAPISpec, null, 2));
- ✅ **Queue-exchange binding documentation** in channel descriptions
- ✅ **Type-safe** with full TypeScript support

For examples and detailed guides, see the [documentation](https://btravers.github.io/amqp-contract/api/asyncapi).
For examples and detailed guides, see the [documentation](https://btravstack.github.io/amqp-contract/api/asyncapi).

## API

For complete API documentation, see the [AsyncAPI API Reference](https://btravers.github.io/amqp-contract/api/asyncapi).
For complete API documentation, see the [AsyncAPI API Reference](https://btravstack.github.io/amqp-contract/api/asyncapi).

## Documentation

📖 **[Read the full documentation →](https://btravers.github.io/amqp-contract)**
📖 **[Read the full documentation →](https://btravstack.github.io/amqp-contract)**

## License

Expand Down
6 changes: 3 additions & 3 deletions packages/asyncapi/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@
"type-safe",
"typescript"
],
"homepage": "https://github.com/btravers/amqp-contract#readme",
"homepage": "https://github.com/btravstack/amqp-contract#readme",
"bugs": {
"url": "https://github.com/btravers/amqp-contract/issues"
"url": "https://github.com/btravstack/amqp-contract/issues"
},
"license": "MIT",
"author": "Benoit TRAVERS <benoit.travers.fr@gmail.com>",
"repository": {
"type": "git",
"url": "https://github.com/btravers/amqp-contract.git",
"url": "https://github.com/btravstack/amqp-contract.git",
"directory": "packages/asyncapi"
},
"files": [
Expand Down
8 changes: 4 additions & 4 deletions packages/client/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

**Type-safe AMQP client for publishing messages using amqp-contract with explicit error handling via `Result` types.**

[![CI](https://github.com/btravers/amqp-contract/actions/workflows/ci.yml/badge.svg)](https://github.com/btravers/amqp-contract/actions/workflows/ci.yml)
[![CI](https://github.com/btravstack/amqp-contract/actions/workflows/ci.yml/badge.svg)](https://github.com/btravstack/amqp-contract/actions/workflows/ci.yml)
[![npm version](https://img.shields.io/npm/v/@amqp-contract/client.svg?logo=npm)](https://www.npmjs.com/package/@amqp-contract/client)
[![npm downloads](https://img.shields.io/npm/dm/@amqp-contract/client.svg)](https://www.npmjs.com/package/@amqp-contract/client)
[![TypeScript](https://img.shields.io/badge/TypeScript-6.0-blue?logo=typescript)](https://www.typescriptlang.org/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

📖 **[Full documentation →](https://btravers.github.io/amqp-contract/api/client)**
📖 **[Full documentation →](https://btravstack.github.io/amqp-contract/api/client)**

## Installation

Expand Down Expand Up @@ -61,11 +61,11 @@ publish(): Result<boolean, TechnicalError | MessageValidationError>

## API

For complete API documentation, see the [Client API Reference](https://btravers.github.io/amqp-contract/api/client).
For complete API documentation, see the [Client API Reference](https://btravstack.github.io/amqp-contract/api/client).

## Documentation

📖 **[Read the full documentation →](https://btravers.github.io/amqp-contract)**
📖 **[Read the full documentation →](https://btravstack.github.io/amqp-contract)**

## License

Expand Down
6 changes: 3 additions & 3 deletions packages/client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@
"typescript",
"validation"
],
"homepage": "https://github.com/btravers/amqp-contract#readme",
"homepage": "https://github.com/btravstack/amqp-contract#readme",
"bugs": {
"url": "https://github.com/btravers/amqp-contract/issues"
"url": "https://github.com/btravstack/amqp-contract/issues"
},
"license": "MIT",
"author": "Benoit TRAVERS <benoit.travers.fr@gmail.com>",
"repository": {
"type": "git",
"url": "https://github.com/btravers/amqp-contract.git",
"url": "https://github.com/btravstack/amqp-contract.git",
"directory": "packages/client"
},
"files": [
Expand Down
2 changes: 1 addition & 1 deletion packages/client/typedoc.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"out": "docs",
"externalSymbolLinkMappings": {
"@amqp-contract/core": {
"AmqpClient": "https://btravers.github.io/amqp-contract/api/core#amqpclient"
"AmqpClient": "https://btravstack.github.io/amqp-contract/api/core#amqpclient"
}
}
}
Loading
Loading