0.0
Low commit activity in last 3 years
No release in over a year
Provides a way to define the structure, lifetime, and other properties of a cookie all in one place.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 10.5
~> 3.2.22
~> 2.14.1
~> 2.14.6
 Project Readme

CookieCutter

WARNING: CookieCutter is very early in its development cycle (pre-alpha).

CookieCutter provides a nice DSL for defining your cookies so that you can formalize your cookie definitions. This leads to DRY-er code by ensuring that concerns such as the domain and lifetime of a cookie are consistent. It also makes it easy to know what info you are putting into your cookies, which is becoming more important these days as more laws surrounding cookies get written.

Installation

Add this line to your application's Gemfile:

gem 'cookie_cutter'

And then execute:

$ bundle

Or install it yourself as:

$ gem install cookie_cutter

Usage Examples

Define your cookie

class MyCookie < CookieCutter::Base
  store_as :my
  domain :all
  is_permanent
  secure_requests_only
  http_only
  has_attribute :language
  has_attribute :country
end

Use your cookie

#writes your cookie
cookie = MyCookie.find(request)
cookie.language = "fr"

#reads your cookie
cookie = MyCookie.find(request)
puts "My language is #{cookie.language}"

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request