{"id":25863214,"url":"https://github.com/gjzwiers/mod","last_synced_at":"2026-04-11T08:01:42.377Z","repository":{"id":42366319,"uuid":"416865465","full_name":"GJZwiers/mod","owner":"GJZwiers","description":"Simple Command Line Interface to create Deno module entrypoints, CI, config and more.","archived":false,"fork":false,"pushed_at":"2022-08-20T10:24:38.000Z","size":534,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-24T04:36:43.650Z","etag":null,"topics":["cli","deno","javascript","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/GJZwiers.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}},"created_at":"2021-10-13T19:02:59.000Z","updated_at":"2023-04-27T10:40:31.000Z","dependencies_parsed_at":"2022-09-26T20:41:36.248Z","dependency_job_id":null,"html_url":"https://github.com/GJZwiers/mod","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"purl":"pkg:github/GJZwiers/mod","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GJZwiers%2Fmod","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GJZwiers%2Fmod/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GJZwiers%2Fmod/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GJZwiers%2Fmod/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GJZwiers","download_url":"https://codeload.github.com/GJZwiers/mod/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GJZwiers%2Fmod/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31673067,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T17:19:37.612Z","status":"online","status_checked_at":"2026-04-11T02:00:05.776Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["cli","deno","javascript","typescript"],"created_at":"2025-03-01T23:59:22.214Z","updated_at":"2026-04-11T08:01:42.320Z","avatar_url":"https://github.com/GJZwiers.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mod\n\n[![deno module](https://shield.deno.dev/x/mod)](https://deno.land/x/mod)\n![deno compatibility](https://shield.deno.dev/deno/^1.15)\n[![Build](https://github.com/GJZwiers/mod/actions/workflows/build.yaml/badge.svg)](https://github.com/GJZwiers/mod/actions/workflows/build.yaml)\n[![Coverage Status](https://coveralls.io/repos/github/GJZwiers/mod/badge.svg?branch=main)](https://coveralls.io/github/GJZwiers/mod?branch=main)\n![GitHub](https://img.shields.io/github/license/GJZwiers/mod)\n\n\u003e **Warning** This Deno module is deprecated. I recommend using `deno init`\n\u003e instead.\n\n`mod` is a command line tool to quickly scaffold a new Deno module. It creates\napp and dependency entrypoints, a `.gitignore` file and has options to add a\ntest-driven setup and/or include a basic CI pipeline.\n\nTry it without any installation:\n\n\u003cdetails open\u003e\n\u003csummary\u003eBash/Zsh\u003c/summary\u003e\n\u003cp\u003e\n\n```bash\ndeno run \\\n--allow-read \\\n--allow-run=git \\\n--allow-write=my_deno_module \\\nhttps://deno.land/x/mod/mod.ts \\\n--name my_deno_module\n```\n\n\u003c/p\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003ePowerShell\u003c/summary\u003e\n\u003cp\u003e\n\n```console\ndeno run `\n--allow-read `\n--allow-run=git `\n--allow-write=my_deno_module `\nhttps://deno.land/x/mod/mod.ts `\n--name my_deno_module\n```\n\n\u003c/p\u003e\n\u003c/details\u003e\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Permissions](#permissions)\n- [Usage](#usage)\n- [Options](#options)\n- [Contributing](#contributing)\n\n## Installation\n\n`mod` requires `deno` and optionally `git`. You can get the latest stable\nrelease from `deno.land/x`:\n\n```console\ndeno install --allow-read --allow-run=git --allow-write -fn mod https://deno.land/x/mod@v2.3.9/mod.ts\n```\n\nYou can also get the _unstable_ canary release from GitHub by installing via the\n`main` branch's raw URL:\n\n```console\ndeno install --allow-read --allow-run=git --allow-write -fn mod https://raw.githubusercontent.com/GJZwiers/mod/main/mod.ts\n```\n\n## Permissions\n\n`mod` requires the following permissions:\n\n- `read`: to check if files already exists before writing.\n- `run=git`: to run `git` commands, more specifically `git init`\n- `write`: to make files as part of the module initialization.\n\nOmitting `run` permissions is possible, but it means a Git repository will not\nbe initialized automatically.\n\n## Usage\n\n```console\nmod\n```\n\nThis will create the following file structure in the current working directory:\n\n```\n.\n├── .gitignore\n├── deps.ts\n├── dev_deps.ts\n├── mod.ts\n```\n\nNote that `mod` does not overwrite files unless `--force` is used explicitly.\nThis means the program can also be used to 'fill in the blanks' in a directory\nwhere not all of the files above are present yet.\n\nAlso note that `mod` does not perform editor-specific setups such as enabling\nDeno in VS Code via `.vscode/settings.json`.\n\nIf `git` is installed on the machine then `git init` will be run as well.\n\nTo create the new module in a new directory:\n\n```console\nmod --name my_deno_module\n```\n\nThis will create the following file and directory structure:\n\n```\n.\n├── my_deno_module\n|   ├── .gitignore\n|   ├── deps.ts\n|   ├── dev_deps.ts\n|   ├── mod.ts\n```\n\n`mod` can also create other files in addition to the basics, such as a workflow\nfile for GitHub Actions:\n\n```console\nmod -n my_deno_module --ci\n```\n\n```\n.\n├── my_deno_module\n|   ├── .github\n|   |   ├── workflows\n|   |   |   ├── build.yaml\n|   ├── .gitignore\n|   ├── deps.ts\n|   ├── dev_deps.ts\n|   ├── mod.ts\n```\n\nYou can also initialize with JavaScript:\n\n```console\nmod --js\n```\n\n```\n.\n├── .gitignore\n├── deps.js\n├── dev_deps.js\n├── mod.js\n```\n\n## Options\n\n`mod` can create other files with the module, such as an import map or a Deno\nconfiguration file. To see what options and flags are available use:\n\n- `mod --help` if you have the CLI installed or\n- `deno run https://deno.land/x/mod/mod.ts --help`\n\n## Contributing\n\nBug reports and feature requests are very welcome! If you want to contribute a\nfix or feature yourself, fork this repository and make a pull request with your\nchanges.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgjzwiers%2Fmod","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgjzwiers%2Fmod","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgjzwiers%2Fmod/lists"}