{"id":13817707,"url":"https://github.com/evryn/vue-registrar","last_synced_at":"2025-05-15T20:32:44.451Z","repository":{"id":34913115,"uuid":"189063940","full_name":"evryn/vue-registrar","owner":"evryn","description":"☘️ A package that dynamically registers your components and vuex modules","archived":true,"fork":false,"pushed_at":"2023-09-03T21:19:26.000Z","size":1838,"stargazers_count":20,"open_issues_count":17,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-22T23:18:44.118Z","etag":null,"topics":["component","register","store","vue","vuejs","vuex"],"latest_commit_sha":null,"homepage":"https://evryn.github.io/vue-registrar","language":"JavaScript","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/evryn.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}},"created_at":"2019-05-28T16:22:26.000Z","updated_at":"2025-02-15T14:13:44.000Z","dependencies_parsed_at":"2024-01-08T08:57:44.397Z","dependency_job_id":null,"html_url":"https://github.com/evryn/vue-registrar","commit_stats":null,"previous_names":["amirrezanasiri/vue-registrar"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evryn%2Fvue-registrar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evryn%2Fvue-registrar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evryn%2Fvue-registrar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/evryn%2Fvue-registrar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/evryn","download_url":"https://codeload.github.com/evryn/vue-registrar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254418739,"owners_count":22068142,"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":["component","register","store","vue","vuejs","vuex"],"created_at":"2024-08-04T06:00:54.036Z","updated_at":"2025-05-15T20:32:43.093Z","avatar_url":"https://github.com/evryn.png","language":"JavaScript","funding_links":[],"categories":["Vue.js"],"sub_categories":[],"readme":"\u003e **Warning**\n\u003e This repository is archived for read-only purpose and not maintained anymore. [Tree Shaking](https://webpack.js.org/guides/tree-shaking/) is better way to archive the primary goal of this package and we're not going to add it to the package since it's no longer maintained.\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://evryn.github.io/vue-registrar/\"\u003e\n    \u003cimg alt=\"vue-registrar\" src=\"./docs/assets/logo.png\" width=\"150\"\u003e\n  \u003c/a\u003e\n  \u003ch1 align=\"center\"\u003eVue Registrar\u003c/h1\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  A dynamic component registrar and Vuex module assembler\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://www.npmjs.com/package/vue-registrar\"\u003e\u003cimg src=\"https://img.shields.io/npm/dt/vue-registrar.svg\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://travis-ci.org/evryn/vue-registrar\"\u003e\u003cimg src=\"https://travis-ci.org/evryn/vue-registrar.svg?branch=master\"\u003e\u003c/a\u003e\n    \u003cimg src=\"https://img.shields.io/david/evryn/vue-registrar.svg\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/last-commit/evryn/vue-registrar.svg\"\u003e\n    \u003ca href=\"https://standardjs.com/\"\u003e\u003cimg src=\"https://img.shields.io/badge/code%20style-standard-brightgreen.svg\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\nA Vue.js package that makes your code a lot cleaner and much more understandable.\n\n## Quick Start\n🔥 Let just \u003ca href=\"https://evryn.github.io/vue-registrar/#/getting-started/installation\"\u003e\u003cstrong\u003eget started!\u003c/strong\u003e\u003c/a\u003e!\n\n## What is this technically?\nVue Registrar is consisted of two features that:\n * Registers all your common and frequently used components globally and ends the need for importing them manually;\n * Assembles all your vuex modules in a nested manner.   \n \n👉 \u003ca href=\"https://evryn.github.io/vue-registrar/#/getting-started/installation\"\u003e\u003cstrong\u003eSee documents and get started\u003c/strong\u003e\u003c/a\u003e\n \n## Why should I use it?\nNo more words! see yourself:   \n\n### Using Component Registrar\n![vue-dynamic-component-registrar](./docs/assets/component-registrar-usage.png)\n\nIf you're familiar with following structure:\n```vue\n// hello-world.vue\n\u003ctemplate\u003e ... \u003c/template\u003e\n\u003cscript\u003e\nimport SomethingCommon from './path/to/it'\nexport default {\n  components: { SomethingCommon }\n}\n\u003c/script\u003e\n```\nYou may need this feature! By using that, you just need to consider your template:\n```vue\n// hello-world.vue\n\u003ctemplate\u003e ... \u003c/template\u003e\n```\n\n### Using Vuex Module Assembler\n![vuex-dynamic-nested-module-assembler](./docs/assets/vuex-module-assembler-usage.png)\n\nIf you're using Vuex modules (especially in a nested or namespaced manner) like this:\n```javascript\n// store.js\nimport moduleAlphaState from './path/to/moduleAlpha/state'\nimport moduleAlphaActions from './path/to/moduleAlpha/actions'\nimport moduleBeta from './path/to/moduleBeta'\n\nexport default {\n  a: {\n    state: moduleAlphaState,\n    actions: moduleAlphaActions,\n    namespaced: true,\n    modules: {\n      nestedB: moduleBeta\n    }\n  }\n}\n\u003c/script\u003e\n```\nYou'll need this feature. By using it, you don't need to do anything else! just follow a simple directory structure:\n```\nvuex-modules/\n└── a\n    ├── actions.js\n    ├── state.js\n    └── b\n        ├── actions.js\n        ├── getters.js\n        ├── mutations.js\n        └── state.js\n```\n\n## Contribution\nAny kind of help is appreciated! Feel free to report bugs, extend functionality and features. Pull Requests will be reviewed as soon as possible.\n\n## License\nCode is licensed under the [MIT License](LICENSE).\n\n# See Also\n* [ByteGate](https://bytegate.ir/) (our blog)\n* [تبدیل PDF به ورد](http://delix.ir/) (our sponsored service)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevryn%2Fvue-registrar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fevryn%2Fvue-registrar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fevryn%2Fvue-registrar/lists"}