Policygen
Policygen helps you setup and publish Privacy Policies and Terms of Service policies to your site with ease. Simply set your config in the initializer and we'll do the hard work for you.
Installation
Add this line to your application's Gemfile:
gem 'policygen'
And then execute:
$ bundle
Or install it yourself as:
$ gem install policygen
Run the installer
To setup the policygen config file in your rails project run
rails generate policygen:install
If using Tailwind as your css framework
Add the following to app/config/tailwind.config.js
module.exports = {
content: [
'./public/*.html',
...,
getPolicygenViewPath()
]
}
function getPolicygenViewPath() {
const { execSync } = require("child_process");
const path = execSync("bundle show policygen").toString().trim();
return `${path}/**/*.{erb,html,rb}`;
}
Usage
Policygen mounts two view helpers to render your policies into any view you want to setup. The contents are driven by the config defined in policygen.rb
Once you've answered all the config questions you're ready to render your privacy and terms page.
Privacy Policy
<div class="whatever-your-container-is">
<%= privacy_policy %>
</div>
Terms Policy
<div class="whatever-your-container-is">
<%= terms_of_service %>
</div>
Styling your policies
Custom CSS
/* The outmost container class */
.policygen-container {
}
/* The h1 header class */
.policygen-h1 {
}
/* The h2 header class */
.policygen-h2 {
}
/* The h3 header class */
.policygen-h3 {
}
/* The section class, break/margin between each section of the policy */
.policygen-section {
}
/* Body text, the paragraph text within each section */
.policygen-body-text {
}
/* Unordered lists */
.policygen-ul {
}
/* Ordered list */
.policygen-ol {
}
/* Bold paragraph class */
.policygen-bold {
}
/* Link class, remember to have a hover on this class */
.policygen-link {
}
Tailwindcss
You can change the colors used
config.tailwind_config = {
heading_color: "text-gray-900",
body_color: "text-gray-800",
link_color: "text-blue-500 hover:text-blue-700"
}
Development
Building the gem
gem build
gem push twinkle-x.x.x.gem
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/imothee/policygen. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.
License
The gem is available as open source under the terms of the MIT License.
Code of Conduct
Everyone interacting in the Policygen project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.