{"id":25310778,"url":"https://github.com/LonelySnowman/rspack-deno-plugin","last_synced_at":"2025-10-28T15:30:32.319Z","repository":{"id":275264519,"uuid":"925173916","full_name":"LonelySnowman/rspack-deno-plugin","owner":"LonelySnowman","description":"Make rspack run correctly in the deno environment.","archived":false,"fork":false,"pushed_at":"2025-02-09T17:02:30.000Z","size":100,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-09T17:34:50.060Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LonelySnowman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-31T11:24:58.000Z","updated_at":"2025-02-09T17:03:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"cddc6c3a-cbc4-44c8-abde-ad20caf189d6","html_url":"https://github.com/LonelySnowman/rspack-deno-plugin","commit_stats":null,"previous_names":["lonelysnowman/rspack-deno-plugin"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LonelySnowman%2Frspack-deno-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LonelySnowman%2Frspack-deno-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LonelySnowman%2Frspack-deno-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LonelySnowman%2Frspack-deno-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LonelySnowman","download_url":"https://codeload.github.com/LonelySnowman/rspack-deno-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238668048,"owners_count":19510495,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-13T14:01:28.963Z","updated_at":"2025-10-28T15:30:32.315Z","avatar_url":"https://github.com/LonelySnowman.png","language":"TypeScript","funding_links":[],"categories":["Plugins"],"sub_categories":["Rspack Plugins"],"readme":"# rspack-deno-plugin\n\nDeno module resolution for rspack and rsbuild.\n\n- Support for `http:`, `https:`, `jsr:`, and `npm:` specifiers.\n- Support deno workspace running.\n\n\u003e This project learns [esbuild_deno_loader](https://github.com/lucacasonato/esbuild_deno_loader)\n\n## How to use\n\n- You need to set `\"nodeModulesDir\": \"auto\"` in deno.json before start.\n- [npm](https://www.npmjs.com/package/rspack-deno-plugin) | [jsr](https://jsr.io/@snowman/rspack-deno-plugin)\n\n### NPM Package\n\n```bash\n# install package\ndeno install npm:rspack-deno-plugin\n```\n\n- Use in `rsbuild.config.ts`\n\n```ts\nimport { defineConfig } from '@rsbuild/core';\nimport RspackDenoPlugin from 'rspack-deno-plugin';\n\nexport default defineConfig({\n  // ...\n  tools: {\n    rspack: {\n      plugins: [new RspackDenoPlugin()],\n    },\n  },\n});\n```\n\n- Use in `rspack.config.ts`\n\n```bash\n# Install ts parser before running\ndeno install npm:esbuild npm:esbuild-register\n```\n\n```ts\nimport { defineConfig } from '@rspack/cli';\nimport RspackDenoPlugin from 'rspack-deno-plugin';\n\nexport default defineConfig({\n  // ...\n  plugins: [new RspackDenoPlugin()],\n});\n```\n\n### JSR Package\n\n- Can only be run with `rsbuild` api.\n\n```bash\n# install package\ndeno install jsr:@snowman/rspack-deno-plugin\n```\n\n```ts\n// create rsbuild script file like rsbuild-script.ts\nimport { createRsbuild } from '@rsbuild/core';\nimport RspackDenoPlugin from '@snowman/rspack-deno-plugin';\n\nconst rsbuild = await createRsbuild({\n  rsbuildConfig: {\n    tools: {\n      rspack: {\n        // add rspack plugin\n        plugins: [new RspackDenoPlugin()],\n      },\n    },\n  },\n});\n\n// build\nawait rsbuild.build();\n\n// preview\nawait rsbuild.preview();\n\n// dev\nawait rsbuild.startDevServer();\n```\n\n```bash\n# run rsbuild script\ndeno --allow-all ./rsbuild-script.ts\n```\n\n## How it works\n\n- `npm:` specifier: Resolve node_modules like node.\n- `http:`, `https:`, `jsr:` specifiers: Use `deno info` command to resolve deno local cache.\n- `file:`, `data:` specifiers: Resolve by rspack.\n\n## Coming soon\n\n- [ ] Support { \"nodeModulesDir\": \"none\" } config in deno.json.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLonelySnowman%2Frspack-deno-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLonelySnowman%2Frspack-deno-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLonelySnowman%2Frspack-deno-plugin/lists"}