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
3 changes: 2 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,8 @@ The monorepo uses different build processes for different packages:
JSR and npm

3. **Database adapters and integrations**: Use tsdown for TypeScript compilation:
- *packages/amqp/*, *packages/elysia*, *packages/express/*, *packages/h3/*,
- *packages/amqp/*, *packages/astro/*, *packages/elysia*,
*packages/express/*, *packages/h3/*,
*packages/sqlite/*, *packages/postgres/*, *packages/redis/*,
*packages/nestjs/*
- Built to support Node.js and Bun environments
Expand Down
14 changes: 14 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,28 @@ To be released.
[#473]: https://github.com/fedify-dev/fedify/issues/473
[#589]: https://github.com/fedify-dev/fedify/pull/589

### @fedify/astro

- Added `@fedify/astro` package for integrating Fedify with [Astro].
It provides `fedifyIntegration()` for Vite SSR configuration and
`fedifyMiddleware()` for request handling. [[#50] by Chanhaeng Lee]

[Astro]: https://astro.build/
[#50]: https://github.com/fedify-dev/fedify/issues/50

### @fedify/init

- Changed `fedify init` to add `"temporal"` to `deno.json`'s `"unstable"`
field only when the installed Deno version is earlier than 2.7.0.
On Deno 2.7.0 or later, it is no longer added.

- `fedify init` now omits the `"unstable"` field entirely when no unstable
feature is required for the generated Deno project.

- Supported [Astro] as a web framework option in `fedify init`, with
runtime-specific templates for Deno, Bun, and Node.js environments.
[[#50] by ChanHaeng Lee]

### @fedify/vocab

- Fixed `Endpoints.toJsonLd()` to no longer emit invalid
Expand Down
20 changes: 13 additions & 7 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,7 @@ The repository is organized as a monorepo with the following packages:
- *packages/create/*: Standalone CLI (@fedify/create) for
creating new Fedify projects. Wraps @fedify/init.
- *packages/amqp/*: AMQP/RabbitMQ driver (@fedify/amqp) for Fedify.
- *packages/astro/*: Astro integration (@fedify/astro) for Fedify.
- *packages/cfworkers/*: Cloudflare Workers integration (@fedify/cfworkers) for
Fedify.
- *packages/debugger/*: Embedded ActivityPub debug dashboard (@fedify/debugger)
Expand Down Expand Up @@ -508,32 +509,31 @@ with Node.js and Bun. If you followed the setup instructions above using
#### Testing the `init` command

If you want to test some integration packages like `@fedify/hono` or
`@fedify/denokv`, you can test them with `test-init` task. This task runs
`@fedify/denokv`, you can test them with `test:init` task. This task runs
the `fedify init` command with various combinations of web frameworks,
package managers, KvStore implementations, and MessageQueue implementations.

~~~~ bash
# From /packages/cli
deno task test-init
mise test:init
~~~~

You can also specify specific options to test:

~~~~ bash
# Test with specific web framework and package manager
deno task test-init -w hono -p deno
mise test:init -w hono -p deno

# Test with multiple options
deno task test-init -w hono -w express -p deno -p npm -k denokv -m denokv
mise test:init -w hono -w express -p deno -p npm -k denokv -m denokv
~~~~

If some options are not specified, all combinations are tested by default.

You can skip dry run or hydration tests:

~~~~ bash
deno task test-init --no-dry-run # Only run hydration tests
deno task test-init --no-hyd-run # Only run dry-run tests
mise test:init --no-dry-run # Only run hydration tests
mise test:init --no-hyd-run # Only run dry-run tests
~~~~

The test results are stored in `/tmp/fedify-init/<run-id>/`(UNIX).
Expand All @@ -556,6 +556,12 @@ mise run test:examples

This command runs the tests for all example projects.

If you want to test specific examples, you can test them by adding arguments:

~~~~ bash
mise run test:examples astro sveltekit-sample
~~~~

### Building the docs

If you want to change the Fedify docs, you would like to preview the changes
Expand Down
7 changes: 5 additions & 2 deletions deno.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"workspace": [
"./packages/amqp",
"./packages/astro",
"./packages/cfworkers",
"./packages/cli",
"./packages/debugger",
Expand All @@ -25,8 +26,9 @@
"./packages/vocab-runtime",
"./packages/vocab-tools",
"./packages/webfinger",
"./examples/hono-sample",
"./examples/fresh"
"./examples/astro",
"./examples/fresh",
"./examples/hono-sample"
],
"imports": {
"@cloudflare/workers-types": "npm:@cloudflare/workers-types@^4.20250529.0",
Expand All @@ -53,6 +55,7 @@
"@std/yaml": "jsr:@std/yaml@^1.0.8",
"@types/node": "npm:@types/node@^22.16.0",
"amqplib": "npm:amqplib@^0.10.9",
"astro": "npm:astro@^5.17.3",
"byte-encodings": "npm:byte-encodings@^1.0.11",
"chalk": "npm:chalk@^5.6.2",
"es-toolkit": "npm:es-toolkit@^1.43.0",
Expand Down
Loading
Loading