{"id":23244892,"url":"https://github.com/irrelon/irrelon-appcore","last_synced_at":"2025-04-06T00:17:10.254Z","repository":{"id":57295785,"uuid":"80510036","full_name":"Irrelon/irrelon-appcore","owner":"Irrelon","description":"A very lightweight application dependency manager for maintaining clean modularised code.","archived":false,"fork":false,"pushed_at":"2017-07-19T21:05:00.000Z","size":90,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-12T08:51:26.612Z","etag":null,"topics":["front-end","front-end-app","front-end-framework","javascript-library"],"latest_commit_sha":null,"homepage":null,"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/Irrelon.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}},"created_at":"2017-01-31T10:17:33.000Z","updated_at":"2017-02-16T13:48:40.000Z","dependencies_parsed_at":"2022-08-30T18:22:01.364Z","dependency_job_id":null,"html_url":"https://github.com/Irrelon/irrelon-appcore","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Irrelon%2Firrelon-appcore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Irrelon%2Firrelon-appcore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Irrelon%2Firrelon-appcore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Irrelon%2Firrelon-appcore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Irrelon","download_url":"https://codeload.github.com/Irrelon/irrelon-appcore/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247415969,"owners_count":20935387,"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":["front-end","front-end-app","front-end-framework","javascript-library"],"created_at":"2024-12-19T07:11:32.963Z","updated_at":"2025-04-06T00:17:10.232Z","avatar_url":"https://github.com/Irrelon.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Irrelon Appcore\nA very lightweight application dependency manager for maintaining clean modularised code.\n\n# Usage\n## Include in HEAD\n```html\n\u003cscript type=\"text/javascript\" src=\"./index.js\"\u003e\u003c/script\u003e\n```\n\nOnce included, AppCore exposes itself via window.appCore.\n\n## Define Modules\n```js\nappCore.module('myFirst', function () {\n  var MyFirstModule = function () {};\n  \n  MyFirstModule.prototype.hello = function () {\n    console.log('Hello!');\n  };\n  \n  return MyFirstModule;\n});\n```\n\nWhen defining modules, you can include the other modules as dependencies by adding them to the function arguments e.g.:\n\n```js\nappCore.module('mySecondModule', function (MyFirstModule) {\n  var firstModule = new MyFirstModule();\n  firstModule.hello(); // Logs \"Hello!\"\n});\n```\n\n## Module Return Values\nModules can return anything. In the example above we have returned an object prototype that then gets instantiated in MySecondModule but it could have been any value.\n\n## Singletons\nModule functions are only executed ONCE, after all the module's dependencies are resolved. This means you can return an instantiated object if you wish, and further dependecies will use the originally instantiated object rather than creating a new one each time the dependency is requested. Internally we simply store the return value from the module's function and hand that value to any request for the module in the future.\n\n# License\nMIT license. Fully free open-source, no copy-left, no nonsense. Use it how you like. Power to the people.\n\n# Questions, Bugs, Comments, Requests?\nPlease use the github issue tracker for any communications. Do not email me. If you ask something publically then everyone can get the benefit of the response.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firrelon%2Firrelon-appcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Firrelon%2Firrelon-appcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firrelon%2Firrelon-appcore/lists"}