{"id":19751146,"url":"https://github.com/mipengine/mip-extension-optimizer","last_synced_at":"2025-04-30T10:31:18.673Z","repository":{"id":57298199,"uuid":"69582495","full_name":"mipengine/mip-extension-optimizer","owner":"mipengine","description":"MIP Extension Optimizer","archived":false,"fork":false,"pushed_at":"2018-12-14T06:35:30.000Z","size":40,"stargazers_count":3,"open_issues_count":0,"forks_count":4,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-10-28T22:42:43.802Z","etag":null,"topics":[],"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/mipengine.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}},"created_at":"2016-09-29T15:45:34.000Z","updated_at":"2018-12-14T06:35:31.000Z","dependencies_parsed_at":"2022-09-06T05:31:17.734Z","dependency_job_id":null,"html_url":"https://github.com/mipengine/mip-extension-optimizer","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mipengine%2Fmip-extension-optimizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mipengine%2Fmip-extension-optimizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mipengine%2Fmip-extension-optimizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mipengine%2Fmip-extension-optimizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mipengine","download_url":"https://codeload.github.com/mipengine/mip-extension-optimizer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224208295,"owners_count":17273674,"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":[],"created_at":"2024-11-12T02:42:37.878Z","updated_at":"2024-11-12T02:42:38.402Z","avatar_url":"https://github.com/mipengine.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"mip-extension-optimizer\n===========\n\n\nMIP Extension Optimizer\n\n\u003ca href=\"https://circleci.com/gh/mipengine/mip-extension-optimizer/tree/master\"\u003e\u003cimg src=\"https://img.shields.io/circleci/project/mipengine/mip-extension-optimizer/master.svg?style=flat-square\" alt=\"Build Status\"\u003e\u003c/a\u003e\n\n## CLI\n\n### install\n\nInstall with `npm i -g`\n\n```\n$ npm i -g mip-extension-optimizer\n```\n\n### use\n\nCall `mip-extension-optimise` command to optimise MIP extensions.\n\n#### format\n\n```\nmip-extension-optimise \u003cextensions-path\u003e [-o output-path] [extension, extension ...]\n```\n\n#### example\n\n```\n$ mip-extension-optimise mip-extensions/src -o mip-extensions-dist\n$ mip-extension-optimise mip-extensions/src -o mip-extensions-dist mip-fixed\n```\n\n## API\n\nThis package provides some APIs for MIP extension infomation.\n\n\n### import\n\n```\n$ npm i mip-extension-optimizer --save\n```\n\n\n### load all extensions from directory\n\n```js\nvar extOptimizer = require('mip-extension-optimizer');\n\nextOptimizer.load('/your/extensions/root/directory').then(\n    function (extensions) {\n        extensions.forEach(function (extension) {\n            // extension.info has some data from package.json and README.md, such as:\n            // ================\n            // extension.info.name (parse from package.json)\n            // extension.info.version (parse from package.json)\n            // extension.info.props (parse from README.md)\n            // extension.info.examples (parse from README.md)\n            // extension.info.deps (parse from README.md)\n        });\n    }\n);\n```\n\n### load single extension\n\n```js\nvar extOptimizer = require('mip-extension-optimizer');\nvar extension = new extOptimizer.Extension('/your/extension/directory');\n\n// extension.info has some data from package.json and README.md, such as:\n// ================\n// extension.info.name (parse from package.json)\n// extension.info.version (parse from package.json)\n// extension.info.props (parse from README.md)\n// extension.info.examples (parse from README.md)\n// extension.info.deps (parse from README.md)\n```\n\n### use build result in program\n\n```js\nvar extOptimizer = require('mip-extension-optimizer');\nvar extension = new extOptimizer.Extension('/your/extension/directory');\nvar builder = extension.createBuilder();\n\nbuilder.process().then(function () {\n    // get all files of extension, and traverse\n    var files = getFiles();\n    files.forEach(function (file) {\n        // ...\n    });\n\n    // get file by path (relative)\n    var file = builder.getFile('extension-name/main.js');\n\n    // get file content\n    file.getData();\n});\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmipengine%2Fmip-extension-optimizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmipengine%2Fmip-extension-optimizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmipengine%2Fmip-extension-optimizer/lists"}