💡 Sparkbox's 2016 apprentice project: an aggregate of local tech events.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
bin
config
db
lib
log
public
spec/javascripts
test
vendor/assets
webfonts/494613
.env.example
.gitignore
.ruby-version
DEVELOPMENT.md
Gemfile
Gemfile.lock
Procfile
README.md
Rakefile
app.json
config.ru

README.md

Lamp Post

An aggregate of local tech events
Built with Ruby on Rails, Sass, and PostgreSQL

CircleCI Code Climate Test Coverage

Lamp Post is a project aimed at making tech events more accessible to the public. It's a consolidated listing that is simple to navigate and has a focus on content. Built on the idea that it could be easily replicated, we invite you (yes, you) to use this repository as a starting point and deploy a site for your own city. This README serves to help you get up and running with minimal fuss.

Efforts to make Lamp Post more usable by the community are underway. Setup instructions below will change as the app becomes more generic and customizable.

Ready to setup a Lamp Post for your own local dev scene? Read on.

Setup Your Own Lamp Post

We love Heroku and recommend using it to deploy your Lamp Post. To do that, follow the three steps below and you'll be up in two shakes.

  1. Fork this repository to your own GitHub account.

  2. Push this button.

Deploy

  1. Fill out a few environment variables so Heroku can build your app. The following table outlines what you'll need.
Variable Name Explanation
CITY The name of the city or area for this Lamp Post
ADMIN_EMAIL The email for the event submissions and general contact
ADMIN_USER The user name you choose to login to the administrative section of the site
ADMIN_PASSWORD The password for above
GA_KEY (optional) Google Analytics key

Login to your new Lamp Post at http://<your-app-name>.herokuapp.com/admin and start adding events. You can further customize your deployment with a custom URL and other goodies by following the steps below.

Customize It

Theming

Lamp Post can be customized with the color of your choice. We have included the default Dark theme, along with an optional Light theme. Head into app/assets/stylesheets/base/_theme.scss to edit the colors of your own Lamp Post.

Fonts

Lamp Post uses the Gotham webfont, available for purchase from typography.com. If you want to use a free font, we suggest a sans-serif system font stack. You can edit the font-family mixin:

/*
  File to edit:
  app/assets/stylesheets/base/_mixins.scss */

@mixin font-family($weight) {
  font-family: Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: $weight;
}

Setup DNS & SSL

Lamp Post is configured to force SSL (https). This can be overridden if need be (see below). To setup SSL with DNSimple:

  1. Add an alias record to your domain (we use DNSimple)
  2. Purchase an SSL certificate
  3. Add the SSL cert to Heroku

If you wish to serve your app over regular old http, you will need to change the configuration:

# File to edit:
# config/environments/production.rb

config.force_ssl = false

Application Errors and Debugging

The Heroku Toolbelt is a great tool. Use it to view the application logs.

$ heroku logs --tail --app <app-name>

Analytics

The standard Google Analytics script is inlined at the bottom of the application markup. See app/views/layouts/application.html.erb. For the script to work in production, you will need to set an environment variable with the name GA_KEY. You can use the Heroku toolbelt to do this. From your project directory:

$ heroku config:set GA_KEY=your-google-analytics-key

Contributing

Contributions to this project are welcome and appreciated. Feel free to file an issue or, if you're feeling up to it, fork this repo and open a pull request. Bug fixes and feature requests are welcome. Is our documentation lacking? Spelling errors? We're all ears.

License

© 2016 Sparkbox Apprenticeship