{"id":27442528,"url":"https://github.com/xuyanwen2012/rmmz-plugins-starter","last_synced_at":"2026-04-16T18:36:04.870Z","repository":{"id":128405058,"uuid":"289781626","full_name":"xuyanwen2012/rmmz-plugins-starter","owner":"xuyanwen2012","description":"A starter template to develop RPG Maker plugins utilizing ES6 and modules. ","archived":false,"fork":false,"pushed_at":"2020-08-27T21:36:36.000Z","size":168,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"typescript","last_synced_at":"2025-07-14T09:50:12.782Z","etag":null,"topics":["plugin-development","rollup","rpg-maker","rpg-maker-mv","typescript"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/xuyanwen2012.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,"zenodo":null}},"created_at":"2020-08-23T23:10:37.000Z","updated_at":"2025-03-10T04:15:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"a2edfe16-a790-466a-b773-2d2a3148edf8","html_url":"https://github.com/xuyanwen2012/rmmz-plugins-starter","commit_stats":null,"previous_names":[],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/xuyanwen2012/rmmz-plugins-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuyanwen2012%2Frmmz-plugins-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuyanwen2012%2Frmmz-plugins-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuyanwen2012%2Frmmz-plugins-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuyanwen2012%2Frmmz-plugins-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xuyanwen2012","download_url":"https://codeload.github.com/xuyanwen2012/rmmz-plugins-starter/tar.gz/refs/heads/typescript","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xuyanwen2012%2Frmmz-plugins-starter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279013635,"owners_count":26085298,"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","status":"online","status_checked_at":"2025-10-12T02:00:06.719Z","response_time":53,"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":["plugin-development","rollup","rpg-maker","rpg-maker-mv","typescript"],"created_at":"2025-04-15T00:29:47.384Z","updated_at":"2025-10-13T00:25:47.185Z","avatar_url":"https://github.com/xuyanwen2012.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rmmz-plugins-starter\n\n\u003e RPG Maker MV/MZ plugin development starter in TypeScript\n\n[![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)\n[![Code Style: Google](https://img.shields.io/badge/code%20style-google-blueviolet.svg)](https://github.com/google/gts)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nThis repository is a monorepo that allows easy development of for RPG Maker MV/MZ plugins.\nIt serves as a starting point for plugin developer who loves to write RM plugins in TypeScripts. \nThe monorepo is especially useful for developers who produce many plugins. \nRather than having many repositories each filled with redundant toolchains and dependencies, we can manage them as a whole in this template.\n\n- :white_check_mark: The template uses [TypeScript](https://www.typescriptlang.org/). \nCode with confidence and build safer RPG Maker Plugin!\n- :white_check_mark: The template uses [Rollup.js](https://github.com/rollup/rollup) as the module bundler, \nwhich compiles small pieces of code into a single JavaScript that ready to use. \n- :white_check_mark: The template uses [pnpm](https://github.com/pnpm/pnpm) to manage all plugins in a single repository.\n- :white_check_mark: The template follows the [Google TypeScript Style](https://google.github.io/styleguide/jsguide.html). \nTo enforce the style guide and provide automated fixes, we uses [gts](https://github.com/google/gts) from Google. \n\nSimply clone this repository to start building your plugins.\n\n## Template Structure\n\nUnder the `plugins` directory, lies each plugin\n\n```\nrmmz_plugins-starter\n│\n└───dist\n│   │   Plugin1.js      // The generated ready-to-use plugins,\n│   │   Plugin2.js      // simply copy them to your RPG Maker Plugin folder\n│   │   ...  \n│\n└───plugins\n│   │\n│   └───Plugin1\n│   │   │   _header.txt        // Plugin parameters goes here etc.\n│   │   │   package.json       // Should specify the plugin's name here, used by the pnpm.\n│   │   │   rollup.config.js   \n│   │   │   tsconfig.json      \n│   │   │\n│   │   └───src\n│   │       │   index.js       // The entry point of your plugin\n│   │       │   others.js\n│   │       │   ...\n│   │\n│   └───plugin2\n│   │   │    ...\n│   │\n│   │   ...\n```\n\nWhen making a new plugin, just copy paste the example `Plugin1` directory (excluding `node_modules`). \nGive the plugin a proper name in the `package.json`. \nRun `pnpm install` again to install some dependency.\nThen you are ready to go.\n\n## Installation and Usage\n\nWe recommend using [pnpm](https://github.com/pnpm/pnpm) since this is a monorepo.\nAlternately you can still use `npm`, which then involves extra manual work.\nOnce `pnpm` is installed, just use pnpm in place of npm/Yarn.\nE.g., install dependencies via:\n\n```\npnpm install\n```\n\nTo compile a plugin you wrote. For example `plugin1`,\nwhere _plugin1_ is the package name specified in `plugins/Plugin1/package.json`.\n\n```\npnpm build                          // build all plugins\npnpm build --filter plugin1         // build only plugin 'plugin1' \n```\n\n\u003e Note, npm package name does not allow upper case characters, \nthus all package name should be named in lower case.\n\nThen the compiled RM plugin will be at `/dist/Plugin1.js`\n\nYou can also do a style check or fix on your plugin code via:\n\n```\npnpm run check --filter plugin1     // check all plugins \npnpm run fix                        // automatically fix all source code\n```\n\n## License\n\nReleased under the [MIT](https://github.com/xuyanwen2012/rmmz-plugins-starter/blob/master/LICENSE) License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxuyanwen2012%2Frmmz-plugins-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxuyanwen2012%2Frmmz-plugins-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxuyanwen2012%2Frmmz-plugins-starter/lists"}