sinatra-rider 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +6 -7
- data/bin/rider +3 -0
- data/example/myapp/Gemfile +1 -0
- data/example/myapp/Gemfile.lock +101 -0
- data/example/myapp/README.md +17 -0
- data/example/myapp/Rakefile +1 -0
- data/example/myapp/config/database.yml +15 -0
- data/example/myapp/db/migrate/1_create_users.rb +11 -0
- data/example/myapp/db/schema.rb +29 -0
- data/example/myapp/db/seeds.rb +3 -0
- data/exe/rider +6 -0
- data/lib/sinatra/rider.rb +2 -0
- data/lib/sinatra/rider/assets.rb +1 -0
- data/lib/sinatra/rider/authentication.rb +25 -2
- data/lib/sinatra/rider/command.rb +64 -0
- data/lib/sinatra/rider/templates/css.tt +2 -0
- data/lib/sinatra/rider/templates/database.erb +15 -0
- data/lib/sinatra/rider/templates/gemfile.tt +6 -0
- data/lib/sinatra/rider/templates/index.erb +1 -0
- data/lib/sinatra/rider/templates/layout.erb +21 -0
- data/lib/sinatra/rider/templates/navigation.erb +15 -0
- data/lib/sinatra/rider/templates/procfile.tt +1 -0
- data/lib/sinatra/rider/templates/rackup.tt +3 -0
- data/lib/sinatra/rider/templates/rakefile.tt +1 -0
- data/lib/sinatra/rider/templates/server.tt +10 -0
- data/lib/sinatra/rider/templates/user.tt +2 -0
- data/lib/sinatra/rider/templates/users_migration.erb +11 -0
- data/lib/sinatra/rider/user.rb +32 -0
- data/lib/sinatra/rider/version.rb +1 -1
- data/lib/sinatra/views/signup.erb +18 -0
- data/sinatra-rider.gemspec +8 -7
- metadata +71 -33
- data/example/.DS_Store +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 71ac1c92659a2efce49e30a2e356e742f823f106
|
4
|
+
data.tar.gz: 6201ac038f483842bdb219fa3f5b6c225fb2113a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 711abc6e27b71d718ce66513153f161e3a7fbcd854859ccb608099f255b33d72d1db59804f8acf3a073151a5dba2347b68915e7f165356db6658e81cf5250f53
|
7
|
+
data.tar.gz: bfe79f4d9bd1262590a7e58d2d09d7a47c964a2e249db71852343cbc4fbef7e8e3ee1d2dcd45dddc4e9b828cb9ae366e313846b4fb1c56b19b33a8d343867e22
|
data/README.md
CHANGED
@@ -10,7 +10,7 @@ All the nice extras Sinatra likes to have when he's on the road.
|
|
10
10
|
- Dotenv
|
11
11
|
- Better Errors
|
12
12
|
- Autoloading `app` and `lib` directories
|
13
|
-
-
|
13
|
+
- ~~One dozen blue M&Ms~~
|
14
14
|
|
15
15
|
## Installation
|
16
16
|
|
@@ -22,13 +22,12 @@ gem 'sinatra-rider'
|
|
22
22
|
|
23
23
|
Then require it at the top of your server file and register the rider in Sinatra.
|
24
24
|
|
25
|
-
```
|
25
|
+
```ruby
|
26
26
|
require 'sinatra/rider'
|
27
27
|
class Server < Sinatra::Base
|
28
28
|
register Sinatra::Rider
|
29
29
|
|
30
30
|
get '/' do
|
31
|
-
authorize!
|
32
31
|
erb :index
|
33
32
|
end
|
34
33
|
end
|
@@ -36,8 +35,6 @@ end
|
|
36
35
|
run Server
|
37
36
|
```
|
38
37
|
|
39
|
-
That's it!
|
40
|
-
|
41
38
|
## Usage
|
42
39
|
|
43
40
|
`Sinatra::Rider` provides a quite a few small conveniences.
|
@@ -54,7 +51,7 @@ Warden is used for authentication. `Sinatra::Rider` sets up Sinatra with `/login
|
|
54
51
|
|
55
52
|
You can require authentication for an endpoint by including `authorize!` in sinatra's endpoint block
|
56
53
|
|
57
|
-
```
|
54
|
+
```ruby
|
58
55
|
get '/' do
|
59
56
|
authorize!
|
60
57
|
erb :index
|
@@ -67,11 +64,13 @@ end
|
|
67
64
|
|
68
65
|
Sass is handled by Sprockets. `Sinatra::Rider` looks for any assets in `assets/stylesheets` and `assets/javascripts` and compiles them as requested.
|
69
66
|
|
70
|
-
```
|
67
|
+
```scss
|
71
68
|
# assets/stylesheets/application.scss
|
72
69
|
//= require_tree ./vendor
|
73
70
|
//= require base
|
71
|
+
```
|
74
72
|
|
73
|
+
```html
|
75
74
|
# views/layout.erb
|
76
75
|
<!DOCTYPE html>
|
77
76
|
<html>
|
data/bin/rider
ADDED
data/example/myapp/Gemfile
CHANGED
@@ -0,0 +1,101 @@
|
|
1
|
+
GEM
|
2
|
+
remote: https://rubygems.org/
|
3
|
+
specs:
|
4
|
+
activemodel (4.2.5)
|
5
|
+
activesupport (= 4.2.5)
|
6
|
+
builder (~> 3.1)
|
7
|
+
activerecord (4.2.5)
|
8
|
+
activemodel (= 4.2.5)
|
9
|
+
activesupport (= 4.2.5)
|
10
|
+
arel (~> 6.0)
|
11
|
+
activesupport (4.2.5)
|
12
|
+
i18n (~> 0.7)
|
13
|
+
json (~> 1.7, >= 1.7.7)
|
14
|
+
minitest (~> 5.1)
|
15
|
+
thread_safe (~> 0.3, >= 0.3.4)
|
16
|
+
tzinfo (~> 1.1)
|
17
|
+
arel (6.0.4)
|
18
|
+
backports (3.6.8)
|
19
|
+
better_errors (2.1.1)
|
20
|
+
coderay (>= 1.0.0)
|
21
|
+
erubis (>= 2.6.6)
|
22
|
+
rack (>= 0.9.0)
|
23
|
+
binding_of_caller (0.7.2)
|
24
|
+
debug_inspector (>= 0.0.1)
|
25
|
+
builder (3.2.3)
|
26
|
+
coderay (1.1.1)
|
27
|
+
concurrent-ruby (1.0.4)
|
28
|
+
daemons (1.2.4)
|
29
|
+
debug_inspector (0.0.2)
|
30
|
+
dotenv (2.2.0)
|
31
|
+
erubis (2.7.0)
|
32
|
+
eventmachine (1.2.2)
|
33
|
+
execjs (2.7.0)
|
34
|
+
i18n (0.8.0)
|
35
|
+
json (1.8.6)
|
36
|
+
minitest (5.10.1)
|
37
|
+
multi_json (1.12.1)
|
38
|
+
pg (0.19.0)
|
39
|
+
rack (1.6.5)
|
40
|
+
rack-protection (1.5.3)
|
41
|
+
rack
|
42
|
+
rack-test (0.6.3)
|
43
|
+
rack (>= 1.0)
|
44
|
+
rake (12.0.0)
|
45
|
+
sass (3.4.23)
|
46
|
+
sinatra (1.4.8)
|
47
|
+
rack (~> 1.5)
|
48
|
+
rack-protection (~> 1.4)
|
49
|
+
tilt (>= 1.3, < 3)
|
50
|
+
sinatra-activerecord (2.0.12)
|
51
|
+
activerecord (>= 3.2)
|
52
|
+
sinatra (>= 1.0)
|
53
|
+
sinatra-contrib (1.4.7)
|
54
|
+
backports (>= 2.0)
|
55
|
+
multi_json
|
56
|
+
rack-protection
|
57
|
+
rack-test
|
58
|
+
sinatra (~> 1.4.0)
|
59
|
+
tilt (>= 1.3, < 3)
|
60
|
+
sinatra-rider (0.1.0)
|
61
|
+
activerecord (= 4.2.5)
|
62
|
+
better_errors
|
63
|
+
binding_of_caller
|
64
|
+
dotenv
|
65
|
+
pg
|
66
|
+
sass
|
67
|
+
sinatra
|
68
|
+
sinatra-activerecord
|
69
|
+
sinatra-contrib
|
70
|
+
sinatra_warden
|
71
|
+
sprockets
|
72
|
+
thin
|
73
|
+
uglifier
|
74
|
+
sinatra_warden (1.0.0)
|
75
|
+
sinatra (~> 1.4.6)
|
76
|
+
warden (~> 1.2.3)
|
77
|
+
sprockets (3.7.1)
|
78
|
+
concurrent-ruby (~> 1.0)
|
79
|
+
rack (> 1, < 3)
|
80
|
+
thin (1.7.0)
|
81
|
+
daemons (~> 1.0, >= 1.0.9)
|
82
|
+
eventmachine (~> 1.0, >= 1.0.4)
|
83
|
+
rack (>= 1, < 3)
|
84
|
+
thread_safe (0.3.5)
|
85
|
+
tilt (2.0.6)
|
86
|
+
tzinfo (1.2.2)
|
87
|
+
thread_safe (~> 0.1)
|
88
|
+
uglifier (3.0.4)
|
89
|
+
execjs (>= 0.3.0, < 3)
|
90
|
+
warden (1.2.7)
|
91
|
+
rack (>= 1.0)
|
92
|
+
|
93
|
+
PLATFORMS
|
94
|
+
ruby
|
95
|
+
|
96
|
+
DEPENDENCIES
|
97
|
+
rake
|
98
|
+
sinatra-rider
|
99
|
+
|
100
|
+
BUNDLED WITH
|
101
|
+
1.13.7
|
@@ -0,0 +1,17 @@
|
|
1
|
+
To get up and running:
|
2
|
+
|
3
|
+
```
|
4
|
+
bundle exec rake db:create db:migrate db:seed
|
5
|
+
bundle exec rackup config.ru
|
6
|
+
```
|
7
|
+
|
8
|
+
Then visit http://localhost:9292
|
9
|
+
|
10
|
+
You should see a login form. You can log in with:
|
11
|
+
|
12
|
+
```
|
13
|
+
username: admin
|
14
|
+
password: hunter1
|
15
|
+
```
|
16
|
+
|
17
|
+
Have fun!
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'sinatra/rider/rake'
|
@@ -0,0 +1,29 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
# This file is auto-generated from the current state of the database. Instead
|
3
|
+
# of editing this file, please use the migrations feature of Active Record to
|
4
|
+
# incrementally modify your database, and then regenerate this schema definition.
|
5
|
+
#
|
6
|
+
# Note that this schema.rb definition is the authoritative source for your
|
7
|
+
# database schema. If you need to create the application database on another
|
8
|
+
# system, you should be using db:schema:load, not running all the migrations
|
9
|
+
# from scratch. The latter is a flawed and unsustainable approach (the more migrations
|
10
|
+
# you'll amass, the slower it'll run and the greater likelihood for issues).
|
11
|
+
#
|
12
|
+
# It's strongly recommended that you check this file into your version control system.
|
13
|
+
|
14
|
+
ActiveRecord::Schema.define(version: 1) do
|
15
|
+
|
16
|
+
# These are extensions that must be enabled in order to support this database
|
17
|
+
enable_extension "plpgsql"
|
18
|
+
|
19
|
+
create_table "users", force: :cascade do |t|
|
20
|
+
t.string "name"
|
21
|
+
t.string "username", null: false
|
22
|
+
t.string "encrypted_password", null: false
|
23
|
+
t.datetime "created_at", null: false
|
24
|
+
t.datetime "updated_at", null: false
|
25
|
+
end
|
26
|
+
|
27
|
+
add_index "users", ["username"], name: "index_users_on_username", using: :btree
|
28
|
+
|
29
|
+
end
|
data/exe/rider
ADDED
data/lib/sinatra/rider.rb
CHANGED
data/lib/sinatra/rider/assets.rb
CHANGED
@@ -3,7 +3,10 @@ require 'warden'
|
|
3
3
|
require 'sinatra_warden'
|
4
4
|
|
5
5
|
Warden::Manager.serialize_into_session{|user| user.id }
|
6
|
-
Warden::Manager.serialize_from_session
|
6
|
+
Warden::Manager.serialize_from_session do |id|
|
7
|
+
auth_class = defined?(User) ? User : Sinatra::Rider::User
|
8
|
+
auth_class.find(id)
|
9
|
+
end
|
7
10
|
|
8
11
|
Warden::Strategies.add(:password) do
|
9
12
|
def valid?
|
@@ -11,16 +14,24 @@ Warden::Strategies.add(:password) do
|
|
11
14
|
end
|
12
15
|
|
13
16
|
def authenticate!
|
14
|
-
|
17
|
+
auth_class = defined?(User) ? User : Sinatra::Rider::User
|
18
|
+
auth = auth_class.authenticate(params["username"], params["password"])
|
15
19
|
auth.nil? ? fail!("Could not log in") : success!(auth)
|
16
20
|
end
|
17
21
|
end
|
18
22
|
|
19
23
|
module Sinatra
|
20
24
|
module Rider
|
25
|
+
module AuthHelpers
|
26
|
+
def signed_in?
|
27
|
+
!current_user.nil?
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
21
31
|
module Authentication
|
22
32
|
def self.registered(app)
|
23
33
|
app.register Sinatra::Warden
|
34
|
+
app.helpers Sinatra::Rider::AuthHelpers
|
24
35
|
app.use Rack::Session::Cookie, secret: ENV['SESSION_SECRET'] || "I'm not a businessman. I'm a business, man."
|
25
36
|
app.use ::Warden::Manager do |manager|
|
26
37
|
manager.default_strategies :password
|
@@ -31,6 +42,18 @@ module Sinatra
|
|
31
42
|
app.set :auth_success_path, '/'
|
32
43
|
app.set :auth_failure_path, '/login'
|
33
44
|
|
45
|
+
app.get '/signup' do
|
46
|
+
erb :signup
|
47
|
+
end
|
48
|
+
|
49
|
+
app.post '/signup' do
|
50
|
+
auth_class = defined?(User) ? User : Sinatra::Rider::User
|
51
|
+
auth_class.signup(params)
|
52
|
+
|
53
|
+
env['warden'].authenticate!
|
54
|
+
redirect '/'
|
55
|
+
end
|
56
|
+
|
34
57
|
app.get '/login' do
|
35
58
|
erb :login
|
36
59
|
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require 'thor'
|
2
|
+
|
3
|
+
module Sinatra
|
4
|
+
module Rider
|
5
|
+
class Generator < Thor::Group
|
6
|
+
include Thor::Actions
|
7
|
+
|
8
|
+
argument :path
|
9
|
+
def new
|
10
|
+
# generate application
|
11
|
+
end
|
12
|
+
|
13
|
+
def prepare_dokku
|
14
|
+
create_file("#{path}/CHECKS") { "/ #{path.capitalize}\n" }
|
15
|
+
create_file("#{path}/DOKKU_SCALE") { "web=1\n" }
|
16
|
+
end
|
17
|
+
|
18
|
+
def prepare_ruby_version
|
19
|
+
create_file("#{path}/.ruby-version") { "2.1.9\n" }
|
20
|
+
end
|
21
|
+
|
22
|
+
def prepare_dotenv
|
23
|
+
create_file("#{path}/.env") { "SESSION_SECRET=super secret shh\n" }
|
24
|
+
create_file("#{path}/.gitignore") { ".env\n" }
|
25
|
+
end
|
26
|
+
|
27
|
+
def prepare_database
|
28
|
+
template('templates/database.erb', "#{path}/config/database.yml")
|
29
|
+
template('templates/users_migration.erb', "#{path}/db/migrate/1_create_users.rb")
|
30
|
+
end
|
31
|
+
|
32
|
+
def prepare_rack
|
33
|
+
template('templates/gemfile.tt', "#{path}/Gemfile")
|
34
|
+
template('templates/procfile.tt', "#{path}/Procfile")
|
35
|
+
template('templates/rakefile.tt', "#{path}/Rakefile")
|
36
|
+
template('templates/rackup.tt', "#{path}/config.ru")
|
37
|
+
template('templates/server.tt', "#{path}/server.rb")
|
38
|
+
end
|
39
|
+
|
40
|
+
def prepare_app
|
41
|
+
template('templates/user.tt', "#{path}/app/user.rb")
|
42
|
+
template('templates/layout.erb', "#{path}/views/layout.erb")
|
43
|
+
template('templates/navigation.erb', "#{path}/views/_navigation.erb")
|
44
|
+
template('templates/index.erb', "#{path}/views/index.erb")
|
45
|
+
end
|
46
|
+
|
47
|
+
def prepare_assets
|
48
|
+
create_file "#{path}/assets/javascripts/application.js"
|
49
|
+
|
50
|
+
create_file "#{path}/assets/stylesheets/vendor/.keep"
|
51
|
+
create_file("#{path}/assets/stylesheets/base.scss") { "body {}" }
|
52
|
+
template('templates/css.tt', "#{path}/assets/stylesheets/application.scss")
|
53
|
+
end
|
54
|
+
|
55
|
+
def self.source_root
|
56
|
+
File.dirname(__FILE__)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
class Command < Thor
|
61
|
+
register(Sinatra::Rider::Generator, 'new', 'new', 'Create a new sinatra-rider application at PATH_NAME')
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
default: &default
|
2
|
+
adapter: postgresql
|
3
|
+
encoding: unicode
|
4
|
+
pool: 5
|
5
|
+
|
6
|
+
development:
|
7
|
+
<<: *default
|
8
|
+
database: <%= path %>_development
|
9
|
+
|
10
|
+
test:
|
11
|
+
<<: *default
|
12
|
+
database: <%= path %>_test
|
13
|
+
|
14
|
+
production:
|
15
|
+
url: <%= "<%= ENV['DATABASE_URL'] \%\>" %>
|
@@ -0,0 +1 @@
|
|
1
|
+
Hello from Sinatra Rider!
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title><%= path.capitalize %></title>
|
5
|
+
<meta charset="utf-8">
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
|
7
|
+
<link rel="stylesheet" type="text/css" href="/assets/application.css">
|
8
|
+
</head>
|
9
|
+
|
10
|
+
<body>
|
11
|
+
<div class="wrap">
|
12
|
+
<%= "<%= erb '_navigation'.to_sym \%\>" %>
|
13
|
+
|
14
|
+
<div id="container">
|
15
|
+
<%= "<%= yield \%\>" %>
|
16
|
+
</div>
|
17
|
+
</div>
|
18
|
+
|
19
|
+
<script type="text/javascript" src="/assets/application.js"></script>
|
20
|
+
</body>
|
21
|
+
</html>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<nav>
|
2
|
+
<%= "<% if signed_in? \%\>" %>
|
3
|
+
Hi, <%= "<%= current_user.name \%\>" %>!
|
4
|
+
|
5
|
+
<a href="/">Home</a>
|
6
|
+
|
|
7
|
+
<a href="/logout">Logout</a>
|
8
|
+
<%= "<% else \%\>" %>
|
9
|
+
<a href="/">Home</a>
|
10
|
+
|
|
11
|
+
<a href="/login">Login</a>
|
12
|
+
|
|
13
|
+
<a href="/signup">Signup</a>
|
14
|
+
<%= "<% end \%\>" %>
|
15
|
+
</nav>
|
@@ -0,0 +1 @@
|
|
1
|
+
web: bundle exec thin start -p $PORT -e $RACK_ENV
|
@@ -0,0 +1 @@
|
|
1
|
+
require 'sinatra/rider/rake'
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'digest/sha1'
|
2
|
+
|
3
|
+
module Sinatra
|
4
|
+
module Rider
|
5
|
+
class User < ActiveRecord::Base
|
6
|
+
def self.signup(attrs)
|
7
|
+
where(username: attrs[:username]).first_or_initialize.tap do |u|
|
8
|
+
u.name = attrs[:name]
|
9
|
+
u.password = attrs[:password]
|
10
|
+
u.save!
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.authenticate(username, pass)
|
15
|
+
user = where(username: username).first
|
16
|
+
user if user && user.valid_password?(pass)
|
17
|
+
end
|
18
|
+
|
19
|
+
def password
|
20
|
+
encrypted_password
|
21
|
+
end
|
22
|
+
|
23
|
+
def password=(pass)
|
24
|
+
self.encrypted_password = Digest::SHA1.hexdigest(pass)
|
25
|
+
end
|
26
|
+
|
27
|
+
def valid_password?(pass)
|
28
|
+
encrypted_password == Digest::SHA1.hexdigest(pass)
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<form action="/signup" method="POST">
|
2
|
+
<div class="form-group">
|
3
|
+
<label for="username">Username</label>
|
4
|
+
<input type="text" name="username" class="form-control" id="login-username" placeholder="guest">
|
5
|
+
</div>
|
6
|
+
|
7
|
+
<div class="form-group">
|
8
|
+
<label for="name">Name</label>
|
9
|
+
<input type="text" name="name" class="form-control" id="login-name" placeholder="Gus Guesterson Jr.">
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<div class="form-group">
|
13
|
+
<label for="password">Password</label>
|
14
|
+
<input type="password" name="password" class="form-control" id="login-password" placeholder="**********">
|
15
|
+
</div>
|
16
|
+
|
17
|
+
<button type="submit" class="btn btn-primary">Sign Up</button>
|
18
|
+
</form>
|
data/sinatra-rider.gemspec
CHANGED
@@ -22,16 +22,17 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.require_paths = ["lib"]
|
23
23
|
|
24
24
|
spec.add_dependency 'thin'
|
25
|
+
spec.add_dependency 'thor'
|
25
26
|
spec.add_dependency 'pg'
|
26
27
|
spec.add_dependency 'dotenv'
|
27
|
-
spec.add_dependency 'sinatra'
|
28
|
-
spec.add_dependency 'sinatra-contrib'
|
29
|
-
spec.add_dependency 'sinatra-activerecord'
|
30
|
-
spec.add_dependency 'sinatra_warden'
|
31
|
-
spec.add_dependency 'activerecord',
|
32
|
-
spec.add_dependency 'sprockets'
|
28
|
+
spec.add_dependency 'sinatra', '~> 1.4'
|
29
|
+
spec.add_dependency 'sinatra-contrib', '~> 1.4'
|
30
|
+
spec.add_dependency 'sinatra-activerecord', '~> 2.0'
|
31
|
+
spec.add_dependency 'sinatra_warden', '~> 1.0'
|
32
|
+
spec.add_dependency 'activerecord', '~> 4.2'
|
33
|
+
spec.add_dependency 'sprockets', '~> 3.7'
|
34
|
+
spec.add_dependency 'sass', '~> 3.4'
|
33
35
|
spec.add_dependency 'uglifier'
|
34
|
-
spec.add_dependency 'sass'
|
35
36
|
spec.add_dependency 'better_errors'
|
36
37
|
spec.add_dependency 'binding_of_caller'
|
37
38
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sinatra-rider
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthew Werner
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-02-
|
11
|
+
date: 2017-02-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thin
|
@@ -25,7 +25,7 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: thor
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
@@ -39,7 +39,7 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: pg
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - ">="
|
@@ -53,7 +53,7 @@ dependencies:
|
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: dotenv
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
@@ -66,92 +66,106 @@ dependencies:
|
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: sinatra
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '1.4'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '1.4'
|
69
83
|
- !ruby/object:Gem::Dependency
|
70
84
|
name: sinatra-contrib
|
71
85
|
requirement: !ruby/object:Gem::Requirement
|
72
86
|
requirements:
|
73
|
-
- - "
|
87
|
+
- - "~>"
|
74
88
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
89
|
+
version: '1.4'
|
76
90
|
type: :runtime
|
77
91
|
prerelease: false
|
78
92
|
version_requirements: !ruby/object:Gem::Requirement
|
79
93
|
requirements:
|
80
|
-
- - "
|
94
|
+
- - "~>"
|
81
95
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
96
|
+
version: '1.4'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: sinatra-activerecord
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
|
-
- - "
|
101
|
+
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
103
|
+
version: '2.0'
|
90
104
|
type: :runtime
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
|
-
- - "
|
108
|
+
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
110
|
+
version: '2.0'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: sinatra_warden
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
|
-
- - "
|
115
|
+
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
117
|
+
version: '1.0'
|
104
118
|
type: :runtime
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
107
121
|
requirements:
|
108
|
-
- - "
|
122
|
+
- - "~>"
|
109
123
|
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
124
|
+
version: '1.0'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: activerecord
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
|
-
- -
|
129
|
+
- - "~>"
|
116
130
|
- !ruby/object:Gem::Version
|
117
|
-
version: 4.2
|
131
|
+
version: '4.2'
|
118
132
|
type: :runtime
|
119
133
|
prerelease: false
|
120
134
|
version_requirements: !ruby/object:Gem::Requirement
|
121
135
|
requirements:
|
122
|
-
- -
|
136
|
+
- - "~>"
|
123
137
|
- !ruby/object:Gem::Version
|
124
|
-
version: 4.2
|
138
|
+
version: '4.2'
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: sprockets
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
|
-
- - "
|
143
|
+
- - "~>"
|
130
144
|
- !ruby/object:Gem::Version
|
131
|
-
version: '
|
145
|
+
version: '3.7'
|
132
146
|
type: :runtime
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
|
-
- - "
|
150
|
+
- - "~>"
|
137
151
|
- !ruby/object:Gem::Version
|
138
|
-
version: '
|
152
|
+
version: '3.7'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
154
|
+
name: sass
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
|
-
- - "
|
157
|
+
- - "~>"
|
144
158
|
- !ruby/object:Gem::Version
|
145
|
-
version: '
|
159
|
+
version: '3.4'
|
146
160
|
type: :runtime
|
147
161
|
prerelease: false
|
148
162
|
version_requirements: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- - "
|
164
|
+
- - "~>"
|
151
165
|
- !ruby/object:Gem::Version
|
152
|
-
version: '
|
166
|
+
version: '3.4'
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
|
-
name:
|
168
|
+
name: uglifier
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
156
170
|
requirements:
|
157
171
|
- - ">="
|
@@ -237,7 +251,8 @@ dependencies:
|
|
237
251
|
description: All the extras that Sinatra prefers while performing
|
238
252
|
email:
|
239
253
|
- m@mjw.io
|
240
|
-
executables:
|
254
|
+
executables:
|
255
|
+
- rider
|
241
256
|
extensions: []
|
242
257
|
extra_rdoc_files: []
|
243
258
|
files:
|
@@ -250,24 +265,47 @@ files:
|
|
250
265
|
- README.md
|
251
266
|
- Rakefile
|
252
267
|
- bin/console
|
268
|
+
- bin/rider
|
253
269
|
- bin/setup
|
254
|
-
- example/.DS_Store
|
255
270
|
- example/myapp/Gemfile
|
271
|
+
- example/myapp/Gemfile.lock
|
272
|
+
- example/myapp/README.md
|
273
|
+
- example/myapp/Rakefile
|
256
274
|
- example/myapp/app/user.rb
|
257
275
|
- example/myapp/assets/stylesheets/application.scss
|
258
276
|
- example/myapp/assets/stylesheets/base.scss
|
259
277
|
- example/myapp/config.ru
|
278
|
+
- example/myapp/config/database.yml
|
279
|
+
- example/myapp/db/migrate/1_create_users.rb
|
280
|
+
- example/myapp/db/schema.rb
|
281
|
+
- example/myapp/db/seeds.rb
|
260
282
|
- example/myapp/views/index.erb
|
261
283
|
- example/myapp/views/layout.erb
|
284
|
+
- exe/rider
|
262
285
|
- lib/sinatra/rider.rb
|
263
286
|
- lib/sinatra/rider/assets.rb
|
264
287
|
- lib/sinatra/rider/authentication.rb
|
288
|
+
- lib/sinatra/rider/command.rb
|
265
289
|
- lib/sinatra/rider/configuration.rb
|
266
290
|
- lib/sinatra/rider/pathing.rb
|
267
291
|
- lib/sinatra/rider/quiet_assets.rb
|
268
292
|
- lib/sinatra/rider/rake.rb
|
293
|
+
- lib/sinatra/rider/templates/css.tt
|
294
|
+
- lib/sinatra/rider/templates/database.erb
|
295
|
+
- lib/sinatra/rider/templates/gemfile.tt
|
296
|
+
- lib/sinatra/rider/templates/index.erb
|
297
|
+
- lib/sinatra/rider/templates/layout.erb
|
298
|
+
- lib/sinatra/rider/templates/navigation.erb
|
299
|
+
- lib/sinatra/rider/templates/procfile.tt
|
300
|
+
- lib/sinatra/rider/templates/rackup.tt
|
301
|
+
- lib/sinatra/rider/templates/rakefile.tt
|
302
|
+
- lib/sinatra/rider/templates/server.tt
|
303
|
+
- lib/sinatra/rider/templates/user.tt
|
304
|
+
- lib/sinatra/rider/templates/users_migration.erb
|
305
|
+
- lib/sinatra/rider/user.rb
|
269
306
|
- lib/sinatra/rider/version.rb
|
270
307
|
- lib/sinatra/views/login.erb
|
308
|
+
- lib/sinatra/views/signup.erb
|
271
309
|
- sinatra-rider.gemspec
|
272
310
|
homepage: https://github.com/mwerner/sinatra-rider
|
273
311
|
licenses:
|
data/example/.DS_Store
DELETED
Binary file
|