Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/traa/creng
Chrome extension engine, - make chrome extensions with ease
https://github.com/traa/creng
Last synced: 3 months ago
JSON representation
Chrome extension engine, - make chrome extensions with ease
- Host: GitHub
- URL: https://github.com/traa/creng
- Owner: traa
- Created: 2012-11-29T11:16:40.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2012-12-16T22:30:54.000Z (about 12 years ago)
- Last Synced: 2024-04-27T01:40:50.642Z (9 months ago)
- Language: Ruby
- Homepage:
- Size: 435 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Creng 0.4.3
=====###Ruby gem for simple chrome extension development###
The aim of project to make development of chrome extensions more simple, giving to user time-tested tools and development patterns.
It includes last versions of following frameworks/libs:
* RequireJS
* Underscore.js
* jQuery
* Cajon[Installation](https://github.com/traa/creng/wiki/Installation) | [Examples](https://github.com/traa/creng/wiki/Examples) | [Flags](https://github.com/traa/creng/wiki/Flags)
[RubyGems page](https://rubygems.org/gems/creng)
### Usage ###
Project initialization
------------
creng init
This command creates dir with name of and generates skeleton of application by creatin in it files, needed for first build of extension.
Also, it fetches last versions of libraries, needed to correct work of extension. So now, you can start your development in **dev** folder.Project build
------------
creng build
Must be executed in root folder of projectname. It builds entire project to **build** folder, executing following actions:
* Automatically managing frameworks dependencies (vendor/content folder frameworks will be added to content scripts in manifest file, vendor/background to background file (if it exists), vendor/ - to both)
* Auto-wrap code into define statements (no more same code constructions needed for work of RequireJS)
* Creng keeps an eye on "web_accessible_resources" for you (automatically manage it, so no more routine with writing all files)
* Easy background page management, just remove it and creng will build extension without it. Want to use [event](http://developer.chrome.com/extensions/event_pages.html) background page? Simply rename background_persistent.html to background.html and build it!
* Tracking of build version, auto-incrementation after every build x.x.x.buildversion
* Handling of options page, just create **options.html** in **html** folder to start working with it.
* Automatical handling of extension type. Just create **html/browser_action.html** for [browser action type](https://developer.chrome.com/extensions/browserAction.html), **html/page_action.html** for [page action type](http://developer.chrome.com/extensions/pageAction.html) or delete those files (if created) to switch for hidden type extension. Title of popup will be parsed from tag in those html files
* Override new tab, bookmarks and history pages simply by creating html files with the same name (more at [examples page](https://github.com/traa/creng/wiki/Examples))
* Cut in build version marked blocks of code ( blocks marked with `//devblock_begin` and `//devblock_end`.
* Automatically removing all console.* calls in build.* And more to come! It's just an early version of gem, so i plan to constantly increase number of features
Adding features
------------
` creng feature add webrequest `
Adding [webRequest](https://developer.chrome.com/extensions/webRequest.html) functionality in a few seconds.