{"id":16547520,"url":"https://github.com/waiting-for-dev/landing_page","last_synced_at":"2025-10-28T16:30:20.267Z","repository":{"id":56880726,"uuid":"11743891","full_name":"waiting-for-dev/landing_page","owner":"waiting-for-dev","description":"Minimal, flexible, unobstrusive rails 4 and 3.2 engine for an email subscription form. It collects name, email and locale used. Optional integration with Campaign Monitor. Ready for I18n.","archived":false,"fork":false,"pushed_at":"2014-11-18T19:14:06.000Z","size":296,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-09-07T19:27:47.616Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://landing-page-demo.herokuapp.com/","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/waiting-for-dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"COPYING.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-07-29T16:14:46.000Z","updated_at":"2019-07-09T14:34:06.000Z","dependencies_parsed_at":"2022-08-20T13:00:13.323Z","dependency_job_id":null,"html_url":"https://github.com/waiting-for-dev/landing_page","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waiting-for-dev%2Flanding_page","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waiting-for-dev%2Flanding_page/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waiting-for-dev%2Flanding_page/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/waiting-for-dev%2Flanding_page/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/waiting-for-dev","download_url":"https://codeload.github.com/waiting-for-dev/landing_page/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219868825,"owners_count":16555607,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-11T19:14:36.812Z","updated_at":"2025-10-28T16:30:19.879Z","avatar_url":"https://github.com/waiting-for-dev.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# LandingPage\n\nRails 4 engine to add a subscription by email form to an application.\n\nThere are some other rails landing page solutions out there, so here it is a quick list of what this one offers:\n\n* For Rails 4.\n* An engine, so it is mountable into your own application.\n* Do not come with any CSS. You have to create it according to your custom design needs.\n* Collects optional name and mandatory email.\n* Automatically collects the locale used by the user.\n* Following subscription, customizable share buttons appear.\n* Stores data in your database.\n* Optional [Campaign Monitor](http://www.campaignmonitor.com/) (createsend) integration.\n* Ready for I18n.\n* HTML5 semantic mark-up\n* Very easy to override or customize to custom needs.\n\n\n## Rails 3.2 version\n\nTo use this gem for rails 3.2, use versions higher than 0.1 and lower than 1.0. You can find last rails 3.2 version in [rails_3.2 repository branch](https://github.com/laMarciana/landing_page/tree/rails_3.2).\n\n## Demo\n\n[Follow this link to see how it externally works](http://landing-page-demo.herokuapp.com/).\n\n## Installation\n\n* Add to your Gemfile: `gem 'landing_page', '~\u003e 1.0'`\n* Run `bundle install`\n* Run `rake landing_page:install:migrations`\n* Run `rake db:migrate`\n* Mount the routes in `config/routes.rb`. For example, `mount LandingPage::Engine, at: '/'`.\n\n## Configuration of Campaign Monitor\n\nYou must add your [Campaign Monitor API key](http://help.campaignmonitor.com/topic.aspx?t=206) and your [list id](http://www.campaignmonitor.com/api/getting-started/#listid). So, in `config/application.rb` you can write something like:\n\n```ruby\nLandingPage.campaign_monitor_api_key = 'your_api_key'\nLandingPage.campaign_monitor_list_id = 'your_list_id'\n```\n\nIf you want to use different credentials, for example, in  development environment, just use the same options but instead of `config/application.rb` put them in `config/environments/development.rb`.\n\n### Collecting the locale in Campaign Monitor\n\nOut of the box, you will collect name and email in Campaign Monitor. If you want to also collect the locale, just [create a custom field in Campaign Monitor](http://help.campaignmonitor.com/topic.aspx?t=154) and name it `locale`.\n\n## Overriding and customization\n\n### Models and controllers\n\nLike any other rails engine, [use decorators to extend models and controllers](http://edgeguides.rubyonrails.org/engines.html#overriding-models-and-controllers).\n\n### Views\nLike any other rails engine, [you can override views creating them in your application](http://edgeguides.rubyonrails.org/engines.html#overriding-views).\n\nThere are three views:\n\n* [`landing_page/users/new.html.slim`](app/views/landing_page/users/new.html.slim): the subscription form\n* [`landing_page/users/create.html.slim`](app/views/landing_page/users/create.html.slim): what is displayed when user submit successfully the form\n* [`landing_page/users/_share_items.html.slim`](app/views/landing_page/users/_share_items.html.slim): the share buttons showed by default. You can change them easily.\n\n### Texts\nAny text displayed is ready for localization under the namespace `landing_page`. For example, if you want to change the `Name` field label, you can put in your `config/locales/en.yml`:\n\n```yaml\nen:\n  landing_page:\n    label_name: Your name\n```\n\nYou can check all available keys in [`config/locales/en.yml`](config/locales/en.yml).\n\n### CSS\nAll HTML classes are prepended with `lp-`. You can check them in the [view files](app/views/landing_page/).\n\nAn elegant way to style them if you use a CSS preprocessor (like SASS), it is just to extend your own classes. For example:\n\n```sass\n.lp-field\n  @extend .field\n```\n\n## Release Policy\nlanding_page follows the principles of [semantic versioning](http://semver.org/).\n\n## LICENSE\nCopyright 2013 Marc Busqué - \u003cmarc@lamarciana.com\u003e\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see \u003chttp://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaiting-for-dev%2Flanding_page","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwaiting-for-dev%2Flanding_page","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwaiting-for-dev%2Flanding_page/lists"}