{"id":21171519,"url":"https://github.com/vaaski/localpen","last_synced_at":"2026-02-16T07:32:36.806Z","repository":{"id":247624696,"uuid":"826387049","full_name":"vaaski/localpen","owner":"vaaski","description":"Quickly run and evaluate code with the speed of Bun.","archived":false,"fork":false,"pushed_at":"2024-07-19T13:58:06.000Z","size":367,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-11T10:48:12.369Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://localpen.is","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vaaski.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-09T15:57:34.000Z","updated_at":"2024-11-04T22:57:58.000Z","dependencies_parsed_at":"2025-10-11T10:48:03.065Z","dependency_job_id":"4f3714f2-c4da-4a6a-a696-6f0207cdb003","html_url":"https://github.com/vaaski/localpen","commit_stats":null,"previous_names":["vaaski/localpen"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/vaaski/localpen","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaaski%2Flocalpen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaaski%2Flocalpen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaaski%2Flocalpen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaaski%2Flocalpen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vaaski","download_url":"https://codeload.github.com/vaaski/localpen/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vaaski%2Flocalpen/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29502934,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T05:57:17.024Z","status":"ssl_error","status_checked_at":"2026-02-16T05:56:49.929Z","response_time":115,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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-11-20T16:06:53.482Z","updated_at":"2026-02-16T07:32:36.788Z","avatar_url":"https://github.com/vaaski.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Localpen\n\nQuickly run and evaluate code with the speed of [Bun][bun].\n\n![Localpen demo](./.github/localpen.gif)\n\n### Synopsis\n\nI like to just run some one-off code snippets sometimes.\nThere are browser-based solutions like [CodePen](https://codepen.io) or [Stackblitz](https://stackblitz.com), but they come with their own editor and are inherently slow.\n\nLocalpen is a CLI tool that allows you to run and evaluate code with the speed of [Bun][bun]. It creates a project folder in a temporary directory, opens it in VSCode and immediately runs the code in Bun using the bun watch command.\n\nOpening in VSCode uses the `--wait` flag, so that closing the editor will tell Localpen to stop the evaluation and show a prompt to delete the temporary directory.\n\n### Usage\n\n- Install [bun][bun]:\n\n  ```bash\n  # Linux \u0026 macOS\n  curl -fsSL https://bun.sh/install | bash\n  ```\n\n  ```bash\n  # Windows\n  powershell -c \"irm bun.sh/install.ps1 | iex\"\n  ```\n\n- Run `localpen`:\n\n  ```bash\n  bunx localpen\n  ```\n\n- Install `localpen`:\n  ```bash\n  bun add -g localpen\n  ```\n\n### Templates\n\nCurrently, there are three templates available:\n\n- `TypeScript`/`ts`\n- `JavaScript`/`js`\n- `Vite`/`v`\n\n\u003e [!TIP]\n\u003e You can also specify any vite template directly, e.g. `vue-ts`\n\nTo use a template, run `localpen` with the `-t` flag:\n\n```bash\nlocalpen -t ts\n```\n\n### Deletion behavior\n\nBy default, Localpen will prompt you to delete the temporary directory after the evaluation is complete.\n\nThis prompt can be skipped by passing the `--keep` (`-k`) or the `--delete` (`-d`) flag.\n\n### Todo\n\n- [ ] ensure all the vite templates work\n- [x] list the vite templates in the help message\n\n[bun]: https://bun.sh\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvaaski%2Flocalpen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvaaski%2Flocalpen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvaaski%2Flocalpen/lists"}