{"id":18410249,"url":"https://github.com/racklin/xulapp-starterkit","last_synced_at":"2025-04-07T09:34:33.585Z","repository":{"id":6289694,"uuid":"7524049","full_name":"racklin/xulapp-starterkit","owner":"racklin","description":"XULApp StarterKit is a generic framework for XULRunner applications, like [Rich Client Platform](http://en.wikipedia.org/wiki/Rich_client_platform) .","archived":false,"fork":false,"pushed_at":"2016-12-28T10:12:09.000Z","size":1231,"stargazers_count":68,"open_issues_count":2,"forks_count":18,"subscribers_count":14,"default_branch":"master","last_synced_at":"2024-04-09T15:28:36.596Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/racklin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2013-01-09T16:00:40.000Z","updated_at":"2023-09-08T16:37:04.000Z","dependencies_parsed_at":"2022-09-12T23:42:04.248Z","dependency_job_id":null,"html_url":"https://github.com/racklin/xulapp-starterkit","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/racklin%2Fxulapp-starterkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/racklin%2Fxulapp-starterkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/racklin%2Fxulapp-starterkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/racklin%2Fxulapp-starterkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/racklin","download_url":"https://codeload.github.com/racklin/xulapp-starterkit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223277567,"owners_count":17118593,"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-06T03:30:10.607Z","updated_at":"2024-11-06T03:30:11.498Z","avatar_url":"https://github.com/racklin.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"XULApp StarterKit\n-----------------------------\nXULApp StarterKit is a generic framework for XULRunner applications, like [Rich Client Platform](http://en.wikipedia.org/wiki/Rich_client_platform) .\n\nIt provides the \"plumbing\" that, before, every developer had to write themselves—saving state, connecting actions to menu items, toolbar items and keyboard shortcuts;\n window management, add-ons mechanism, update mechanism and so on.\n\nXULApp StarterKit provides a reliable and flexible application architecture.\nAn architecture that encourages sustainable development practices. Because the XULApp StarterKit architecture is modular, it's easy to create applications that are ro\nbust and extensible.\n\n\nIncluded in the distribution package:\n\n* A minimal XUL application with a main skeleton window and an about dialog\n* Auto-load Modules by Preferences System.\n* Integrated [GREUtils](https://github.com/racklin/greutils) .\n* Integrated [lodash](https://github.com/bestiejs/lodash) .\n* A bundled [HTTP server](https://developer.mozilla.org/en-US/docs/Httpd.js/HTTP_server_for_unit_tests) For HTML5 application or IPC.\n* XULRunner 18 (Gecko 18)\n\n\nXULApp StarterKit Build Scripts\n-----------------------------\nXULApp StarterKit include a collection of build scripts for packaging a XULRunner Application into distributable\nbundles for Mac, Windows, and Linux.\n\nBuild Scripts is based on [Zotero Standalone build utility](https://github.com/zotero/zotero-standalone-build).\n\n\nBenefits\n-----------------------------\n\n* Main skeleton window contains configurable Menubar , Toolbar , StatusBar.\n* Latest HTML5 support (Same as Firefox 18, and easy to use new Gecko versions as they are released)\n* Plugin support (Firefox plug-ins and extensions may be bundled with the application)\n* [Application Updates](https://developer.mozilla.org/en-US/docs/XULRunner/Application_Update)\n* Not only acting as a native desktop application, it **is** a native desktop application\n* Working on the most widely used desktop operating systems, as well as 32- and 64-bit Linux (Wherever Firefox 18 runs, this runs)\n* Installable from USB Stick / CD, Offline\n* Offline usage\n* Proven and well tested (indirectly through projects like Firefox)\n* Not dependent on third party services for packaging and/or distribution\n* I18n / L10n\n* Auto-load Modules from XPCOM Service. All Modules will load once when startup.\n* Registrable modules from preferences system, you can install modules by add-ons.\n\n\nDownload Pre-build Binary\n-----------------------------\nDownload Pre-build XULApp Starterkit.\n\n* [Download From Github Release](https://github.com/racklin/xulapp-starterkit/releases)\n\n\nBuild XULApp StarterKit (Optional)\n-----------------------------\nBuild your own branding XULApp StarterKit\n\n1. Fork this project and checkout.\n2. Change BUILD_MAC / BUILD_LINUX / BUILD_WIN32 variables in config.sh to setting operating systems you want to build.\n3. Change Profile variable in config.sh to specifies the path to use for the application's profile. [XUL Application Packaging](https://developer.mozilla.org/en-US/docs/XUL_Application_Packaging)\n4. Customize branding and metadata to your liking.\n5. run fetch_xulrunner.sh to downloading xulrunner runtime from ftp.mozilla.org.[ONLY ONCE]\n6. run build.sh\n\n\nMake your own application in XULApp StarterKit Project\n-----------------------------\napp/ directory contains standard XULRunner application structure.\n1. Put your application files in app/ directory and modify app/chrome/content/xulapp/xulapp.xul main window.\n2. Build XULApp StarterKit.\n\n\nMake your own application as First Add-on (Recommended)\n-----------------------------\nDownload pre-built XULApp StarterKit (or your own build) and make your application as add-on and install to XULApp StarterKit.\nThis will make your application more flexible.\n\n\nHow to install Add-ons\n-----------------------------\nLaunch XULApp StarterKit and install add-on with 'Tools'-\u003e'Add-ons Manager'.\n\nDetail: [How to install Add-ons](https://github.com/racklin/xulapp-starterkit/wiki/How-to-install-Add-ons) wiki.\n\n\nHTML5, CSS3 and JavaScript\n-----------------------------\nDon't need to learn XUL or XULRunner. XULApp StarterKit help you for creating beautiful desktop apps using your web development skills.\n####  How-to\n1. Download pre-built XULApp StarterKit\n2. Download sample application for XULApp StarterKit\n3. Launch XULApp StarterKit and install add-on with 'Add-ons Manager'.\n\n#### Sample Application Add-ons For XULApp StarterKit:\n* [HTML5 Webapp Wrapper](https://github.com/racklin/xulapp-starterkit-app-webapp-wrapper).\n    * Wrap and Packaging your HTML5 Web Application to XPI add-on.\n    * PhoneGap Like.\n* [TodoMVC](https://github.com/racklin/xulapp-starterkit-app-todomvc).\n    * Trying Backbone, Ember, AngularJS, Spine... the list of new and stable solutions on XULApp StarterKit.\n    * Helping you select an MV* framework.\n* [XUL Periodic Table](https://github.com/racklin/xulapp-starterkit-app-xul-periodic-table).\n    * XUL Tutorial\n* [Hello-Demo](https://github.com/racklin/xulapp-starterkit-app-hello-demo)\n    * This demos show you how add-on can help you make your application more flexiable and more concise and updatable.\n\n\nUseful Add-ons For XULApp StarterKit\n-----------------------------\n* [NodeJS v0.8.17 Runtime For XULApp StarterKit](https://github.com/racklin/xulapp-starterkit-addon-nodejs).\n  * Running NodeJS Tools or Applications in XULRunner , here it is.\n* [SQLite Manager 0.7.7 For XULApp StarterKit](https://github.com/racklin/xulapp-starterkit-addon-sqlitemanager).\n* [DOM Inspector 2.0.12 For XULApp StarterKit](https://github.com/racklin/xulapp-starterkit-addon-dominspector).\n\n\nAuto-Load Modules\n-----------------------------\nRegister Your Modules in prefs.js , XULApp StarterKit Will auto-load when startup.\nAll Modules 's variables will in *XULApp* scope.\n\n\n#### Register Notication Modules Example\nIn prefs.js Add:\n\n```\npref(\"xulapp.modules.notification\", \"chrome://xulapp/content/modules/notification.js\");\n```\n\nNow, You can using Notication Service from any pages.\n\n```\nvar Notification = XULApp.Notification;\nNotification.showNotication('Title', 'Text');\n```\n\n\nTips\n-----------------------------\n### Generating icons\nUse [http://iconverticons.com/](http://iconverticons.com/) to generate app icons for all platforms. Put your source image in icons/default/source folder and the gener\nated images in the icons/default folder.\n\n\n\nLicense\n-----------------------------\nXULApp StarterKit are licensed under the [MPL License](http://mozilla.org/mpl/2.0/).\nSee LICENSE for more details.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fracklin%2Fxulapp-starterkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fracklin%2Fxulapp-starterkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fracklin%2Fxulapp-starterkit/lists"}