{"id":15020181,"url":"https://github.com/xieyezi/monia-cli","last_synced_at":"2025-10-25T07:30:45.530Z","repository":{"id":51941912,"uuid":"324526797","full_name":"xieyezi/monia-cli","owner":"xieyezi","description":"一个同时支持Vue、React、Flutter的项目脚手架","archived":false,"fork":false,"pushed_at":"2022-03-22T13:03:46.000Z","size":2493,"stargazers_count":85,"open_issues_count":1,"forks_count":16,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-10-04T07:17:41.337Z","etag":null,"topics":["cli","compostion","flutter","flutter-cli","hooks","react","react-cli","vue","vue-cli","vue3","vue3-typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/xieyezi.png","metadata":{"files":{"readme":"README-EN.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}},"created_at":"2020-12-26T10:00:31.000Z","updated_at":"2024-07-30T11:39:04.000Z","dependencies_parsed_at":"2022-08-13T01:11:07.991Z","dependency_job_id":null,"html_url":"https://github.com/xieyezi/monia-cli","commit_stats":null,"previous_names":["xieyezi/burnish-cli"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xieyezi%2Fmonia-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xieyezi%2Fmonia-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xieyezi%2Fmonia-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xieyezi%2Fmonia-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xieyezi","download_url":"https://codeload.github.com/xieyezi/monia-cli/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219868963,"owners_count":16555587,"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":["cli","compostion","flutter","flutter-cli","hooks","react","react-cli","vue","vue-cli","vue3","vue3-typescript"],"created_at":"2024-09-24T19:54:41.571Z","updated_at":"2025-10-25T07:30:39.915Z","avatar_url":"https://github.com/xieyezi.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\nLanguage: EN | [中文简体](https://github.com/xieyezi/monia-cli)\n\n\n\u003ccode\u003e![visitors](https://visitor-badge.glitch.me/badge?page_id=xieyezi.monia-cli)\u003c/code\u003e\n\u003ccode\u003e![npm-version](https://img.shields.io/npm/v/monia-cli)\u003c/code\u003e\n\n\nWhat is monia? The name of monia is inspired by the goddess of Greek mythology: [Harmonia](https://zh.wikipedia.org/wiki/%E5%93%88%E8%80%B3%E6%91%A9%E5%B0%BC%E4%BA%9E_(%E5%B8%8C%E8%87%98%E7%A5%9E%E8%A9%B1)). \n\nIt means \"love that connects everyone\". So as to achieve a state of harmonious coexistence.\n\nSo, this is one cli that supports Vue, React, and Flutter at the same time.\n\n\n\u003eNote: Before using ` monia-cli` to create a `flutter` project, please make sure you have installed the `flutter` development environment locally.\n### feature\n  💡 quickly generate project templates   \n\n  ⚡️  support `react + typescript + hooks` project\n\n  🌈  support `Vue 2.x` project      \n\n  🛠️  support `Vue 3.x` project (`vite + typescript`)        \n\n  🔩 support `flutter`+ `getx` project(`null-safety`)        \n\n  🌟 error message       \n \n  🔗 command Association    \n\n\n\n### template repo\n\n\n\u003ccode\u003e[flutter-getx-with-null-safety-template](https://github.com/xieyezi/flutter-getx-template)\u003c/code\u003e\n\n\u003ccode\u003e[flutter-without-null-safety-template](https://github.com/xieyezi/flutter-template)\u003c/code\u003e\n\n\u003ccode\u003e[vue3-vite-typescript-template](https://github.com/xieyezi/vue-vite-template)\u003c/code\u003e\n\n\u003ccode\u003e[vue2-template](https://github.com/xieyezi/vue-template)\u003c/code\u003e\n\n\u003ccode\u003e[react-vite-typescript-template](https://github.com/xieyezi/react-template)\u003c/code\u003e\n\n\n### install\n\n ```js\n  yarn global add  monia-cli  ||  npm install -g  monia-cli\n ```\n\n### Options and  Commands\n\n```\nUsage: monia \u003ccommand\u003e [options]\n\nOptions:\n  -V, --version      output the version number\n  -h, --help         output usage information\n\nCommands:\n  create \u003capp-name\u003e    Create a project with template from monia git repository.\n  init \u003cpage-name\u003e     Generate new flutter getx page from monia.\n```\n\n### Command Example\n\n- init new `vue3` project：\n\n```shell\nmonia create vue3-demo\n```\n\n```\n? Which framework do you want to create Vue\n? Which vue version do you want to create Vue3\n? Please input your project description description\n? Please input your author name author\n? Please input project version 1.0.0\n? Which package manager do you want to use Yarn\n\n\n✨  Creating project in /Users/xieyezi/Desktop/vue3-demo.\n\n🗃  Initializing git repository....\n\n📦  Installing additional dependencies...\n\nyarn install v1.22.10\n[1/4] 🔍  Resolving packages...\n[2/4] 🚚  Fetching packages...\n[3/4] 🔗  Linking dependencies...\n[4/4] 🔨  Building fresh packages...\n✨  Done in 6.84s.\n\n🎉  Successfully created project vue3-demo.\n👉  Get started with the following commands:\n\n$ cd vue3-demo\n$ yarn start\n\n\n                        _                  _ _ \n  _ __ ___   ___  _ __ (_) __ _        ___| (_)\n | '_ ` _ \\ / _ \\| '_ \\| |/ _` |_____ / __| | |\n | | | | | | (_) | | | | | (_| |_____| (__| | |\n |_| |_| |_|\\___/|_| |_|_|\\__,_|      \\___|_|_|\n                                               \n\n```\n\n- generate `flutter getx` new page：\n\n```shell\nmonia init detail\n```\n\n```\n✨  Generate page in /Users/xieyezi/Desktop/flutter_demo/lib/pages/detail.\n⠋ Generating, it's will not be wait long...\ngenerate detail lib success.\ngenerate /Users/xieyezi/Desktop/flutter_demo/lib/pages/detail/detail_view.dart success.\ngenerate /Users/xieyezi/Desktop/flutter_demo/lib/pages/detail/detail_controller.dart success.\ngenerate /Users/xieyezi/Desktop/flutter_demo/lib/pages/detail/detail_binding.dart success.\n\n🎉  Successfully generate page detail.\n```\n\u003e Note: When you want to create a new `flutter` new page, you will use the unique method of `underscore` (although you enter `big hump` or `small hump`, `monia` can also be processed correctly, but we do not recommend you to do this).\n\n\n\n### Template directory\n\n#### flutter + getx\n\n```\n.\n├── README.md\n├── android\n├── ios\n├── lib\n│   ├── common\n│   ├── components\n│   ├── config.dart\n│   ├── env.dart\n│   ├── global.dart\n│   ├── main.dart\n│   ├── pages\n│   ├── router\n│   ├── services\n│   └── utils\n├── pubspec.lock\n├── pubspec.yaml\n├── test\n├── web\n└── xsds.iml\n\n```\n#### React\n```\n.\n├── README.md\n├── apiTemplate.ts\n├── package-lock.json\n├── package.json\n├── pont-config.json\n├── public\n├── setupProxy.js\n├── src\n│   ├── App.css\n│   ├── App.test.tsx\n│   ├── App.tsx\n│   ├── assets\n│   ├── components\n│   ├── config\n│   ├── index.css\n│   ├── index.tsx\n│   ├── logo.svg\n│   ├── models\n│   ├── pages\n│   ├── react-app-env.d.ts\n│   ├── router-menu-mapping\n│   ├── routes\n│   ├── serviceWorker.ts\n│   ├── setupTests.ts\n│   ├── style\n│   └── utils\n├── tsconfig.json\n├── tsconfig.paths.json\n├── tsconfig.prod.json\n├── tslint.json\n└── yarn.lock\n```\n\n#### Vue \n\n```\n.\n├── README.md\n├── commitlint.config.js\n├── index.html\n├── package.json\n├── public\n├── src\n│   ├── App.vue\n│   ├── assets\n│   ├── components\n│   ├── config\n│   ├── directive\n│   ├── hooks\n│   ├── main.ts\n│   ├── router\n│   ├── store\n│   ├── views\n│   └── vue-shim.d.ts\n├── tsconfig.json\n├── vite.config.ts\n├── yarn-error.log\n└── yarn.lock\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxieyezi%2Fmonia-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxieyezi%2Fmonia-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxieyezi%2Fmonia-cli/lists"}