GithubHelp home page GithubHelp logo

creng's Introduction

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 | Examples | Flags

RubyGems page

Usage

Project initialization

creng init <projectname>

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 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, html/page_action.html for page action type or delete those files (if created) to switch for hidden type extension. Title of popup will be parsed from <title> 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)

  • 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 functionality in a few seconds.

creng's People

Contributors

traa avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.