anadea-spark 0.2.1 → 0.3.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 +5 -18
- data/lib/spark/app_builder.rb +16 -49
- data/lib/spark/generators/app_generator.rb +0 -10
- data/lib/spark/version.rb +1 -1
- data/spec/features/new_project_spec.rb +6 -21
- data/templates/Gemfile.erb +1 -6
- data/templates/Procfile +1 -1
- data/templates/config/locales_en.yml.erb +0 -3
- data/templates/views/application/{_analytics.html.haml → _analytics.html.erb} +8 -3
- data/templates/views/application/_flashes.html.erb +6 -0
- data/templates/views/application/_footer.html.erb +15 -0
- data/templates/views/application/_javascript.html.erb +9 -0
- data/templates/views/application/_navigation.html.erb +18 -0
- data/templates/views/application/_navigation_links.html.erb +2 -0
- data/templates/views/layouts/application.html.erb.erb +33 -0
- data/templates/views/pages/home.html.erb +5 -0
- metadata +10 -13
- data/templates/config/initializers/mail_interceptor.rb +0 -4
- data/templates/config/initializers/rack_timeout.rb +0 -1
- data/templates/spec/support/i18n.rb +0 -3
- data/templates/views/application/_flashes.html.haml +0 -4
- data/templates/views/application/_footer.html.haml +0 -9
- data/templates/views/application/_javascript.html.haml +0 -8
- data/templates/views/application/_navigation.html.haml +0 -12
- data/templates/views/application/_navigation_links.html.haml +0 -2
- data/templates/views/layouts/application.html.haml +0 -23
- data/templates/views/pages/home.html.haml +0 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 7f49d7ffcea2b42eed9ec9c223426a32f8f93a74
|
|
4
|
+
data.tar.gz: 37cacb751e0d962f5f76ac88ff74dc44d49f79b6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 813db1c0f5aceb94b7ceac5c3c838972deee3f92abd7ec2cfa2ec85cdd2acf172b0ed5a0fe6ec2c27e616c66d61e2441143ce4c031ca582d0c84bf99087356af
|
|
7
|
+
data.tar.gz: 55982b5b1e377e09902b69bc92119b48d70373a28f19611833c0ba70f0186aa62dc544d6a6eaf9ce323dd906158dceebcbc398e1e1ad1a6890e7e4aa82a51594
|
data/README.md
CHANGED
|
@@ -18,7 +18,6 @@
|
|
|
18
18
|
|
|
19
19
|
* [Bootstrap](https://github.com/twbs/bootstrap-sass) для стандартного внешнего
|
|
20
20
|
вида и вёрстки по сетке.
|
|
21
|
-
* [Coffee Rails](https://github.com/rails/coffee-rails) как дефолт Рельсов.
|
|
22
21
|
* [Email Validator](https://github.com/balexand/email_validator) для валидации
|
|
23
22
|
адреса электронной почты.
|
|
24
23
|
* [Exception Notification](https://github.com/smartinez87/exception_notification)
|
|
@@ -27,27 +26,16 @@
|
|
|
27
26
|
`MAIL_ERRORS_TO`, задающей список адресов для уведомления через запятую.
|
|
28
27
|
* [Figaro](https://github.com/laserlemon/figaro) для конфигурации приложения
|
|
29
28
|
через переменные окружения.
|
|
30
|
-
* [
|
|
31
|
-
|
|
32
|
-
* [High Voltage](https://github.com/thoughtbot/high_voltage) для статических
|
|
33
|
-
страничек.
|
|
29
|
+
* [High Voltage](https://github.com/thoughtbot/high_voltage) отображения
|
|
30
|
+
домашней страницы и других страниц, не требующих кастомного контроллера.
|
|
34
31
|
* [Jquery Rails](https://github.com/rails/jquery-rails) для JQuery как дефолт
|
|
35
32
|
Рельсов.
|
|
36
33
|
* [Postgres](https://github.com/ged/ruby-pg) для доступа к базе данных Postgres.
|
|
37
|
-
* [
|
|
38
|
-
продакшене.
|
|
39
|
-
* [Rack Timeout](https://github.com/heroku/rack-timeout) чтобы отменять слишком
|
|
40
|
-
длинные запросы. Включается при наличии переменной окружения `RACK_TIMEOUT`,
|
|
41
|
-
задаваемой в секундах.
|
|
42
|
-
* [Recipient Interceptor](https://github.com/croaky/recipient_interceptor) чтобы
|
|
43
|
-
избежать случайной отправки почты реальным адресатам со стейджинга. Включается
|
|
44
|
-
при наличии переменной окружения `EMAIL_RECIPIENTS`, задающей адрес, которым
|
|
45
|
-
будет заменено поле `to` любого отправляемого письма.
|
|
34
|
+
* [Thin](https://github.com/macournoyer/thin) как руби-сервер в разработке и в
|
|
35
|
+
первоначальном продакшене.
|
|
46
36
|
* [Sass Rails](https://github.com/rails/sass-rails) как дефолт Рельсов.
|
|
47
37
|
* [Simple Form](https://github.com/plataformatec/simple_form) для разметки и
|
|
48
38
|
стиллизации форм. Инициализатор сгенерирован для twitter bootstrap.
|
|
49
|
-
* [Title](https://github.com/calebthompson/title) для удобного задания тайтлов
|
|
50
|
-
страниц в файлах перевода i18n.
|
|
51
39
|
* [Uglifier](https://github.com/lautis/uglifier) как дефолт Рельсов.
|
|
52
40
|
|
|
53
41
|
## Гемы для разработки
|
|
@@ -87,9 +75,9 @@
|
|
|
87
75
|
* В приложении создаётся скрипт `bin/setup` для лёгкого старта новыми разработчиками.
|
|
88
76
|
* Макет (layout) приложения с флеш-сообщениями, навигацией и подвалом, сделанный
|
|
89
77
|
под twitter bootstrap.
|
|
78
|
+
* Удалён гем `coffee-rails`, так как Coffeescript признан плохой практикой.
|
|
90
79
|
* Готовый шаблон для home page – заходи и меняй.
|
|
91
80
|
* Несколько удобных форматов даты и времени для локализации.
|
|
92
|
-
* `Rack::Deflater` для [сжатия HTTP ответов с помощью Gzip][compress].
|
|
93
81
|
* [Уменьшен размер пула соединений с базой данных][pool].
|
|
94
82
|
* `t()` и `l()` хелперы в тестах, чтобы вызывать их без префиксов.
|
|
95
83
|
* Переменная окружения `SECRET_KEY_BASE` используется во всех окружениях.
|
|
@@ -107,7 +95,6 @@
|
|
|
107
95
|
* Добавлен `.ruby-version`, понимаемый большинством менеджеров версий Руби.
|
|
108
96
|
* Контент `config/routes.rb`, состоящий из большого комментария, удалён.
|
|
109
97
|
|
|
110
|
-
[compress]: http://robots.thoughtbot.com/content-compression-with-rack-deflater/
|
|
111
98
|
[pool]: https://devcenter.heroku.com/articles/concurrency-and-database-connections
|
|
112
99
|
[rails12factor]: https://github.com/heroku/rails_12factor
|
|
113
100
|
[mailcatcher]: http://mailcatcher.me/
|
data/lib/spark/app_builder.rb
CHANGED
|
@@ -83,20 +83,6 @@ module Spark
|
|
|
83
83
|
:after => 'config.action_mailer.raise_delivery_errors = false'
|
|
84
84
|
end
|
|
85
85
|
|
|
86
|
-
def enable_rack_deflater
|
|
87
|
-
config = <<-RUBY
|
|
88
|
-
|
|
89
|
-
# Enable deflate / gzip compression of controller-generated responses
|
|
90
|
-
config.middleware.use Rack::Deflater
|
|
91
|
-
RUBY
|
|
92
|
-
|
|
93
|
-
inject_into_file(
|
|
94
|
-
"config/environments/production.rb",
|
|
95
|
-
config,
|
|
96
|
-
after: serve_static_files_line
|
|
97
|
-
)
|
|
98
|
-
end
|
|
99
|
-
|
|
100
86
|
def setup_asset_host
|
|
101
87
|
replace_in_file 'config/environments/production.rb',
|
|
102
88
|
"# config.action_controller.asset_host = 'http://assets.example.com'",
|
|
@@ -124,29 +110,29 @@ module Spark
|
|
|
124
110
|
def create_partials
|
|
125
111
|
empty_directory 'app/views/application'
|
|
126
112
|
|
|
127
|
-
copy_file 'views/application/_flashes.html.
|
|
128
|
-
'app/views/application/_flashes.html.
|
|
129
|
-
copy_file 'views/application/_javascript.html.
|
|
130
|
-
'app/views/application/_javascript.html.
|
|
131
|
-
copy_file 'views/application/_navigation.html.
|
|
132
|
-
'app/views/application/_navigation.html.
|
|
133
|
-
copy_file 'views/application/_navigation_links.html.
|
|
134
|
-
'app/views/application/_navigation_links.html.
|
|
135
|
-
copy_file 'views/application/_analytics.html.
|
|
136
|
-
'app/views/application/_analytics.html.
|
|
137
|
-
copy_file 'views/application/_footer.html.
|
|
138
|
-
'app/views/application/_footer.html.
|
|
113
|
+
copy_file 'views/application/_flashes.html.erb',
|
|
114
|
+
'app/views/application/_flashes.html.erb'
|
|
115
|
+
copy_file 'views/application/_javascript.html.erb',
|
|
116
|
+
'app/views/application/_javascript.html.erb'
|
|
117
|
+
copy_file 'views/application/_navigation.html.erb',
|
|
118
|
+
'app/views/application/_navigation.html.erb'
|
|
119
|
+
copy_file 'views/application/_navigation_links.html.erb',
|
|
120
|
+
'app/views/application/_navigation_links.html.erb'
|
|
121
|
+
copy_file 'views/application/_analytics.html.erb',
|
|
122
|
+
'app/views/application/_analytics.html.erb'
|
|
123
|
+
copy_file 'views/application/_footer.html.erb',
|
|
124
|
+
'app/views/application/_footer.html.erb'
|
|
139
125
|
end
|
|
140
126
|
|
|
141
127
|
def create_home_page
|
|
142
|
-
copy_file 'views/pages/home.html.
|
|
143
|
-
'app/views/pages/home.html.
|
|
128
|
+
copy_file 'views/pages/home.html.erb',
|
|
129
|
+
'app/views/pages/home.html.erb'
|
|
144
130
|
end
|
|
145
131
|
|
|
146
132
|
def create_application_layout
|
|
147
133
|
remove_file 'app/views/layouts/application.html.erb'
|
|
148
|
-
|
|
149
|
-
'app/views/layouts/application.html.
|
|
134
|
+
template 'views/layouts/application.html.erb.erb',
|
|
135
|
+
'app/views/layouts/application.html.erb', force: true
|
|
150
136
|
end
|
|
151
137
|
|
|
152
138
|
def use_postgres_config_template
|
|
@@ -188,10 +174,6 @@ module Spark
|
|
|
188
174
|
copy_file "spec/spec_helper.rb", "spec/spec_helper.rb"
|
|
189
175
|
end
|
|
190
176
|
|
|
191
|
-
def configure_i18n_for_test_environment
|
|
192
|
-
copy_file "spec/support/i18n.rb", "spec/support/i18n.rb"
|
|
193
|
-
end
|
|
194
|
-
|
|
195
177
|
def configure_i18n_for_missing_translations
|
|
196
178
|
raise_on_missing_translations_in("development")
|
|
197
179
|
raise_on_missing_translations_in("test")
|
|
@@ -210,16 +192,6 @@ module Spark
|
|
|
210
192
|
template "config/locales_en.yml.erb", "config/locales/en.yml"
|
|
211
193
|
end
|
|
212
194
|
|
|
213
|
-
def configure_rack_timeout
|
|
214
|
-
copy_file 'config/initializers/rack_timeout.rb',
|
|
215
|
-
'config/initializers/rack_timeout.rb'
|
|
216
|
-
end
|
|
217
|
-
|
|
218
|
-
def configure_mail_interceptor
|
|
219
|
-
copy_file 'config/initializers/mail_interceptor.rb',
|
|
220
|
-
'config/initializers/mail_interceptor.rb'
|
|
221
|
-
end
|
|
222
|
-
|
|
223
195
|
def configure_simple_form
|
|
224
196
|
# Here we suppress simple_form warning that simple_form hasn't been configured
|
|
225
197
|
bundle_command "exec rails generate simple_form:install --bootstrap > /dev/null 2>&1"
|
|
@@ -250,11 +222,6 @@ module Spark
|
|
|
250
222
|
generate 'rspec:install'
|
|
251
223
|
end
|
|
252
224
|
|
|
253
|
-
def configure_puma
|
|
254
|
-
bundle_command 'binstub puma'
|
|
255
|
-
remove_file 'bin/pumactl'
|
|
256
|
-
end
|
|
257
|
-
|
|
258
225
|
def setup_foreman
|
|
259
226
|
copy_file 'Procfile', 'Procfile'
|
|
260
227
|
end
|
|
@@ -30,7 +30,6 @@ module Spark
|
|
|
30
30
|
invoke :setup_test_environment
|
|
31
31
|
invoke :setup_production_environment
|
|
32
32
|
invoke :setup_assets
|
|
33
|
-
invoke :configure_mail_interceptor
|
|
34
33
|
invoke :copy_miscellaneous_files
|
|
35
34
|
invoke :customize_error_pages
|
|
36
35
|
invoke :remove_routes_comment_lines
|
|
@@ -77,7 +76,6 @@ module Spark
|
|
|
77
76
|
build :configure_background_jobs_for_rspec
|
|
78
77
|
build :enable_database_cleaner
|
|
79
78
|
build :configure_spec_support_features
|
|
80
|
-
build :configure_i18n_for_test_environment
|
|
81
79
|
build :configure_action_mailer_in_specs
|
|
82
80
|
end
|
|
83
81
|
|
|
@@ -85,7 +83,6 @@ module Spark
|
|
|
85
83
|
say 'Setting up the production environment'
|
|
86
84
|
build :configure_exception_notification
|
|
87
85
|
build :configure_smtp
|
|
88
|
-
build :enable_rack_deflater
|
|
89
86
|
build :setup_asset_host
|
|
90
87
|
end
|
|
91
88
|
|
|
@@ -112,12 +109,10 @@ module Spark
|
|
|
112
109
|
build :configure_action_mailer
|
|
113
110
|
build :configure_active_job
|
|
114
111
|
build :configure_time_formats
|
|
115
|
-
build :configure_rack_timeout
|
|
116
112
|
build :configure_simple_form
|
|
117
113
|
build :disable_xml_params
|
|
118
114
|
build :fix_i18n_deprecation_warning
|
|
119
115
|
build :setup_default_rake_task
|
|
120
|
-
build :configure_puma
|
|
121
116
|
build :setup_foreman
|
|
122
117
|
end
|
|
123
118
|
|
|
@@ -127,11 +122,6 @@ module Spark
|
|
|
127
122
|
build :setup_javascripts
|
|
128
123
|
end
|
|
129
124
|
|
|
130
|
-
def configure_mail_interceptor
|
|
131
|
-
say 'Configure mail interceptor'
|
|
132
|
-
build :configure_mail_interceptor
|
|
133
|
-
end
|
|
134
|
-
|
|
135
125
|
def setup_git
|
|
136
126
|
if !options[:skip_git]
|
|
137
127
|
say 'Initializing git'
|
data/lib/spark/version.rb
CHANGED
|
@@ -11,7 +11,7 @@ RSpec.feature 'Build a new project with default configuration' do
|
|
|
11
11
|
end
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
scenario 'generated .ruby-version is pulled from
|
|
14
|
+
scenario 'generated .ruby-version is pulled from interpreter' do
|
|
15
15
|
run_generator
|
|
16
16
|
|
|
17
17
|
ruby_version_file = IO.read("#{project_path}/.ruby-version")
|
|
@@ -33,12 +33,6 @@ RSpec.feature 'Build a new project with default configuration' do
|
|
|
33
33
|
expect(File).to exist("#{project_path}/spec/support/action_mailer.rb")
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
-
scenario "i18n support file is added" do
|
|
37
|
-
run_generator
|
|
38
|
-
|
|
39
|
-
expect(File).to exist("#{project_path}/spec/support/i18n.rb")
|
|
40
|
-
end
|
|
41
|
-
|
|
42
36
|
scenario 'exception notification reads mail address from ENV' do
|
|
43
37
|
run_generator
|
|
44
38
|
|
|
@@ -52,11 +46,13 @@ RSpec.feature 'Build a new project with default configuration' do
|
|
|
52
46
|
|
|
53
47
|
scenario 'records pageviews through Google Analytics if ENV variable set' do
|
|
54
48
|
run_generator
|
|
49
|
+
analytics_partial =
|
|
50
|
+
IO.read("#{project_path}/app/views/application/_analytics.html.erb")
|
|
55
51
|
|
|
56
52
|
expect(analytics_partial).
|
|
57
|
-
to include(%{
|
|
53
|
+
to include(%{<% if ENV.key?("GOOGLE_ANALYTICS_KEY") %>})
|
|
58
54
|
expect(analytics_partial).
|
|
59
|
-
to include(%{_gaq.push(['_setAccount', '
|
|
55
|
+
to include(%{_gaq.push(['_setAccount', '<%= ENV["GOOGLE_ANALYTICS_KEY"] %>']);})
|
|
60
56
|
end
|
|
61
57
|
|
|
62
58
|
scenario "raises on unpermitted parameters in all environments" do
|
|
@@ -81,19 +77,12 @@ RSpec.feature 'Build a new project with default configuration' do
|
|
|
81
77
|
end
|
|
82
78
|
end
|
|
83
79
|
|
|
84
|
-
scenario "specs for missing or unused translations" do
|
|
85
|
-
run_generator
|
|
86
|
-
|
|
87
|
-
expect(File).to exist("#{project_path}/spec/i18n_spec.rb")
|
|
88
|
-
end
|
|
89
|
-
|
|
90
80
|
scenario "generated en.yml is evaluated" do
|
|
91
81
|
run_generator
|
|
92
82
|
|
|
93
83
|
locales_en_file = IO.read("#{project_path}/config/locales/en.yml")
|
|
94
|
-
app_name = TestHelpers::APP_NAME
|
|
95
84
|
|
|
96
|
-
expect(locales_en_file).to match(/
|
|
85
|
+
expect(locales_en_file).to match(/with_weekday/)
|
|
97
86
|
end
|
|
98
87
|
|
|
99
88
|
scenario "config simple_form" do
|
|
@@ -123,8 +112,4 @@ RSpec.feature 'Build a new project with default configuration' do
|
|
|
123
112
|
/^ +config.active_job.queue_adapter = :inline$/
|
|
124
113
|
)
|
|
125
114
|
end
|
|
126
|
-
|
|
127
|
-
def analytics_partial
|
|
128
|
-
IO.read("#{project_path}/app/views/application/_analytics.html.haml")
|
|
129
|
-
end
|
|
130
115
|
end
|
data/templates/Gemfile.erb
CHANGED
|
@@ -3,22 +3,17 @@ source "https://rubygems.org"
|
|
|
3
3
|
ruby "<%= ::RUBY_VERSION %>"
|
|
4
4
|
|
|
5
5
|
gem "bootstrap-sass", "~> 3.3.4"
|
|
6
|
-
gem "coffee-rails", "~> 4.1.0"
|
|
7
6
|
gem "delayed_job_active_record"
|
|
8
7
|
gem "email_validator"
|
|
9
8
|
gem "exception_notification"
|
|
10
9
|
gem "figaro"
|
|
11
|
-
gem "haml-rails"
|
|
12
10
|
gem "high_voltage"
|
|
13
11
|
gem "jquery-rails"
|
|
14
12
|
gem "pg"
|
|
15
|
-
gem "puma"
|
|
16
|
-
gem "rack-timeout"
|
|
17
13
|
gem "rails", "<%= Spark::RAILS_VERSION %>"
|
|
18
|
-
gem "recipient_interceptor"
|
|
19
14
|
gem "sass-rails", "~> 5.0"
|
|
20
15
|
gem "simple_form"
|
|
21
|
-
gem "
|
|
16
|
+
gem "thin"
|
|
22
17
|
gem "uglifier"
|
|
23
18
|
|
|
24
19
|
group :development do
|
data/templates/Procfile
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
web: ./bin/
|
|
1
|
+
web: ./bin/rails server thin -p $PORT -e $RACK_ENV
|
|
2
2
|
worker: bundle exec rake jobs:work
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
<% if ENV.key?("GOOGLE_ANALYTICS_KEY") %>
|
|
2
|
+
<script type="text/javascript">
|
|
3
|
+
|
|
3
4
|
var _gaq = _gaq || [];
|
|
4
|
-
_gaq.push(['_setAccount', '
|
|
5
|
+
_gaq.push(['_setAccount', '<%= ENV["GOOGLE_ANALYTICS_KEY"] %>']);
|
|
5
6
|
_gaq.push(['_trackPageview']);
|
|
6
7
|
|
|
7
8
|
(function() {
|
|
@@ -9,3 +10,7 @@
|
|
|
9
10
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
|
10
11
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
|
11
12
|
})();
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
</script>
|
|
16
|
+
<% end %>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<% flash.each do |name, msg| %>
|
|
2
|
+
<div class="alert alert-<%= name == "notice" ? "success" : "danger" %>">
|
|
3
|
+
<button aria-hidden="true" class="close" data-dismiss="alert" type="button">×</button>
|
|
4
|
+
<%= content_tag :div, msg, :id => "flash_#{name}" %>
|
|
5
|
+
</div>
|
|
6
|
+
<% end %>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<div id="footer">
|
|
2
|
+
<div class="container">
|
|
3
|
+
<div class="row footer-first-row">
|
|
4
|
+
<div class="col-xs-12 text-center">
|
|
5
|
+
<p>
|
|
6
|
+
<small>
|
|
7
|
+
© #{Time.now.year} - Yourself!
|
|
8
|
+
<br/>
|
|
9
|
+
Assembled with #{link_to "Spark", "https://github.com/Anadea/spark"}
|
|
10
|
+
</small>
|
|
11
|
+
</p>
|
|
12
|
+
</div>
|
|
13
|
+
</div>
|
|
14
|
+
</div>
|
|
15
|
+
</div>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<nav class="navbar navbar-default">
|
|
2
|
+
<div class="container">
|
|
3
|
+
<div class="navbar-header">
|
|
4
|
+
<button class="navbar-toggle" data-target=".navbar-collapse" data-toggle="collapse" type="button">
|
|
5
|
+
<span class="sr-only">Toggle navigation</span>
|
|
6
|
+
<span class="icon-bar"></span>
|
|
7
|
+
<span class="icon-bar"></span>
|
|
8
|
+
<span class="icon-bar"></span>
|
|
9
|
+
</button>
|
|
10
|
+
<%= link_to 'Home', root_path, class: 'navbar-brand' %>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="collapse navbar-collapse">
|
|
13
|
+
<ul class="nav navbar-nav">
|
|
14
|
+
<%= render 'navigation_links' %>
|
|
15
|
+
</ul>
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
18
|
+
</nav>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html>
|
|
3
|
+
<head>
|
|
4
|
+
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
|
|
5
|
+
<meta charset="utf-8"/>
|
|
6
|
+
<meta content="NOODP" name="ROBOTS"/>
|
|
7
|
+
<meta content="initial-scale=1" name="viewport"/>
|
|
8
|
+
<title><%= app_name.humanize %></title>
|
|
9
|
+
<%%= stylesheet_link_tag :application, media: "all" %>
|
|
10
|
+
<%%= csrf_meta_tags %>
|
|
11
|
+
</head>
|
|
12
|
+
<body>
|
|
13
|
+
<div id="wrap">
|
|
14
|
+
<header>
|
|
15
|
+
<%%= render 'navigation' %>
|
|
16
|
+
</header>
|
|
17
|
+
<div class="container">
|
|
18
|
+
<div class="row">
|
|
19
|
+
<div class="col-sm-6 col-sm-offset-3 text-center">
|
|
20
|
+
<%%= render 'flashes' %>
|
|
21
|
+
</div>
|
|
22
|
+
</div>
|
|
23
|
+
<div class="row">
|
|
24
|
+
<div class="col-sm-12">
|
|
25
|
+
<%%= yield %>
|
|
26
|
+
</div>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
<%%= render 'footer' %>
|
|
31
|
+
<%%= render 'javascript' %>
|
|
32
|
+
</body>
|
|
33
|
+
</html>
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: anadea-spark
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.3.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- anadea
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2015-04-
|
|
11
|
+
date: 2015-04-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -121,8 +121,6 @@ files:
|
|
|
121
121
|
- templates/config/initializers/errors.rb
|
|
122
122
|
- templates/config/initializers/exception_notification.rb.erb
|
|
123
123
|
- templates/config/initializers/json_encoding.rb
|
|
124
|
-
- templates/config/initializers/mail_interceptor.rb
|
|
125
|
-
- templates/config/initializers/rack_timeout.rb
|
|
126
124
|
- templates/config/locales_en.yml.erb
|
|
127
125
|
- templates/config/newrelic.yml.erb
|
|
128
126
|
- templates/config/postgresql_database.yml.erb
|
|
@@ -133,17 +131,16 @@ files:
|
|
|
133
131
|
- templates/spec/support/action_mailer.rb
|
|
134
132
|
- templates/spec/support/database_cleaner_rspec.rb
|
|
135
133
|
- templates/spec/support/factory_girl_rspec.rb
|
|
136
|
-
- templates/spec/support/i18n.rb
|
|
137
134
|
- templates/tasks/bundler_audit.rake
|
|
138
135
|
- templates/tasks/development_seeds.rake
|
|
139
|
-
- templates/views/application/_analytics.html.
|
|
140
|
-
- templates/views/application/_flashes.html.
|
|
141
|
-
- templates/views/application/_footer.html.
|
|
142
|
-
- templates/views/application/_javascript.html.
|
|
143
|
-
- templates/views/application/_navigation.html.
|
|
144
|
-
- templates/views/application/_navigation_links.html.
|
|
145
|
-
- templates/views/layouts/application.html.
|
|
146
|
-
- templates/views/pages/home.html.
|
|
136
|
+
- templates/views/application/_analytics.html.erb
|
|
137
|
+
- templates/views/application/_flashes.html.erb
|
|
138
|
+
- templates/views/application/_footer.html.erb
|
|
139
|
+
- templates/views/application/_javascript.html.erb
|
|
140
|
+
- templates/views/application/_navigation.html.erb
|
|
141
|
+
- templates/views/application/_navigation_links.html.erb
|
|
142
|
+
- templates/views/layouts/application.html.erb.erb
|
|
143
|
+
- templates/views/pages/home.html.erb
|
|
147
144
|
homepage: http://github.com/Anadea/spark
|
|
148
145
|
licenses:
|
|
149
146
|
- MIT
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Rack::Timeout.timeout = ENV["RACK_TIMEOUT"].to_i if ENV.key?("RACK_TIMEOUT")
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
%nav.navbar.navbar-default
|
|
2
|
-
.container
|
|
3
|
-
.navbar-header
|
|
4
|
-
%button.navbar-toggle{"data-target" => ".navbar-collapse", "data-toggle" => "collapse", :type => "button"}
|
|
5
|
-
%span.sr-only Toggle navigation
|
|
6
|
-
%span.icon-bar
|
|
7
|
-
%span.icon-bar
|
|
8
|
-
%span.icon-bar
|
|
9
|
-
= link_to 'Home', root_path, class: 'navbar-brand'
|
|
10
|
-
.collapse.navbar-collapse
|
|
11
|
-
%ul.nav.navbar-nav
|
|
12
|
-
= render 'navigation_links'
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
!!!
|
|
2
|
-
%html
|
|
3
|
-
%head
|
|
4
|
-
%meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/
|
|
5
|
-
%meta{:charset => "utf-8"}/
|
|
6
|
-
%meta{:content => "NOODP", :name => "ROBOTS"}/
|
|
7
|
-
%meta{:content => "initial-scale=1", :name => "viewport"}/
|
|
8
|
-
%title= title
|
|
9
|
-
= stylesheet_link_tag :application, media: "all"
|
|
10
|
-
= csrf_meta_tags
|
|
11
|
-
%body
|
|
12
|
-
#wrap
|
|
13
|
-
%header
|
|
14
|
-
= render 'navigation'
|
|
15
|
-
.container
|
|
16
|
-
.row
|
|
17
|
-
.col-sm-6.col-sm-offset-3.text-center
|
|
18
|
-
= render 'flashes'
|
|
19
|
-
.row
|
|
20
|
-
.col-sm-12
|
|
21
|
-
= yield
|
|
22
|
-
= render 'footer'
|
|
23
|
-
= render 'javascript'
|