whales 0.1.1 → 0.1.2
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 +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
|