{"id":21291903,"url":"https://github.com/idea2app/vue-mobx-prime-ts","last_synced_at":"2025-07-11T16:31:04.468Z","repository":{"id":98205343,"uuid":"318264075","full_name":"idea2app/Vue-MobX-Prime-ts","owner":"idea2app","description":"Vue 3 project scaffold based on TypeScript 5, MobX \u0026 PrimeVue 3, which is inspired by WebCell scaffold.","archived":false,"fork":false,"pushed_at":"2024-06-14T21:45:43.000Z","size":4652,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-06-15T22:24:36.018Z","etag":null,"topics":["bootstrap","scaffold","typescript","vue"],"latest_commit_sha":null,"homepage":"https://idea2app.github.io/Vue-MobX-Prime-ts/","language":"Vue","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/idea2app.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}},"created_at":"2020-12-03T17:06:37.000Z","updated_at":"2024-06-14T21:44:59.000Z","dependencies_parsed_at":"2024-06-14T22:24:40.669Z","dependency_job_id":null,"html_url":"https://github.com/idea2app/Vue-MobX-Prime-ts","commit_stats":null,"previous_names":["idea2app/vue-bootstrap-ts","idea2app/vue-prime-ts"],"tags_count":0,"template":true,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idea2app%2FVue-MobX-Prime-ts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idea2app%2FVue-MobX-Prime-ts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idea2app%2FVue-MobX-Prime-ts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/idea2app%2FVue-MobX-Prime-ts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/idea2app","download_url":"https://codeload.github.com/idea2app/Vue-MobX-Prime-ts/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225741249,"owners_count":17516895,"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":["bootstrap","scaffold","typescript","vue"],"created_at":"2024-11-21T13:46:41.240Z","updated_at":"2025-07-11T16:31:04.462Z","avatar_url":"https://github.com/idea2app.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vue-MobX-Prime-ts\n\n[Vue 3][1] project scaffold based on [TypeScript 5][2], [MobX][3] \u0026 [PrimeVue 3][4], which is inspired by [WebCell scaffold][5].\n\n[![CI \u0026 CD](https://github.com/idea2app/Vue-MobX-Prime-ts/actions/workflows/main.yml/badge.svg)][6]\n\n[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)][7]\n[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)][8]\n\nThis template should help get you started developing with Vue 3 and Typescript in Vite. The template uses Vue 3 `\u003cscript setup\u003e` SFCs, check out the [script setup docs][9] to learn more.\n\n## Knowledge\n\n- Language: [TypeScript 5][2]\n- Component engine: [Vue 3][1]\n- Component suite: [PrimeVue 4][4]\n- Chart library: [ECharts-JSX 1][10]\n- State management: [MobX 6][3]\n- HTTP client: [KoAJAX 4][11]\n- Asset bundler: [Parcel 2][12]\n\n## Extra components\n\n1. [`\u003cStockNumber /\u003e`](src/components/StockNumber.vue)\n2. [`\u003cOverlay /\u003e`](src/components/Overlay.vue)\n3. [`\u003cImage /\u003e`](src/components/Image.vue)\n4. [`\u003cImageUploader /\u003e`](src/components/ImageUploader.vue)\n5. [`\u003cDownloader /\u003e`](src/components/Downloader.vue)\n\n## Best practice\n\n1. Install GitHub apps in your organization or account:\n\n   1. [Probot settings][13]: set up Issue labels \u0026 Pull Request rules\n   2. [PR badge][14]: set up Online [VS Code][15] editor entries in Pull Request description\n\n2. Click the **[Use this template][16] button** on the top of this GitHub repository's home page, then create your own repository in the app-installed namespace above\n\n3. Click the **[Open in GitHub codespaces][7] button** on the top of ReadMe file, then an **online VS Code development environment** will be started immediately\n\n4. Set [Vercel variables][17] as [Repository secrets][18], then every commit will get an independent **Preview URL**\n\n5. Recommend to add a [Notification step in GitHub actions][19] for your Team IM app\n\n6. Remind the PMs \u0026 users of your product to submit **Feature/Enhancement** requests or **Bug** reports with [Issue forms][20] instead of IM messages or Mobile Phone calls\n\n7. Collect all these issues into [Project kanbans][21], then create **Pull requests** \u0026 add `closes #issue_number` into its description for automation\n\n## Usage\n\n### Project setup\n\n```Shell\nnpm i pnpm -g\npnpm i\n```\n\n### Compiles and hot-reloads for development\n\n```Shell\nnpm start\n```\n\n### Compiles and minifies for production\n\n```Shell\npnpm build\n```\n\n### Lints and fixes files\n\n```Shell\nnpm test\n```\n\n## Recommended IDE Setup\n\n- [VSCode][15] + [Volar][22]\n\n### Type Support For `.vue` Imports in TS\n\nSince TypeScript cannot handle type information for `.vue` imports, they are shimmed to be a generic Vue component type by default. In most cases this is fine if you don't really care about component prop types outside of templates. However, if you wish to get actual prop types in `.vue` imports (for example to get props validation when using manual `h(...)` calls), you can enable Volar's `.vue` type support plugin by running `Volar: Switch TS Plugin on/off` from VSCode command palette.\n\n[1]: https://vuejs.org/\n[2]: https://www.typescriptlang.org/\n[3]: https://mobx.js.org/\n[4]: https://primevue.org/\n[5]: https://github.com/EasyWebApp/scaffold\n[6]: https://github.com/idea2app/Vue-MobX-Prime-ts/actions/workflows/main.yml\n[7]: https://codespaces.new/idea2app/Vue-MobX-Prime-ts\n[8]: https://gitpod.io/?autostart=true#https://github.com/idea2app/Vue-MobX-Prime-ts\n[9]: https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup\n[10]: https://github.com/idea2app/ECharts-JSX\n[11]: https://github.com/EasyWebApp/KoAJAX\n[12]: https://parceljs.org/\n[13]: https://probot.github.io/apps/settings/\n[14]: https://pullrequestbadge.com/\n[15]: https://code.visualstudio.com/\n[16]: https://github.com/new?template_name=Vue-MobX-Prime-ts\u0026template_owner=idea2app\n[17]: https://github.com/idea2app/Next-Bootstrap-ts/blob/80967ed49045af9dbcf4d3695a2c39d53a6f71f1/.github/workflows/pull-request.yml#L9-L11\n[18]: https://github.com/idea2app/Vue-MobX-Prime-ts/settings/secrets/actions\n[19]: https://github.com/kaiyuanshe/kaiyuanshe.github.io/blob/bb4675a56bf1d6b207231313da5ed0af7cf0ebd6/.github/workflows/pull-request.yml#L32-L56\n[20]: https://github.com/idea2app/Vue-MobX-Prime-ts/issues/new/choose\n[21]: https://github.com/idea2app/Vue-MobX-Prime-ts/projects\n[22]: https://marketplace.visualstudio.com/items?itemName=vue.volar\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidea2app%2Fvue-mobx-prime-ts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fidea2app%2Fvue-mobx-prime-ts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fidea2app%2Fvue-mobx-prime-ts/lists"}