archangel 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE.md +7 -15
  3. data/.github/PULL_REQUEST_TEMPLATE.md +0 -5
  4. data/.gitignore +1 -0
  5. data/.hound.yml +2 -2
  6. data/.jshintignore +5 -0
  7. data/.jshintrc +28 -0
  8. data/.nvmrc +1 -0
  9. data/CONTRIBUTING.md +13 -114
  10. data/Gemfile +3 -3
  11. data/README.md +12 -37
  12. data/Rakefile +11 -0
  13. data/app/controllers/archangel/application_controller.rb +1 -2
  14. data/archangel.gemspec +3 -1
  15. data/bin/archangel +15 -0
  16. data/docs/Developers.md +122 -1
  17. data/docs/Extension/Controllers.md +139 -0
  18. data/docs/Extension/Developers.md +27 -0
  19. data/docs/Extension/Helpers.md +17 -0
  20. data/docs/Extension/Ideas.md +131 -0
  21. data/docs/Extension/Models.md +32 -0
  22. data/docs/Extension/Policies.md +42 -0
  23. data/docs/Extension/Routes.md +26 -0
  24. data/docs/Extension/Uploaders.md +3 -0
  25. data/docs/Extension/Views.md +3 -0
  26. data/docs/Release.md +9 -3
  27. data/docs/Theme/Developers.md +7 -0
  28. data/lib/archangel/command/extension.rb +97 -0
  29. data/lib/archangel/command/templates/extension/.editorconfig +19 -0
  30. data/lib/archangel/command/templates/extension/.gitignore +11 -0
  31. data/lib/archangel/command/templates/extension/.rspec +2 -0
  32. data/lib/archangel/command/templates/extension/.rubocop.yml +32 -0
  33. data/lib/archangel/command/templates/extension/Gemfile +29 -0
  34. data/lib/archangel/command/templates/extension/MIT-LICENSE +21 -0
  35. data/lib/archangel/command/templates/extension/README.md +79 -0
  36. data/lib/archangel/command/templates/extension/Rakefile +25 -0
  37. data/lib/archangel/command/templates/extension/app/assets/javascripts/archangel/auth/%extension_name%.js.tt +3 -0
  38. data/lib/archangel/command/templates/extension/app/assets/javascripts/archangel/backend/%extension_name%.js.tt +3 -0
  39. data/lib/archangel/command/templates/extension/app/assets/javascripts/archangel/frontend/%extension_name%.js.tt +3 -0
  40. data/lib/archangel/command/templates/extension/app/assets/stylesheets/archangel/auth/%extension_name%.css.tt +5 -0
  41. data/lib/archangel/command/templates/extension/app/assets/stylesheets/archangel/backend/%extension_name%.css.tt +5 -0
  42. data/lib/archangel/command/templates/extension/app/assets/stylesheets/archangel/frontend/%extension_name%.css.tt +5 -0
  43. data/lib/archangel/command/templates/extension/bin/rails.tt +11 -0
  44. data/lib/archangel/command/templates/extension/config/locales/en.yml.tt +4 -0
  45. data/lib/archangel/command/templates/extension/config/routes.rb +5 -0
  46. data/lib/archangel/command/templates/extension/extension.gemspec +25 -0
  47. data/lib/archangel/command/templates/extension/lib/%extension_name%/engine.rb.tt +29 -0
  48. data/lib/archangel/command/templates/extension/lib/%extension_name%/factories.rb.tt +13 -0
  49. data/lib/archangel/command/templates/extension/lib/%extension_name%/version.rb.tt +5 -0
  50. data/lib/archangel/command/templates/extension/lib/%extension_name%.rb.tt +9 -0
  51. data/lib/archangel/command/templates/extension/lib/generators/%extension_name%/install/install_generator.rb.tt +42 -0
  52. data/lib/archangel/command/templates/extension/spec/rails_helper.rb.tt +41 -0
  53. data/lib/archangel/command/templates/extension/spec/spec_helper.rb +22 -0
  54. data/lib/archangel/command/templates/extension/spec/support/.keep +0 -0
  55. data/lib/archangel/liquid/drop.rb +21 -11
  56. data/lib/archangel/liquid_view.rb +7 -31
  57. data/lib/archangel/version.rb +1 -1
  58. data/lib/generators/archangel/dummy/dummy_generator.rb +1 -0
  59. data/package.json +8 -3
  60. data/spec/lib/archangel/command/extension_spec.rb +100 -0
  61. data/spec/lib/archangel/liquid/drop_spec.rb +10 -0
  62. data/spec/lib/archangel/liquid/drops/page_drop_spec.rb +77 -0
  63. data/spec/lib/archangel/liquid/drops/site_drop_spec.rb +78 -0
  64. data/spec/lib/archangel/liquid/filters/link_to_filter_spec.rb +0 -4
  65. data/spec/lib/archangel/liquid/tags/collection_tag_spec.rb +0 -1
  66. data/spec/lib/archangel/liquid/tags/collectionfor_tag_spec.rb +0 -1
  67. data/spec/lib/archangel/liquid/tags/theme_javascript_tag_spec.rb +4 -3
  68. data/spec/lib/archangel/liquid/tags/theme_stylesheet_tag_spec.rb +4 -3
  69. metadata +64 -6
  70. data/docs/ExtensionDevelopers.md +0 -3
  71. data/docs/ExtensionIdeas.md +0 -132
  72. data/docs/ThemeDevelopers.md +0 -3
@@ -7,9 +7,10 @@ module Archangel
7
7
  module Tags
8
8
  RSpec.describe ThemeJavascriptTag, type: :liquid_tag,
9
9
  disable: :verify_partial_doubles do
10
- before { create(:site) }
11
-
12
- let(:context) { ::Liquid::Context.new({}, {}, view: view) }
10
+ let(:site) { create(:site) }
11
+ let(:context) do
12
+ ::Liquid::Context.new({ "site" => site }, {}, view: view)
13
+ end
13
14
 
14
15
  it "renders Javascript tag for theme" do
15
16
  allow(view).to receive(:current_theme).and_return("default")
@@ -7,9 +7,10 @@ module Archangel
7
7
  module Tags
8
8
  RSpec.describe ThemeStylesheetTag, type: :liquid_tag,
9
9
  disable: :verify_partial_doubles do
10
- before { create(:site) }
11
-
12
- let(:context) { ::Liquid::Context.new({}, {}, view: view) }
10
+ let(:site) { create(:site) }
11
+ let(:context) do
12
+ ::Liquid::Context.new({ "site" => site }, {}, view: view)
13
+ end
13
14
 
14
15
  it "renders stylesheet tag for theme" do
15
16
  allow(view).to receive(:current_theme).and_return("default")
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: archangel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Freerksen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-25 00:00:00.000000000 Z
11
+ date: 2018-05-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jquery-rails
@@ -440,6 +440,20 @@ dependencies:
440
440
  - - "~>"
441
441
  - !ruby/object:Gem::Version
442
442
  version: '4.0'
443
+ - !ruby/object:Gem::Dependency
444
+ name: thor
445
+ requirement: !ruby/object:Gem::Requirement
446
+ requirements:
447
+ - - "~>"
448
+ - !ruby/object:Gem::Version
449
+ version: '0.19'
450
+ type: :runtime
451
+ prerelease: false
452
+ version_requirements: !ruby/object:Gem::Requirement
453
+ requirements:
454
+ - - "~>"
455
+ - !ruby/object:Gem::Version
456
+ version: '0.19'
443
457
  - !ruby/object:Gem::Dependency
444
458
  name: validates
445
459
  requirement: !ruby/object:Gem::Requirement
@@ -457,7 +471,9 @@ dependencies:
457
471
  description: Archangel is a Rails CMS
458
472
  email:
459
473
  - dfreerksen@gmail.com
460
- executables: []
474
+ executables:
475
+ - archangel
476
+ - rails
461
477
  extensions: []
462
478
  extra_rdoc_files: []
463
479
  files:
@@ -469,7 +485,10 @@ files:
469
485
  - ".github/PULL_REQUEST_TEMPLATE.md"
470
486
  - ".gitignore"
471
487
  - ".hound.yml"
488
+ - ".jshintignore"
489
+ - ".jshintrc"
472
490
  - ".mdlrc"
491
+ - ".nvmrc"
473
492
  - ".reek"
474
493
  - ".rspec"
475
494
  - ".rubocop.yml"
@@ -762,6 +781,7 @@ files:
762
781
  - app/views/kaminari/_prev_page.html.erb
763
782
  - archangel.gemspec
764
783
  - archangel.png
784
+ - bin/archangel
765
785
  - bin/rails
766
786
  - config/brakeman.yml
767
787
  - config/initializers/assets.rb
@@ -791,12 +811,46 @@ files:
791
811
  - db/migrate/20171006195023_create_archangel_entries.rb
792
812
  - db/seeds.rb
793
813
  - docs/Developers.md
794
- - docs/ExtensionDevelopers.md
795
- - docs/ExtensionIdeas.md
814
+ - docs/Extension/Controllers.md
815
+ - docs/Extension/Developers.md
816
+ - docs/Extension/Helpers.md
817
+ - docs/Extension/Ideas.md
818
+ - docs/Extension/Models.md
819
+ - docs/Extension/Policies.md
820
+ - docs/Extension/Routes.md
821
+ - docs/Extension/Uploaders.md
822
+ - docs/Extension/Views.md
796
823
  - docs/Release.md
797
- - docs/ThemeDevelopers.md
824
+ - docs/Theme/Developers.md
798
825
  - lib/archangel.rb
799
826
  - lib/archangel/application_responder.rb
827
+ - lib/archangel/command/extension.rb
828
+ - lib/archangel/command/templates/extension/.editorconfig
829
+ - lib/archangel/command/templates/extension/.gitignore
830
+ - lib/archangel/command/templates/extension/.rspec
831
+ - lib/archangel/command/templates/extension/.rubocop.yml
832
+ - lib/archangel/command/templates/extension/Gemfile
833
+ - lib/archangel/command/templates/extension/MIT-LICENSE
834
+ - lib/archangel/command/templates/extension/README.md
835
+ - lib/archangel/command/templates/extension/Rakefile
836
+ - lib/archangel/command/templates/extension/app/assets/javascripts/archangel/auth/%extension_name%.js.tt
837
+ - lib/archangel/command/templates/extension/app/assets/javascripts/archangel/backend/%extension_name%.js.tt
838
+ - lib/archangel/command/templates/extension/app/assets/javascripts/archangel/frontend/%extension_name%.js.tt
839
+ - lib/archangel/command/templates/extension/app/assets/stylesheets/archangel/auth/%extension_name%.css.tt
840
+ - lib/archangel/command/templates/extension/app/assets/stylesheets/archangel/backend/%extension_name%.css.tt
841
+ - lib/archangel/command/templates/extension/app/assets/stylesheets/archangel/frontend/%extension_name%.css.tt
842
+ - lib/archangel/command/templates/extension/bin/rails.tt
843
+ - lib/archangel/command/templates/extension/config/locales/en.yml.tt
844
+ - lib/archangel/command/templates/extension/config/routes.rb
845
+ - lib/archangel/command/templates/extension/extension.gemspec
846
+ - lib/archangel/command/templates/extension/lib/%extension_name%.rb.tt
847
+ - lib/archangel/command/templates/extension/lib/%extension_name%/engine.rb.tt
848
+ - lib/archangel/command/templates/extension/lib/%extension_name%/factories.rb.tt
849
+ - lib/archangel/command/templates/extension/lib/%extension_name%/version.rb.tt
850
+ - lib/archangel/command/templates/extension/lib/generators/%extension_name%/install/install_generator.rb.tt
851
+ - lib/archangel/command/templates/extension/spec/rails_helper.rb.tt
852
+ - lib/archangel/command/templates/extension/spec/spec_helper.rb
853
+ - lib/archangel/command/templates/extension/spec/support/.keep
800
854
  - lib/archangel/config.rb
801
855
  - lib/archangel/constants/language.rb
802
856
  - lib/archangel/constants/role.rb
@@ -920,6 +974,10 @@ files:
920
974
  - spec/inputs/archangel/time_picker_input_spec.rb
921
975
  - spec/inputs/archangel/wysiwyg_input_spec.rb
922
976
  - spec/jobs/archangel/application_job_spec.rb
977
+ - spec/lib/archangel/command/extension_spec.rb
978
+ - spec/lib/archangel/liquid/drop_spec.rb
979
+ - spec/lib/archangel/liquid/drops/page_drop_spec.rb
980
+ - spec/lib/archangel/liquid/drops/site_drop_spec.rb
923
981
  - spec/lib/archangel/liquid/filters/link_to_filter_spec.rb
924
982
  - spec/lib/archangel/liquid/tags/application_tag_spec.rb
925
983
  - spec/lib/archangel/liquid/tags/asset_tag_spec.rb
@@ -1,3 +0,0 @@
1
- # Extension Developers
2
-
3
- TODO
@@ -1,132 +0,0 @@
1
- # Extension Ideas
2
-
3
- In no particular order
4
-
5
- - Preview
6
- - Page preview
7
- - Angular
8
- - Helper extension to include for themes built with Angular
9
- - React
10
- - Helper extension to include for themes built with React
11
- - Vue
12
- - Helper extension to include for themes built with Vue
13
- - Aurelia
14
- - Helper extension to include for themes built with Aurelia
15
- - Search
16
- - Elasticsearch
17
- - Ransack
18
- - Comments
19
- - Facebook
20
- - Disqus
21
- - Database
22
- - Auto approve
23
- - Manual approve
24
- - Migrate
25
- - Export for Wordpress
26
- - Export for Refinary
27
- - Import from Wordpress
28
- - Import from Refinary
29
- - Forms
30
- - WYSIWYG form custom form builder
31
- - Honeypot
32
- - Time
33
- - Captcha
34
- - Multi-tenant
35
- - Types
36
- - Domain
37
- - Subdomain
38
- - Schema switching
39
- - Manage domains
40
- - CLI to create schemas
41
- - Worker to create schemas
42
- - Notifications
43
- - Notify when errors happen
44
- - Adapaters
45
- - Slack
46
- - Hipchat
47
- - Email
48
- - json_ld
49
- - API
50
- - CORS
51
- - Rate limits
52
- - GraphQL
53
- - Social Like
54
- - Types
55
- - Facebook
56
- - Database
57
- - Toggle enabled/disabled by default
58
- - Toggle enabled/disabled per page
59
- - Social Share
60
- - Toggle enabled/disabled by default
61
- - Toggle enabled/disabled per page
62
- - robots.txt
63
- - RSS feed
64
- - Sitemap
65
- - Columns
66
- - changefreq
67
- - always
68
- - hourly
69
- - daily
70
- - weekly
71
- - monthly
72
- - yearly
73
- - never
74
- - priority
75
- - 0.0..1.0
76
- - sitemap.xml
77
- - sitemap.xml.gz
78
- - Update robots.txt
79
- - Rebuild on Page save (worker)
80
- - Notify search engines
81
- - 2FA
82
- - Opt-in
83
- - Force all
84
- - Oauth
85
- - Splash Page
86
- - Types
87
- - Overlay
88
- - Redirect
89
- - Start At
90
- - End At
91
- - Remember with Javascript cookie
92
- - Cookie lifetime
93
- - Pixel trackers
94
- - Location
95
- - Head
96
- - Body (top)
97
- - Body (bottom)
98
- - Statistics/Analytics
99
- - Google Analytics
100
- - Graphs/Charts
101
- - History/Versions
102
- - Roll back to previous versions
103
- - Activity
104
- - Log activity in backend
105
- - Icons
106
- - favicon
107
- - Apple
108
- - Android
109
- - Windows
110
- - Stylesheet
111
- - Site Stylesheet
112
- - Per page Stylesheet
113
- - Javascript
114
- - Site Javascript
115
- - Per page Javascript
116
- - Community
117
- - Allow registering
118
- - User listing
119
- - User profile
120
- - User search/filter
121
- - Friends/Followers
122
- - Events
123
- - Calendar
124
- - Reoccurring events
125
- - Reminders
126
- - sms
127
- - email
128
- - Static
129
- - Generate static frontend site
130
- - Help
131
- - Help and instructions for each section in Backend
132
- - Monetize YouTube videos
@@ -1,3 +0,0 @@
1
- # Theme Developers
2
-
3
- TODO