{"id":20264200,"url":"https://github.com/kawarimidoll/deno-dex","last_synced_at":"2025-10-25T13:12:05.432Z","repository":{"id":38167083,"uuid":"425689772","full_name":"kawarimidoll/deno-dex","owner":"kawarimidoll","description":"🦕 A dexterous deno executor","archived":false,"fork":false,"pushed_at":"2024-05-01T01:04:48.000Z","size":116,"stargazers_count":20,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-11T02:09:53.331Z","etag":null,"topics":["deno","typescript"],"latest_commit_sha":null,"homepage":"","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/kawarimidoll.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":"2021-11-08T03:49:43.000Z","updated_at":"2024-04-30T12:54:20.000Z","dependencies_parsed_at":"2023-09-26T18:37:02.715Z","dependency_job_id":"b258f755-dd23-4f3f-969e-8da5de8f6138","html_url":"https://github.com/kawarimidoll/deno-dex","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":"kawarimidoll/deno-dev-template","purl":"pkg:github/kawarimidoll/deno-dex","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kawarimidoll%2Fdeno-dex","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kawarimidoll%2Fdeno-dex/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kawarimidoll%2Fdeno-dex/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kawarimidoll%2Fdeno-dex/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kawarimidoll","download_url":"https://codeload.github.com/kawarimidoll/deno-dex/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kawarimidoll%2Fdeno-dex/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260871361,"owners_count":23075445,"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":["deno","typescript"],"created_at":"2024-11-14T11:38:29.534Z","updated_at":"2025-10-25T13:12:05.327Z","avatar_url":"https://github.com/kawarimidoll.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# deno-dex\n\n[![ci](https://github.com/kawarimidoll/deno-dex/workflows/ci/badge.svg)](.github/workflows/ci.yml)\n[![deno.land](https://img.shields.io/badge/deno-%5E1.16.0-green?logo=deno)](https://deno.land)\n[![vr scripts](https://badges.velociraptor.run/flat.svg)](https://velociraptor.run)\n[![LICENSE](https://img.shields.io/badge/license-MIT-brightgreen)](LICENSE)\n\nA dexterous deno executor (only for development)\n\nCommentary article in Japanese:\nhttps://zenn.dev/kawarimidoll/articles/d371abbd46b65b\n\n## Setup\n\nInstall by `deno install`:\n\n```\ndeno install --allow-read --allow-write --allow-run --reload --force --name dex https://pax.deno.dev/kawarimidoll/deno-dex/main.ts\n```\n\nThe reasons why these permissions are required are:\n\n- `read`: to watch file changes and current working directory\n- `write`: to save intermediate script file in `$DENO_DIR`\n- `run`: to run and kill process\n\n## Features\n\n- Run `deno run` or `deno test` for the file as argument.\n  - Detect the file is for test or not.\n  - Add `--allow-all --unstable --no-check --watch` for fast development.\n- There are several options.\n  - `--clear`: Clear console every restart.\n  - `--watch`: Watch changes of any files you specified.\n  - Other options are passed to `deno run` or `deno test` transparently.\n- Auto-detect\n  [import maps](https://deno.land/manual@v1.16.0/linking_to_external_code/import_maps)\n  and\n  [configuration files](https://deno.land/manual@v1.16.0/getting_started/configuration_file).\n  - When `dex` starts without `--import-map` option and there is\n    `import_map.json`, `--import-map=import_map.json` is implicitly added.\n  - When `dex` starts without `--config` option and there is one of\n    `deno.jsonc`, `deno.json` or `tsconfig.json`, `--config=[one of them]` is\n    implicitly added.\n  - The arguments of `--import-map` and `--config` are also passed to `--watch`\n    option of `dex`.\n\n## Usage\n\nRun the file by `deno run`:\n\n```\ndex hello.ts\n# -\u003e deno run --allow-all --unstable --no-check --watch hello.ts\n```\n\nTest the file by `deno test` if the file is\n[test file](https://deno.land/manual/testing#testing):\n\n```\ndex hello_test.ts\n# -\u003e deno test --allow-all --unstable --no-check --watch hello_test.ts\n```\n\nFor more details, see help:\n\n```\ndex --help\n```\n\n## Caution\n\nAs written above, `dex` skips all checks (`--allow-all --unstable --no-check`).\nThis increases productivity in development, but decreases security. Use it only\nfor your own code.\n\nWhen [`Deno.exit()`](https://doc.deno.land/builtin/stable#Deno.exit) is called,\nprocess will be stopped without restarting. This is same as normal\n`deno run --watch` behavior.\n\n## Vim/Neovim command\n\nIf you using Vim or Neovim, put the definition below in your configuration file\nto enable `:Dex` command.\n\n```vim\ncommand! -nargs=* -bang Dex silent only! | botright 12 split |\n    \\ execute 'terminal' (has('nvim') ? '' : '++curwin') 'dex'\n    \\   (\u003cbang\u003e0 ? '--clear' : '') \u003cq-args\u003e expand('%:p') |\n    \\ stopinsert | execute 'normal! G' | set bufhidden=wipe |\n    \\ execute 'autocmd BufEnter \u003cbuffer\u003e if winnr(\"$\") == 1 | quit! | endif' |\n    \\ wincmd k\n```\n\n- `:Dex` to run `dex` with the current file in the terminal window under editor\n  area.\n  - `:Dex` accepts runtime options, like as `:Dex --quite`\n- `:Dex!` is shorthand of `:Dex --clear`\n\n## Acknowledgements\n\n`--watch` option is heavily inspired by this article.\n\n[Build a live reloader and explore Deno! 🦕 - DEV Community](https://dev.to/otanriverdi/let-s-explore-deno-by-building-a-live-reloader-j47)\n\n---\n\n```ts\nif (this.repo.isAwesome || this.repo.isHelpful) {\n  star(this.repo);\n}\n```\n\n\u003c!-- this part is inspired by https://github.com/bhumijgupta/Deno-news-cli --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkawarimidoll%2Fdeno-dex","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkawarimidoll%2Fdeno-dex","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkawarimidoll%2Fdeno-dex/lists"}