Add SvelteKit support to fedify init - #971
Conversation
Fedify already ships a SvelteKit integration package and example app, but `fedify init` couldn't scaffold one, so add a `sveltekit` option via `sv create`. fedify-dev#892 Assisted-by: Claude Code:claude-sonnet-5
👷 Deploy Preview for fedify-json-schema processing.
|
✅ Deploy Preview for fedify-json-schema canceled.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (11)
📝 WalkthroughWalkthrough
ChangesSvelteKit init support
Estimated code review effort: 2 (Simple) | ~10 minutes Sequence Diagram(s)sequenceDiagram
participant User
participant FedifyInit
participant SvelteKitCLI
participant GeneratedApp
User->>FedifyInit: Select SvelteKit and package manager
FedifyInit->>SvelteKitCLI: Run the SvelteKit create command
SvelteKitCLI->>GeneratedApp: Create the project
FedifyInit->>GeneratedApp: Write the Fedify SvelteKit hook
Possibly related issues
Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is
... and 1 file with indirect coverage changes 🚀 New features to boost your workflow:
|
2chanhaeng
left a comment
There was a problem hiding this comment.
Great work! This PR can merge to main if you fix few points. First, please update the dependencies using mise run update-init-deps.
| files: { | ||
| "src/hooks.server.ts": await readTemplate("sveltekit/hooks.server.ts"), | ||
| }, | ||
| tasks: getNodeBunDevToolTasks(pm), |
There was a problem hiding this comment.
vite does not inject environment variables from .env into process.env, which causes errors during testing using mysql. You can test it with mise test:init -w sveltekit -p pnpm -m mysql -k mysql --no-dry-run. Add dotenvx as a dependency and ensure that if the package manager is not Deno, the task is modified to dotenvx run -- <command>. For example, if dev: "vite dev" is automatically generated, it should be changed to dev: "dotenvx run -- vite dev".
Summary
Fedify already has a SvelteKit integration package and an example app, but
fedify initcommand could not scaffold a SvelteKit project. Added a SvelteKit web framework option to@fedify/init.Assisted-by: Claude Code:claude-sonnet-5
Related issue
fedify init#892Changes
webframeworks/sveltekit.tswhich defines theWebFrameworkDescriptionand scaffolding command for SvelteKit.hooks.server.ts) that integrates Fedify into a SvelteKit app.@fedify/initREADME.md and a tutorial document to include SvelteKit support.denolookup test for SvelteKit, matching Astro, Nuxt and SolidStart, since Vite can't resolve@fedify/*packages that are only linked through Deno's local workspace links.Benefits
fedify init.Checklist
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)?mise teston your machine?