Skip to content

Conversation

@nyeong
Copy link
Contributor

@nyeong nyeong commented Sep 29, 2025

Summary

Implement Fastify intergration.

Related Issue

Reference the related issue(s) by number, e.g.:

Changes

List the specific modifications made in this PR.
Focus on what was changed without going into detail about impact.

  • Add packages/fastify
  • Add examples/fastify

Benefits

Users now can integrate Fedify into Fastify like:

const fastify = Fastify({ logger: true });
const federation = createFederation<void>({
  kv: new MemoryKvStore(),
});
await fastify.register(fedifyPlugin, {
  federation,
  contextDataFactory: () => undefined,
});

Checklist

  • Did you add a changelog entry to the CHANGES.md?
  • Did you write some relevant docs about this change (if it's a new feature)?
  • Did you write a regression test to reproduce the bug (if it's a bug fix)?
  • Did you write some tests for this change (if it's a new feature)?
  • Did you run deno task test-all on your machine?

Additional Notes

Remain problems

  • Tests for packages/fastify fail on Bun due to timeout errors

@nyeong nyeong force-pushed the issue/272 branch 2 times, most recently from 9ed35e1 to 65a7cf3 Compare September 29, 2025 07:06
@nyeong nyeong mentioned this pull request Sep 29, 2025
@nyeong
Copy link
Contributor Author

nyeong commented Sep 29, 2025

Unless it's crucial, I'm removing examples/fedify from deno.json to skip linting and testing for the example.

Currently, the inclusion of examples in the workspace is inconsistent; some are included, and some are not.

@nyeong nyeong marked this pull request as ready for review September 29, 2025 07:35
nyeong and others added 7 commits October 14, 2025 14:14
@fedify/fastify package provides a simple integration of fedify and fastify

- implement integration using fp, fastify-plugin system
- simple tests for integration
- simple example (tested on Node.js and Bun)

problems and todos

- tests for bun has been failed with timeout error
Add missing version constraints for Fastify
- Add CommonJS format output to tsdown config
- Update package.json exports to include require conditions
- Simplify test scripts by removing Deno test
- Fix test import to use package name instead of relative path
Document the new @fedify/fastify package in the changelog for version 1.9.0.
Includes information about the fedifyPlugin() function and ESM/CommonJS support.

Co-Authored-By: Claude <[email protected]>
- Add Fastify section to integration manual
- Update package README with badges and consistent formatting
- Add Fastify to VitePress references menu
- Add Fastify dependencies to docs package
@issues-auto-labeler issues-auto-labeler bot added component/integration Web framework integration examples Example code related good first issue Good for newcomers labels Oct 14, 2025
@dahlia dahlia merged commit fc3e475 into fedify-dev:main Oct 14, 2025
8 of 9 checks passed
@nyeong nyeong deleted the issue/272 branch October 14, 2025 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component/integration Web framework integration examples Example code related good first issue Good for newcomers

Projects

No open projects

Development

Successfully merging this pull request may close these issues.

Fastify integration

2 participants