archangel 0.0.2 → 0.0.3

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.
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