{"id":13519255,"url":"https://github.com/ameerthehacker/blazepack","last_synced_at":"2025-04-07T07:01:31.694Z","repository":{"id":37967137,"uuid":"339200830","full_name":"ameerthehacker/blazepack","owner":"ameerthehacker","description":"⚡ Blazing fast dev server powered by sandpack","archived":false,"fork":false,"pushed_at":"2021-10-20T15:41:48.000Z","size":796,"stargazers_count":236,"open_issues_count":0,"forks_count":17,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-06T22:40:26.132Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ameerthehacker.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-02-15T20:40:02.000Z","updated_at":"2025-04-04T05:52:57.000Z","dependencies_parsed_at":"2022-08-10T05:41:05.214Z","dependency_job_id":null,"html_url":"https://github.com/ameerthehacker/blazepack","commit_stats":null,"previous_names":[],"tags_count":64,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameerthehacker%2Fblazepack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameerthehacker%2Fblazepack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameerthehacker%2Fblazepack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameerthehacker%2Fblazepack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ameerthehacker","download_url":"https://codeload.github.com/ameerthehacker/blazepack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247563924,"owners_count":20958971,"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":"2024-08-01T05:01:56.421Z","updated_at":"2025-04-07T07:01:31.652Z","avatar_url":"https://github.com/ameerthehacker.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eBlazepack ⚡\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  Blazing fast dev server powered by \u003ca href=\"https://www.npmjs.com/package/smooshpack\"\u003esandpack\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://actions-badge.atrox.dev/ameerthehacker/blazepack/goto?ref=master\"\u003e\n    \u003cimg alt=\"Build Status\" src=\"https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fameerthehacker%2Fblazepack%2Fbadge%3Fref%3Dmaster\u0026style=flat-square\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://discord.gg/ZP6p5dVwnn\"\u003e\n    \u003cimg src=\"https://img.shields.io/discord/591914197219016707.svg?label=\u0026logo=discord\u0026logoColor=ffffff\u0026color=7389D8\u0026labelColor=6A7EC2\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"http://makeapullrequest.com\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square\" alt=\"PRs Welcome\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Motivation\n\nI always wanted the super fast feedback that codesandbox provides in my local environment, so I have built a tiny wrapper around the codesandbox bundler sandpack and it runs locally 🎉\n\n## Why Blazepack?\n\n- It is blazing fast ⚡\n- Super tiny (24kb) 👌\n- Run projects without npm install 💃\n- Supports private npm packages 😉\n- React fast refresh ❤️\n- Supports React, Vue, Angular, Preact, Svelte and more 🔨\n- Save disk space 💾\n\n## Install\n\nInstall it globally\n\n```\nnpm i -g blazepack\n```\n\nYou can also use the [blazepack vscode extension](https://marketplace.visualstudio.com/items?itemName=ameerthehacker.blazepack-vscode)\n\n## Usage\n\n### Create project from Template\n\nCreate your first **create react app**\n\n```\nblazepack create my-cra --template=react\n\n# create the app and also start the dev server\n\nblazepack create my-angular-app --template=angular --open\n```\n\n\u003cdetails\u003e\n  \u003csummary\u003e\n    Available Templates\n  \u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003estatic\u003c/li\u003e\n    \u003cli\u003ereact\u003c/li\u003e\n    \u003cli\u003ereact-ts\u003c/li\u003e\n    \u003cli\u003ereact-native-web\u003c/li\u003e\n    \u003cli\u003evanilla\u003c/li\u003e\n    \u003cli\u003epreact\u003c/li\u003e\n    \u003cli\u003evue2\u003c/li\u003e\n    \u003cli\u003evue3\u003c/li\u003e\n    \u003cli\u003eangular\u003c/li\u003e\n    \u003cli\u003esvelte\u003c/li\u003e\n    \u003cli\u003ereason\u003c/li\u003e\n    \u003cli\u003ecxjs\u003c/li\u003e\n    \u003cli\u003edojo\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n### Start project\n\nTo use it in your existing **create react app**, **angular**, **preact**, **svelte**, **vue cli app** just run\n\n```\nblazepack start\n```\n\nIt will start the dev server at port **3000** and open it in browser, you can change the default port by using the **port** option\n\n```\nblazepack start --port 3001\n```\n\nYou can also run it using the **npx** command and not install it globally\n\n```\nnpx blazepack start\n```\n\n### Install dependency\n\nYou can install a new package pretty fast using the below command. It does not create **node_modules** so you are gonna save a lot of space 😉\n\n```\nblazepack install redux [--dev|-save-dev|-D]\n\n# or\n\nblazepack i redux [--dev|-save-dev|-D]\n\n# or\n\nblazepack add redux [--dev|-save-dev|-D]\n```\n\n### Remove dependency\n\nYou can quickly remove a unused dependency by running following command:\n\n```\nblazepack remove redux\n\n# or\n\nblazepack uninstall redux\n```\n\n### Check version\n\nTo know the version of blazepack you are running use the **--version** option\n\n```\nblazepack --version\n```\n\n### Clone Sandbox\n\nYou can clone an existing codesandox, by just running the below commands:\n\n**Clone from URL**\n\n```\nblazepack clone https://codesandbox.io/s/use-undo-redo-yrts1\n```\n\n**Cloning from embed url**\n\n```\nblazepack clone https://codesandbox.io/embed/use-undo-redo-yrts1\n```\n\n**Clone from Sandbox Id**\n\n```\nblazepack clone use-undo-redo-yrts1\n```\n\n### Export to [codesandbox.io](https://codesandbox.io)\n\nYou can export your current project to codesandbox for sharing with your friends in a jiffy\n\n```\nblazepack export\n\n# use --open option to also open the newly created sandbox in a browser tab\n\nblazepack export --open\n```\n\n### Private npm packages\n\nWe honour the project level `.npmrc` file and if it is not found we fallback to user level `.npmrc` file and then finally the global `.npmrc` file. Currently we only support scoped private npm packages. To use the scoped private npm packages you need to fist login into the npm registry and add the scope config to `.npmrc`\n\n```ini\n@myorg:registry=https://registry.myorg.com\n//registry.myorg.com/:_authToken=secrettoken\n```\n\n### Aliases for blazepack\n\nWe create two more alias for blazepack to help you with lesser typing 😇\n\n```\nbpk create my-cra\n\n# or\n\nblaze create my-cra\n```\n\n### Help\n\nYou can know more about the available commands and their options using the help command\n\n```\nblazepack --help\n\n# get help on individual command\n\nblazepack start --help\n```\n\n### Node Interface\n\nBlazepack exposes a Node.js API which can be directly used in Node.js runtime. Blazepack vscode extension is using the same API.\n\n```javascript\nconst bpk = require('blazepack');\n\n// start the dev server\nbpk.commands.startDevServer({\n  directory: process.cwd(),      // directory of your project\n  port: 3000,                   // port on which the dev server should start, by default it is 3000\n  openInBrowser: true,         // open the project in browser once the dev server starts\n  onSuccess: (server) =\u003e {},  // success callback with node http server instance when the server is ready\n  onError = (err) =\u003e {},     // error callback when something goes wrong\n});\n\n// create a new project\nbpk.commands.createProject({\n  projectName: 'my-cra',                         // name of the project\n  templateId: bpk.constants.TEMPLATES['react'], // template to use\n  startServer: true,                           // start the dev server once the project is created\n  portL 3000,                                 // port on which the dev server should start, by default it is 3000\n  onSuccess: () =\u003e {},                       // success callback when the the project is created\n  onError: (err) =\u003e {}                      // error callback when something goes wrong\n});\n\n// export a project to codesandbox.io\nbpk.commands.exportSandbox({\n  directory: process.cwd(),       // path to the project that has to be exported\n  openInBrowser: true,           // open the sandbox in browser once exported\n  onSuccess: (sandboxId) =\u003e {}, // success callback with sandboxId when the export was successful\n  onError = (err) =\u003e {},       // error callback when something goes wrong\n})\n\n// detect the template being used in a particular project\ntry {\n  const template = bpk.utils.detectTemplate(process.cwd());\n\n  console.log(`${template} is being used at ${process.cwd()}`);\n} catch {\n  console.log('Unknown project template');\n}\n```\n\n### Facing issues?\n\nRun blazepack in verbose mode and share the log by raising an issue\n\n```\nblazepack start --verbose \u003e blazepack.log\n```\n\n### Development Setup\n\nFork this repository to make your own copy\n\n```\ngit clone https://github.com/yourusername/blazepack\ncd blazepack\nnpm install\nmkdir playground # playground directory is part of .gitignore\ncd playground\nnode ../bin/blazepack.js \u003ccommand\u003e \u003cname\u003e \u003ctemplate\u003e # Executes our local blazepack project in playground folder\n```\n\nNow we can make use of `node relative-path-to-bin/blazepack.js \u003ccommand\u003e` in playground folder to run and execute our local blazepack project\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://ameerthehacker.me/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/15448192?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAmeer Jhan\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=ameerthehacker\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=ameerthehacker\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/issues?q=author%3Aameerthehacker\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#ideas-ameerthehacker\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://bit.ly/jyash97\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/22376783?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eYash Joshi\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=jyash97\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=jyash97\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/issues?q=author%3Ajyash97\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#ideas-jyash97\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/philipjmurphy\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1055915?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePhilip Murphy\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=philipjmurphy\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/issues?q=author%3Aphilipjmurphy\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/sahilrajput03\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/31458531?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSahil Rajput\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=sahilrajput03\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#ideas-sahilrajput03\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://dhruwlalan.github.io/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/64348100?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003edhruw lalan\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=dhruwlalan\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/issues?q=author%3Adhruwlalan\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/saideepesh000\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/43727167?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSai Deepesh\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-saideepesh000\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=saideepesh000\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=saideepesh000\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/issues?q=author%3Asaideepesh000\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://logan1x.github.io/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/10944610?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKhushal Sharma\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/ameerthehacker/blazepack/issues?q=author%3ALogan1x\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/SBhanushali\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/29128433?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eShivam Bhanushali\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-SBhanushali\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/ameerthehacker/blazepack/commits?author=SBhanushali\" title=\"Code\"\u003e💻\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n\nShow your support by ⭐ the repo\n\n## License\n\nGPL © [Ameer Jhan](mailto:ameerjhanprof@gmail.com)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fameerthehacker%2Fblazepack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fameerthehacker%2Fblazepack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fameerthehacker%2Fblazepack/lists"}