whales 0.1.1 → 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +7 -4
- data/exe/whales +51 -60
- metadata +24 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 432eca4b7237146ea26c438eff7cff039ca635e9
|
4
|
+
data.tar.gz: e992aeb760254fb76f380b1173f30872690fdba3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 944668bed427b2e7fd759fe8cf8850e643f14006ebdad0c7158d78a9d2361a4a78ecb45155531aee707d73dbfda21cc405477d6bc885946b4839afd76320d2c4
|
7
|
+
data.tar.gz: 99e73783ac7b24d4bbbc04ead603cca0f395fdb3e365ddd4bfd5a8edc5e0ad268785c19d26fc5bd071dd05b10669ab26434a149423b630cfb680af18db28afd3
|
data/README.md
CHANGED
@@ -6,19 +6,22 @@ is a lightweight web framework written in Ruby, inspired by popular MVC framewor
|
|
6
6
|
|
7
7
|
##Installation
|
8
8
|
|
9
|
-
|
9
|
+
Whales can be installed using RubyGems:
|
10
|
+
`gem install 'whales'`
|
11
|
+
|
12
|
+
Or you can include it directly in your projects Gemfile:
|
13
|
+
`gem 'whales', '0.1.1'`
|
10
14
|
|
11
15
|
##Your First Whales Project
|
12
16
|
**Create a new app:**
|
13
17
|
```
|
14
|
-
|
15
|
-
./whales new MyApp
|
18
|
+
whales new MyApp
|
16
19
|
```
|
17
20
|
|
18
21
|
**Start working:**
|
19
22
|
```
|
20
23
|
# cd into the new folder
|
21
|
-
cd
|
24
|
+
cd MyApp
|
22
25
|
|
23
26
|
# start the server
|
24
27
|
whales server
|
data/exe/whales
CHANGED
@@ -1,64 +1,66 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
+
require 'optparse'
|
3
4
|
require 'fileutils'
|
4
5
|
include FileUtils
|
6
|
+
require 'whales_orm'
|
5
7
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
8
|
+
options = {}
|
9
|
+
|
10
|
+
subtext = <<HELP
|
11
|
+
Commonly used command are:
|
12
|
+
new : creates new Whales app
|
13
|
+
server : start a Whales app server
|
14
|
+
See 'whales COMMAND --help' for more information on a specific command.
|
15
|
+
HELP
|
16
|
+
|
17
|
+
global = OptionParser.new do |opts|
|
18
|
+
opts.banner = "Usage: whales [options] [subcommand [options]]"
|
19
|
+
opts.on("-q", "--quiet", "Run verbosely") do
|
20
|
+
options[:verbose] = false
|
21
|
+
end
|
22
|
+
opts.separator ""
|
23
|
+
opts.separator subtext
|
24
|
+
end
|
25
|
+
# end.parse!
|
26
|
+
|
27
|
+
subcommands = {
|
28
|
+
'new' => OptionParser.new do |opts|
|
29
|
+
opts.banner = "Usage: new [app_name] [options]"
|
30
|
+
end,
|
31
|
+
'server' => OptionParser.new do |opts|
|
32
|
+
opts.banner = "Usage: server [options]"
|
33
|
+
end
|
34
|
+
}
|
10
35
|
|
36
|
+
global.order!
|
37
|
+
command = ARGV.shift
|
38
|
+
subcommands[command].order!
|
39
|
+
|
40
|
+
options[:verbose] = true if options[:verbose].nil?
|
41
|
+
|
42
|
+
case command
|
43
|
+
when 'new'
|
44
|
+
puts "Making new Whales App:"
|
45
|
+
app_name = ARGV.shift
|
46
|
+
display = { verbose: options[:verbose] }
|
11
47
|
mkdir app_name, display
|
12
48
|
cd app_name
|
13
49
|
touch "routes.rb", display
|
14
|
-
File.open("routes.rb", 'w') do |f|
|
15
|
-
f.write <<-TEXT
|
16
|
-
require_relative '../whales/whales_actions/lib/whales_controller/base'
|
17
|
-
|
18
|
-
def make_router
|
19
|
-
router = WhalesDispatch::Router.new
|
20
|
-
|
21
|
-
router.draw do
|
22
|
-
# include routes using this syntax:
|
23
|
-
# get Regexp.new("^/users/new$"), UsersController, :new
|
24
|
-
# or
|
25
|
-
# resources :users, :parent, only: [:new]
|
26
|
-
#
|
27
|
-
# nested resources are given as blocks to :parent resources
|
28
|
-
# resources :posts, :parent do
|
29
|
-
# resources :comments, :nested, only: [:index, :new, :create]
|
30
|
-
# end
|
31
|
-
end
|
32
50
|
|
33
|
-
|
34
|
-
|
35
|
-
TEXT
|
51
|
+
File.open("routes.rb", 'w') do |f|
|
52
|
+
f.write File.read(File.join(__dir__, '../template/routes.rb'))
|
36
53
|
end
|
37
54
|
|
38
55
|
touch "Gemfile", display
|
39
56
|
File.open("Gemfile", "w") do |f|
|
40
|
-
f.write
|
41
|
-
source 'https://rubygems.org'\n
|
42
|
-
|
43
|
-
require 'whales'
|
44
|
-
TEXT
|
57
|
+
f.write File.read(File.join(__dir__, '../template/Gemfile'))
|
45
58
|
end
|
46
59
|
|
47
60
|
mkdir "config", display
|
48
61
|
touch "config/database.rb", display
|
49
62
|
File.open("config/database.rb", "w") do |f|
|
50
|
-
f.write
|
51
|
-
require 'whales_orm'
|
52
|
-
|
53
|
-
# https://tomafro.net/2010/01/tip-relative-paths-with-file-expand-path
|
54
|
-
ROOT_FOLDER = File.join(File.dirname(__FILE__), '../db')
|
55
|
-
|
56
|
-
# sql file name goes here, the default is database.sql
|
57
|
-
SQL_FILE = File.join(ROOT_FOLDER, 'database.sql')
|
58
|
-
|
59
|
-
# Here you can configure where you want the database file to be saved
|
60
|
-
DB_FILE = File.join(ROOT_FOLDER, 'database.db')
|
61
|
-
TEXT
|
63
|
+
f.write File.read(File.join(__dir__, '../template/database.rb'))
|
62
64
|
end
|
63
65
|
|
64
66
|
mkdir "db", display
|
@@ -68,32 +70,21 @@ DB_FILE = File.join(ROOT_FOLDER, 'database.db')
|
|
68
70
|
|
69
71
|
touch "app/controllers/application_controller.rb", display
|
70
72
|
File.open("app/controllers/application_controller.rb", "w") do |f|
|
71
|
-
f.write
|
72
|
-
require 'whales_actions'
|
73
|
-
require_relative '../../config/database.rb'
|
74
|
-
|
75
|
-
class ApplicationController < WhalesController::Base
|
76
|
-
end
|
77
|
-
TEXT
|
73
|
+
f.write File.read(File.join(__dir__, '../template/application_controller.rb'))
|
78
74
|
end
|
79
75
|
|
80
76
|
cd 'app'
|
81
77
|
mkdir 'models', display
|
82
78
|
mkdir 'views'
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
if ARGV.first == 'generate' || ARGV.first == 'g' && ARGV.length == 3
|
79
|
+
when "server" || "s"
|
80
|
+
puts $LOAD_PATH
|
81
|
+
require_relative "../../whales_app/routes"
|
82
|
+
require_relative "../server"
|
83
|
+
start_server(make_router)
|
84
|
+
when 'generate' || 'g'
|
91
85
|
type = ARGV[1]
|
92
86
|
name = ARGV[2]
|
93
87
|
|
94
|
-
path = "app/#{type}s/#{name.downcase}.rb"
|
95
|
-
touch path
|
96
|
-
|
97
88
|
if type == "model"
|
98
89
|
path = "app/#{type}s/#{name.downcase}.rb"
|
99
90
|
touch path
|
metadata
CHANGED
@@ -1,57 +1,71 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: whales
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- William Horton
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '1.10'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '1.10'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - '='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 10.4.2
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - '='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 10.4.2
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: whales_actions
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
30
44
|
requirements:
|
31
45
|
- - '='
|
32
46
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.1.
|
47
|
+
version: 0.1.2
|
34
48
|
type: :runtime
|
35
49
|
prerelease: false
|
36
50
|
version_requirements: !ruby/object:Gem::Requirement
|
37
51
|
requirements:
|
38
52
|
- - '='
|
39
53
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.1.
|
54
|
+
version: 0.1.2
|
41
55
|
- !ruby/object:Gem::Dependency
|
42
56
|
name: whales_orm
|
43
57
|
requirement: !ruby/object:Gem::Requirement
|
44
58
|
requirements:
|
45
59
|
- - '='
|
46
60
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.1.
|
61
|
+
version: 0.1.2
|
48
62
|
type: :runtime
|
49
63
|
prerelease: false
|
50
64
|
version_requirements: !ruby/object:Gem::Requirement
|
51
65
|
requirements:
|
52
66
|
- - '='
|
53
67
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.1.
|
68
|
+
version: 0.1.2
|
55
69
|
description:
|
56
70
|
email:
|
57
71
|
- wdt.horton@gmail.com
|