docs/docs/v0.6.x/lightning-strategy-examples.md
---
title: Lightning Strategy Examples
---
## End-to-end Example
[`Ember Deploy Demo`](https://github.com/ghedamat/ember-deploy-demo) demonstrates a complete Ember CLI Deploy setup.
It uses:
* [`ember-cli-deploy-lightning-pack`](https://github.com/ember-cli-deploy/ember-cli-deploy-lightning-pack) plugin pack as base
* [`ember-cli-deploy-ssh-tunnel`](https://github.com/ember-cli-deploy/ember-cli-deploy-ssh-tunnel) to connect to the Redis instance on the server
* The [development workflow](../development-workflow)
* A [Ruby on Rails backend](https://github.com/ghedamat/ember-deploy-demo/tree/master/edd-rails) that serves the app ([fetching from Redis example](https://github.com/ghedamat/ember-deploy-demo/blob/master/edd-rails/app/controllers/demo_controller.rb))
You can take inspiration from these files:
* [`config/deploy.js`](https://github.com/ghedamat/ember-deploy-demo/blob/master/edd-cli/config/deploy.js)
* [`ember-cli-build.js`](https://github.com/ghedamat/ember-deploy-demo/blob/master/edd-cli/ember-cli-build.js)
* [`.env.deploy.production`](https://github.com/ghedamat/ember-deploy-demo/blob/master/edd-cli/.env.deploy.production.example)
* [`package.json`](https://github.com/ghedamat/ember-deploy-demo/blob/master/edd-cli/package.json#L33-L34)
## Example Sinatra app
This is a small Sinatra application, that can be used to serve an Ember CLI application deployed with [`ember-cli-deploy-lightning-pack`](https://github.com/ember-cli-deploy/ember-cli-deploy-lightning-pack).
```ruby
require 'sinatra'
require 'redis'
get '/' do
content_type 'text/html'
redis = Redis.new
project = '<your-project-name>'
index_key = params[:index_key] || redis.get("#{project}:index:current")
redis.get("#{project}:index:#{index_key}")
end
```
The nice thing about this is that you can deploy your application to production, test it out by passing an `index_key` parameter with the revision you want to test and activate when you feel confident that everything is working as expected.
### [`ember-cli-deploy-rack`](https://github.com/bitaculous/ember-cli-deploy-rack)
Alternatively, you can use [`ember-cli-deploy-rack`](https://github.com/bitaculous/ember-cli-deploy-rack), which bundles the described functionality in the Sinatra application as a gem.
## Example Node apps
### Using [Koa](http://koajs.com)
This app does the same as the *Sinatra app* above, it supports the same index_key query param. It should help you to get up and running in seconds and dont worry about server code. This needs your Ember-CLI app to be deployed with [`ember-cli-deploy-lightning-pack`](https://github.com/ember-cli-deploy/ember-cli-deploy-lightning-pack).
[Nodejs example with one click Heroku deploy!](https://github.com/philipheinser/ember-lightning)
### Using ExpressJS
This app is very similar to the *Sinatra app* above but also implements a very simple `/revisions` endpoint where you can see all current revisions available to use. It is implemented using [Express](http://expressjs.com/) so should be very easy to follow. This needs your Ember-CLI app to be deployed with [`ember-cli-deploy-lightning-pack`](https://github.com/ember-cli-deploy/ember-cli-deploy-lightning-pack).
[Simple NodeJS example](https://github.com/stonecircle/express-lightning-deploy)
## Azure Tables Server apps
- C#-based, https://gist.github.com/duizendnegen/85b5c4a7b7eef28f0756
- Node.js-based, [node-ember-cli-deploy-azure-tables](https://github.com/jamesdixon/node-ember-cli-deploy-azure-tables) courtesy of [jamesdixon](https://github.com/jamesdixon)
## Example Flask app
This app does the same as the *Sinatra app* above, it supports the same index_key query param. It should help you to get up and running in seconds and dont worry about server code. This needs your Ember-CLI app to be deployed with [`ember-cli-deploy-lightning-pack`](https://github.com/ember-cli-deploy/ember-cli-deploy-lightning-pack). It is heavily influenced by the `ember-lightning` NodeJS server, above; but written in Flask for our python-heavy development team.
[Flask example with one click Heroku deploy!](https://github.com/dellintosh/flask-lightning)