# Firebug [![CircleCI](https://circleci.com/gh/rvshare/firebug.svg?style=svg)](https://circleci.com/gh/rvshare/firebug) A gem for working with CodeIgniter sessions in ruby. ## Installation Add this line to your application's Gemfile: ```ruby gem 'firebug' ``` And then execute: ```bash bundle ``` Or install it yourself as: ```bash gem install firebug ``` To use the Rails session store, create an initializer file with: ```ruby Firebug.configure do |config| config.key = 'encryption key' config.table_name = 'sessions' end ``` And then set: ```ruby Rails.application.config.session_store :code_igniter_store ``` If you are using Rails in API mode then you will need to set the middleware: ```ruby Rails.application.config.middleware.use ActionDispatch::Session::CodeIgniterStore ``` ## Usage Serialize a ruby object to PHP's serialized format and unserialize a PHP serialized string into a ruby object. ```ruby ruby_obj = { foo: 'bar' } serialized_obj = Firebug.serialize(ruby_obj) # => a:1:{s:3:"foo";s:3:"bar";} result = Firebug.unserialize(serialized_obj) # => {:foo=>"bar"} ruby_obj == result # => true ``` Encrypt and decrypt data. ```ruby key = 'password' data = 'super secret data' encrypted = Firebug.encrypt(key, data) decrypted = Firebug.decrypt(key, encrypted) data == decrypted # => true ``` ## Development After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem`file to [rubygems.org](https://rubygems.org). ## Contributing Bug reports and pull requests are welcome on GitHub at [https://github.com/afrase/firebug](https://github.com/afrase/firebug.) ## License The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).