{"id":16158800,"url":"https://github.com/haru52/clean-user-manager","last_synced_at":"2025-07-05T00:36:35.574Z","repository":{"id":57876628,"uuid":"527221994","full_name":"haru52/clean-user-manager","owner":"haru52","description":"CLI of a user management system. This is an example TypeScript project of Clean Architecture.","archived":false,"fork":false,"pushed_at":"2023-01-23T00:33:02.000Z","size":2317,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-05-24T11:08:37.683Z","etag":null,"topics":["clean-architecture","cli","typescript"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@haru52/usermgr","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"wtfpl","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/haru52.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"docs/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","support":null}},"created_at":"2022-08-21T13:57:01.000Z","updated_at":"2022-09-10T15:07:05.000Z","dependencies_parsed_at":"2023-02-12T19:15:16.016Z","dependency_job_id":null,"html_url":"https://github.com/haru52/clean-user-manager","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":"haru52/base_template","purl":"pkg:github/haru52/clean-user-manager","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haru52%2Fclean-user-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haru52%2Fclean-user-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haru52%2Fclean-user-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haru52%2Fclean-user-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haru52","download_url":"https://codeload.github.com/haru52/clean-user-manager/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haru52%2Fclean-user-manager/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262357559,"owners_count":23298463,"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":["clean-architecture","cli","typescript"],"created_at":"2024-10-10T01:55:06.838Z","updated_at":"2025-07-05T00:36:35.557Z","avatar_url":"https://github.com/haru52.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- vale Microsoft.HeadingColons = NO --\u003e\n# Clean User Manager: usermgr\n\u003c!-- vale Microsoft.HeadingColons = YES --\u003e\n\n[![Test](https://github.com/haru52/clean-user-manager/actions/workflows/test.yml/badge.svg)](https://github.com/haru52/clean-user-manager/actions/workflows/test.yml)\n[![Release](https://github.com/haru52/clean-user-manager/actions/workflows/release.yml/badge.svg)](https://github.com/haru52/clean-user-manager/actions/workflows/release.yml)\n[![CodeQL](https://github.com/haru52/clean-user-manager/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/haru52/clean-user-manager/actions/workflows/codeql-analysis.yml)\n[![Copy/Paste](report/jscpd-badge.svg)](report/jscpd-report.md)\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://haru52.github.io/clean-user-manager/CODE_OF_CONDUCT.html)\n[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](https://commitizen.github.io/cz-cli/)\n[![semantic-release: conventionalcommits](https://img.shields.io/badge/semantic--release-conventionalcommits-e10079?logo=semantic-release)](https://github.com/semantic-release/semantic-release)\n\n## Overview\n\nCLI of a user management system. This is an example TypeScript project of [Clean Architecture](https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html).\n\n## Requirements\n\n| Tool            | Version                                          |\n| --------------- | ------------------------------------------------ |\n| Node.js and npm | `engines` values in [package.json](package.json) |\n\n## Installation\n\n```sh\nnpm i -g @haru52/usermgr\n```\n\n## Usage\n\n```console\nUsage: usermgr [options] [command]\n\nCLI of a user management system. This is an example TypeScript project of Clean Architecture.\n\nOptions:\n  -V, --version    output the version number\n  -h, --help       display help for command\n\nCommands:\n  register \u003cname\u003e  register a new user\n  show \u003cid\u003e        show the user\n  help [command]   display help for command\n```\n\n\u003c!-- vale Microsoft.Foreign = NO --\u003e\n`usermgr` command generates or updates `.usermgr/usermgr.db` file in your home directory. This is an SQLite DB file. If you want to clean this DB, please delete this DB file (e.g., Run `$ rm \"$HOME\"/.usermgr/usermgr.db`).\n\u003c!-- vale Microsoft.Foreign = YES --\u003e\n\n## Update\n\n```sh\nnpm i -g @haru52/usermgr\n```\n\n## Uninstall\n\n```sh\nnpm r -g @haru52/usermgr\nrm -rf \"$HOME\"/.usermgr\n```\n\n## Versioning policy\n\n[Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html)\n\n## License\n\n[WTFPL](LICENSE)\n\n## Contributing\n\n[Contributing Guideline](https://haru52.github.io/clean-user-manager/CONTRIBUTING.html)\n\n## Documentation\n\n[Documentation | clean-user-manager](https://haru52.github.io/clean-user-manager/)\n\n## References\n\n- [Clean Coder Blog](https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html)\n- [Clean Architecture - アスキードワンゴ](https://asciidwango.jp/post/176293765750/clean-architecture)\n- [実践クリーンアーキテクチャ │ nrslib](https://nrslib.com/clean-architecture/)\n- [Javaでクリーンアーキテクチャする方法　Part.1:ヘキサゴナルアーキテクチャ - ログミーTech](https://logmi.jp/tech/articles/323233)\n\n\u003c!-- vale Microsoft.Vocab = NO --\u003e\n## Author\n\u003c!-- vale Microsoft.Vocab = YES --\u003e\n\n[haru](https://haru52.com/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharu52%2Fclean-user-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharu52%2Fclean-user-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharu52%2Fclean-user-manager/lists"}