better_ui 0.1.0 → 0.2.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.
Files changed (142) hide show
  1. checksums.yaml +4 -4
  2. data/MIT-LICENSE +1 -1
  3. data/README.md +225 -119
  4. data/app/assets/stylesheets/better_ui/application.css +0 -356
  5. data/app/components/better_ui/application/card/component.html.erb +20 -0
  6. data/app/components/better_ui/application/card/component.rb +214 -0
  7. data/app/components/better_ui/application/main/component.html.erb +9 -0
  8. data/app/components/better_ui/application/main/component.rb +123 -0
  9. data/app/components/better_ui/application/navbar/component.html.erb +92 -0
  10. data/app/components/better_ui/application/navbar/component.rb +136 -0
  11. data/app/components/better_ui/application/sidebar/component.html.erb +190 -0
  12. data/app/components/better_ui/application/sidebar/component.rb +129 -0
  13. data/app/components/better_ui/general/alert/component.html.erb +32 -0
  14. data/app/components/better_ui/general/alert/component.rb +242 -0
  15. data/app/components/better_ui/general/avatar/component.html.erb +20 -0
  16. data/app/components/better_ui/general/avatar/component.rb +301 -0
  17. data/app/components/better_ui/general/badge/component.html.erb +23 -0
  18. data/app/components/better_ui/general/badge/component.rb +248 -0
  19. data/app/components/better_ui/general/breadcrumb/component.html.erb +15 -0
  20. data/app/components/better_ui/general/breadcrumb/component.rb +187 -0
  21. data/app/components/better_ui/general/button/component.html.erb +34 -0
  22. data/app/components/better_ui/general/button/component.rb +214 -0
  23. data/app/components/better_ui/general/divider/component.html.erb +10 -0
  24. data/app/components/better_ui/general/divider/component.rb +226 -0
  25. data/app/components/better_ui/general/dropdown/component.html.erb +14 -0
  26. data/app/components/better_ui/general/dropdown/component.rb +219 -0
  27. data/app/components/better_ui/general/dropdown/divider_component.html.erb +1 -0
  28. data/app/components/better_ui/general/dropdown/divider_component.rb +41 -0
  29. data/app/components/better_ui/general/dropdown/item_component.html.erb +6 -0
  30. data/app/components/better_ui/general/dropdown/item_component.rb +118 -0
  31. data/app/components/better_ui/general/field/component.html.erb +27 -0
  32. data/app/components/better_ui/general/field/component.rb +37 -0
  33. data/app/components/better_ui/general/heading/component.html.erb +22 -0
  34. data/app/components/better_ui/general/heading/component.rb +257 -0
  35. data/app/components/better_ui/general/icon/component.html.erb +7 -0
  36. data/app/components/better_ui/general/icon/component.rb +239 -0
  37. data/app/components/better_ui/general/input/checkbox/component.html.erb +5 -0
  38. data/app/components/better_ui/general/input/checkbox/component.rb +238 -0
  39. data/app/components/better_ui/general/input/datetime/component.html.erb +5 -0
  40. data/app/components/better_ui/general/input/datetime/component.rb +223 -0
  41. data/app/components/better_ui/general/input/radio/component.html.erb +5 -0
  42. data/app/components/better_ui/general/input/radio/component.rb +230 -0
  43. data/app/components/better_ui/general/input/select/component.html.erb +16 -0
  44. data/app/components/better_ui/general/input/select/component.rb +184 -0
  45. data/app/components/better_ui/general/input/select/select_component.html.erb +5 -0
  46. data/app/components/better_ui/general/input/select/select_component.rb +37 -0
  47. data/app/components/better_ui/general/input/text/component.html.erb +5 -0
  48. data/app/components/better_ui/general/input/text/component.rb +171 -0
  49. data/app/components/better_ui/general/input/textarea/component.html.erb +5 -0
  50. data/app/components/better_ui/general/input/textarea/component.rb +166 -0
  51. data/app/components/better_ui/general/link/component.html.erb +18 -0
  52. data/app/components/better_ui/general/link/component.rb +258 -0
  53. data/app/components/better_ui/general/modal/component.html.erb +42 -0
  54. data/app/components/better_ui/general/modal/component.rb +165 -0
  55. data/app/components/better_ui/general/pagination/component.html.erb +85 -0
  56. data/app/components/better_ui/general/pagination/component.rb +216 -0
  57. data/app/components/better_ui/general/panel/component.html.erb +28 -0
  58. data/app/components/better_ui/general/panel/component.rb +249 -0
  59. data/app/components/better_ui/general/progress/component.html.erb +11 -0
  60. data/app/components/better_ui/general/progress/component.rb +160 -0
  61. data/app/components/better_ui/general/spinner/component.html.erb +35 -0
  62. data/app/components/better_ui/general/spinner/component.rb +93 -0
  63. data/app/components/better_ui/general/table/component.html.erb +5 -0
  64. data/app/components/better_ui/general/table/component.rb +217 -0
  65. data/app/components/better_ui/general/table/tbody_component.html.erb +3 -0
  66. data/app/components/better_ui/general/table/tbody_component.rb +30 -0
  67. data/app/components/better_ui/general/table/td_component.html.erb +3 -0
  68. data/app/components/better_ui/general/table/td_component.rb +44 -0
  69. data/app/components/better_ui/general/table/tfoot_component.html.erb +3 -0
  70. data/app/components/better_ui/general/table/tfoot_component.rb +28 -0
  71. data/app/components/better_ui/general/table/th_component.html.erb +6 -0
  72. data/app/components/better_ui/general/table/th_component.rb +51 -0
  73. data/app/components/better_ui/general/table/thead_component.html.erb +3 -0
  74. data/app/components/better_ui/general/table/thead_component.rb +28 -0
  75. data/app/components/better_ui/general/table/tr_component.html.erb +3 -0
  76. data/app/components/better_ui/general/table/tr_component.rb +30 -0
  77. data/app/components/better_ui/general/tabs/component.html.erb +3 -0
  78. data/app/components/better_ui/general/tabs/component.rb +102 -0
  79. data/app/components/better_ui/general/tabs/panel_component.html.erb +3 -0
  80. data/app/components/better_ui/general/tabs/panel_component.rb +37 -0
  81. data/app/components/better_ui/general/tabs/tab_component.html.erb +13 -0
  82. data/app/components/better_ui/general/tabs/tab_component.rb +111 -0
  83. data/app/components/better_ui/general/tag/component.html.erb +3 -0
  84. data/app/components/better_ui/general/tag/component.rb +104 -0
  85. data/app/components/better_ui/general/tooltip/component.html.erb +7 -0
  86. data/app/components/better_ui/general/tooltip/component.rb +239 -0
  87. data/app/helpers/better_ui/application/components/card/card_helper.rb +96 -0
  88. data/app/helpers/better_ui/application/components/card.rb +11 -0
  89. data/app/helpers/better_ui/application/components/main/main_helper.rb +64 -0
  90. data/app/helpers/better_ui/application/components/navbar/navbar_helper.rb +77 -0
  91. data/app/helpers/better_ui/application/components/sidebar/sidebar_helper.rb +51 -0
  92. data/app/helpers/better_ui/application_helper.rb +51 -179
  93. data/app/helpers/better_ui/general/components/alert/alert_helper.rb +57 -0
  94. data/app/helpers/better_ui/general/components/avatar/avatar_helper.rb +29 -0
  95. data/app/helpers/better_ui/general/components/badge/badge_helper.rb +53 -0
  96. data/app/helpers/better_ui/general/components/breadcrumb/breadcrumb_helper.rb +37 -0
  97. data/app/helpers/better_ui/general/components/button/button_helper.rb +65 -0
  98. data/app/helpers/better_ui/general/components/container/container_helper.rb +60 -0
  99. data/app/helpers/better_ui/general/components/divider/divider_helper.rb +63 -0
  100. data/app/helpers/better_ui/general/components/dropdown/divider_helper.rb +32 -0
  101. data/app/helpers/better_ui/general/components/dropdown/dropdown_helper.rb +79 -0
  102. data/app/helpers/better_ui/general/components/dropdown/item_helper.rb +62 -0
  103. data/app/helpers/better_ui/general/components/field/field_helper.rb +26 -0
  104. data/app/helpers/better_ui/general/components/heading/heading_helper.rb +72 -0
  105. data/app/helpers/better_ui/general/components/icon/icon_helper.rb +16 -0
  106. data/app/helpers/better_ui/general/components/input/checkbox/checkbox_helper.rb +81 -0
  107. data/app/helpers/better_ui/general/components/input/datetime/datetime_helper.rb +91 -0
  108. data/app/helpers/better_ui/general/components/input/radio/radio_helper.rb +79 -0
  109. data/app/helpers/better_ui/general/components/input/radio_group/radio_group_helper.rb +124 -0
  110. data/app/helpers/better_ui/general/components/input/select/select_helper.rb +70 -0
  111. data/app/helpers/better_ui/general/components/input/text/text_helper.rb +138 -0
  112. data/app/helpers/better_ui/general/components/input/textarea/textarea_helper.rb +73 -0
  113. data/app/helpers/better_ui/general/components/link/link_helper.rb +89 -0
  114. data/app/helpers/better_ui/general/components/modal/modal_helper.rb +95 -0
  115. data/app/helpers/better_ui/general/components/pagination/pagination_helper.rb +82 -0
  116. data/app/helpers/better_ui/general/components/panel/panel_helper.rb +83 -0
  117. data/app/helpers/better_ui/general/components/progress/progress_helper.rb +53 -0
  118. data/app/helpers/better_ui/general/components/spinner/spinner_helper.rb +19 -0
  119. data/app/helpers/better_ui/general/components/table/table_helper.rb +53 -0
  120. data/app/helpers/better_ui/general/components/table/tbody_helper.rb +13 -0
  121. data/app/helpers/better_ui/general/components/table/td_helper.rb +19 -0
  122. data/app/helpers/better_ui/general/components/table/tfoot_helper.rb +13 -0
  123. data/app/helpers/better_ui/general/components/table/th_helper.rb +19 -0
  124. data/app/helpers/better_ui/general/components/table/thead_helper.rb +13 -0
  125. data/app/helpers/better_ui/general/components/table/tr_helper.rb +13 -0
  126. data/app/helpers/better_ui/general/components/tabs/panel_helper.rb +62 -0
  127. data/app/helpers/better_ui/general/components/tabs/tab_helper.rb +55 -0
  128. data/app/helpers/better_ui/general/components/tabs/tabs_helper.rb +62 -0
  129. data/app/helpers/better_ui/general/components/tag/tag_helper.rb +26 -0
  130. data/app/helpers/better_ui/general/components/tooltip/tooltip_helper.rb +60 -0
  131. data/app/views/layouts/better_ui/application.html.erb +6 -124
  132. data/config/initializers/lookbook.rb +23 -0
  133. data/config/routes.rb +0 -8
  134. data/lib/better_ui/engine.rb +5 -19
  135. data/lib/better_ui/railtie.rb +20 -0
  136. data/lib/better_ui/version.rb +1 -1
  137. data/lib/better_ui.rb +4 -20
  138. metadata +155 -28
  139. data/app/controllers/better_ui/docs_controller.rb +0 -41
  140. data/app/views/better_ui/docs/component.html.erb +0 -365
  141. data/app/views/better_ui/docs/index.html.erb +0 -100
  142. data/app/views/better_ui/docs/show.html.erb +0 -60
@@ -1,135 +1,17 @@
1
1
  <!DOCTYPE html>
2
2
  <html>
3
3
  <head>
4
- <title>BetterUI - <%= yield(:title) || 'Componenti UI per Rails' %></title>
5
- <meta name="viewport" content="width=device-width,initial-scale=1">
4
+ <title>Better ui</title>
6
5
  <%= csrf_meta_tags %>
7
6
  <%= csp_meta_tag %>
8
7
 
9
- <%= stylesheet_link_tag "better_ui/application" %>
8
+ <%= yield :head %>
10
9
 
11
- <style>
12
- body {
13
- font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
14
- line-height: 1.5;
15
- color: #333;
16
- margin: 0;
17
- padding: 0;
18
- }
19
-
20
- .better-ui-container {
21
- width: 100%;
22
- max-width: 1200px;
23
- margin: 0 auto;
24
- padding: 1rem;
25
- }
26
-
27
- .better-ui-sidebar {
28
- width: 250px;
29
- padding: 1rem;
30
- background-color: #f5f5f5;
31
- border-right: 1px solid #e0e0e0;
32
- position: fixed;
33
- top: 0;
34
- left: 0;
35
- bottom: 0;
36
- overflow-y: auto;
37
- }
38
-
39
- .better-ui-content {
40
- margin-left: 250px;
41
- padding: 2rem;
42
- }
43
-
44
- .better-ui-nav-title {
45
- font-size: 1.25rem;
46
- font-weight: 600;
47
- margin-bottom: 1rem;
48
- }
49
-
50
- .better-ui-nav-list {
51
- list-style: none;
52
- padding: 0;
53
- margin: 0;
54
- }
55
-
56
- .better-ui-nav-item {
57
- margin-bottom: 0.5rem;
58
- }
59
-
60
- .better-ui-nav-link {
61
- color: #333;
62
- text-decoration: none;
63
- padding: 0.5rem;
64
- display: block;
65
- border-radius: 4px;
66
- }
67
-
68
- .better-ui-nav-link:hover {
69
- background-color: #e0e0e0;
70
- }
71
-
72
- .better-ui-nav-link.active {
73
- background-color: #007bff;
74
- color: white;
75
- }
76
- </style>
10
+ <%= stylesheet_link_tag "better_ui/application", media: "all" %>
77
11
  </head>
12
+ <body style="padding: 10px;">
13
+
14
+ <%= yield %>
78
15
 
79
- <body>
80
- <div class="better-ui-container">
81
- <div class="better-ui-sidebar">
82
- <div class="better-ui-nav-title">BetterUI</div>
83
- <nav>
84
- <div class="better-ui-nav-section">
85
- <h3>Documentazione</h3>
86
- <ul class="better-ui-nav-list">
87
- <li class="better-ui-nav-item">
88
- <%= link_to "Guida all'installazione", better_ui.docs_page_path('installation'), class: "better-ui-nav-link" %>
89
- </li>
90
- <li class="better-ui-nav-item">
91
- <%= link_to "Personalizzazione", better_ui.docs_page_path('customization'), class: "better-ui-nav-link" %>
92
- </li>
93
- </ul>
94
- </div>
95
-
96
- <div class="better-ui-nav-section">
97
- <h3>Componenti</h3>
98
- <ul class="better-ui-nav-list">
99
- <% if @components %>
100
- <% @components.each do |component| %>
101
- <li class="better-ui-nav-item">
102
- <%= link_to component[:name], component[:path], class: "better-ui-nav-link" %>
103
- </li>
104
- <% end %>
105
- <% else %>
106
- <li class="better-ui-nav-item">
107
- <%= link_to "Button", better_ui.docs_component_path('button'), class: "better-ui-nav-link" %>
108
- </li>
109
- <li class="better-ui-nav-item">
110
- <%= link_to "Alert", better_ui.docs_component_path('alert'), class: "better-ui-nav-link" %>
111
- </li>
112
- <li class="better-ui-nav-item">
113
- <%= link_to "Card", better_ui.docs_component_path('card'), class: "better-ui-nav-link" %>
114
- </li>
115
- <li class="better-ui-nav-item">
116
- <%= link_to "Modal", better_ui.docs_component_path('modal'), class: "better-ui-nav-link" %>
117
- </li>
118
- <li class="better-ui-nav-item">
119
- <%= link_to "Tabs", better_ui.docs_component_path('tabs'), class: "better-ui-nav-link" %>
120
- </li>
121
- <li class="better-ui-nav-item">
122
- <%= link_to "Form Elements", better_ui.docs_component_path('form_elements'), class: "better-ui-nav-link" %>
123
- </li>
124
- <% end %>
125
- </ul>
126
- </div>
127
- </nav>
128
- </div>
129
-
130
- <div class="better-ui-content">
131
- <%= yield %>
132
- </div>
133
- </div>
134
16
  </body>
135
17
  </html>
@@ -0,0 +1,23 @@
1
+ if defined?(Lookbook)
2
+ Lookbook.configure do |config|
3
+ # Configura la directory delle preview dei componenti
4
+ config.preview_paths << BetterUi::Engine.root.join("test/components/previews")
5
+
6
+ # Configura il titolo della pagina Lookbook
7
+ config.page_title = "BetterUI - Catalogo Componenti"
8
+
9
+ # Configura i tag principali
10
+ config.preview_display_names = {
11
+ "BetterUi::General" => "Componenti Generali",
12
+ "BetterUi::Application" => "Componenti Applicazione",
13
+ "BetterUi::Website" => "Componenti Sito Web"
14
+ }
15
+
16
+ # Per supportare i componenti ViewComponent
17
+ config.listen_for_changes = {
18
+ component: "app/components/**/*.rb",
19
+ preview: "test/components/previews/**/*_preview.rb",
20
+ template: "app/components/**/*.erb"
21
+ }
22
+ end
23
+ end
data/config/routes.rb CHANGED
@@ -1,10 +1,2 @@
1
1
  BetterUi::Engine.routes.draw do
2
- # Route principale per la documentazione
3
- root to: 'docs#index'
4
-
5
- # Route per le pagine di documentazione generiche
6
- get 'docs/:page', to: 'docs#show', as: :docs_page
7
-
8
- # Route per la documentazione dei componenti specifici
9
- get 'docs/components/:component', to: 'docs#component', as: :docs_component
10
2
  end
@@ -1,29 +1,15 @@
1
- require 'view_component'
2
- require 'redcarpet'
3
- require 'tailwindcss-rails'
4
-
5
1
  module BetterUi
6
2
  class Engine < ::Rails::Engine
7
3
  isolate_namespace BetterUi
8
-
9
- # Configurazione per rendere disponibili gli assets all'applicazione host
10
- initializer 'better_ui.assets' do |app|
11
- app.config.assets.paths << root.join('app', 'assets', 'stylesheets')
12
- app.config.assets.paths << root.join('app', 'assets', 'images')
13
- end
14
-
15
- # Configurazione per rendere disponibili i componenti all'applicazione host
16
- initializer 'better_ui.view_helpers' do
4
+
5
+ initializer "better_ui.view_helpers" do
17
6
  ActiveSupport.on_load :action_controller do
18
- helper BetterUi::ApplicationHelper
7
+ helper BetterUi::ApplicationHelper if defined?(BetterUi::ApplicationHelper)
19
8
  end
20
-
9
+
21
10
  ActiveSupport.on_load :action_view do
22
- include BetterUi::ApplicationHelper
11
+ include BetterUi::ApplicationHelper if defined?(BetterUi::ApplicationHelper)
23
12
  end
24
13
  end
25
-
26
- # Configurazione per ViewComponent
27
- config.view_component.preview_paths << root.join('spec', 'components', 'previews')
28
14
  end
29
15
  end
@@ -0,0 +1,20 @@
1
+ module BetterUi
2
+ class Railtie < ::Rails::Railtie
3
+ config.after_initialize do
4
+ # Configure Lookbook to include BetterUI previews if Lookbook is available
5
+ if defined?(Lookbook)
6
+ # Get the gem's root path
7
+ gem_root = Gem.loaded_specs["better_ui"]&.gem_dir
8
+
9
+ if gem_root
10
+ # Add the gem's preview path to Lookbook
11
+ preview_path = File.join(gem_root, "spec", "components", "previews")
12
+
13
+ if File.directory?(preview_path)
14
+ Lookbook.config.preview_paths << preview_path
15
+ end
16
+ end
17
+ end
18
+ end
19
+ end
20
+ end
@@ -1,3 +1,3 @@
1
1
  module BetterUi
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2.0"
3
3
  end
data/lib/better_ui.rb CHANGED
@@ -1,25 +1,9 @@
1
1
  require "better_ui/version"
2
2
  require "better_ui/engine"
3
+ require "better_ui/railtie"
4
+
5
+ require "font-awesome-sass"
3
6
 
4
7
  module BetterUi
5
- class Configuration
6
- attr_accessor :button_defaults, :alert_defaults, :card_defaults, :tabs_defaults
7
-
8
- def initialize
9
- @button_defaults = {}
10
- @alert_defaults = {}
11
- @card_defaults = {}
12
- @tabs_defaults = {}
13
- end
14
- end
15
-
16
- class << self
17
- def configuration
18
- @configuration ||= Configuration.new
19
- end
20
-
21
- def configure
22
- yield(configuration) if block_given?
23
- end
24
- end
8
+ # Your code goes here...
25
9
  end
metadata CHANGED
@@ -1,14 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: better_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - alessiobussolari
8
+ - umberto_peserico
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2025-05-01 00:00:00.000000000 Z
12
+ date: 2025-06-01 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: rails
@@ -28,16 +29,16 @@ dependencies:
28
29
  name: view_component
29
30
  requirement: !ruby/object:Gem::Requirement
30
31
  requirements:
31
- - - ">="
32
+ - - "~>"
32
33
  - !ruby/object:Gem::Version
33
- version: 3.0.0
34
+ version: '3.22'
34
35
  type: :runtime
35
36
  prerelease: false
36
37
  version_requirements: !ruby/object:Gem::Requirement
37
38
  requirements:
38
- - - ">="
39
+ - - "~>"
39
40
  - !ruby/object:Gem::Version
40
- version: 3.0.0
41
+ version: '3.22'
41
42
  - !ruby/object:Gem::Dependency
42
43
  name: redcarpet
43
44
  requirement: !ruby/object:Gem::Requirement
@@ -53,51 +54,53 @@ dependencies:
53
54
  - !ruby/object:Gem::Version
54
55
  version: '3.6'
55
56
  - !ruby/object:Gem::Dependency
56
- name: tailwindcss-rails
57
+ name: coderay
57
58
  requirement: !ruby/object:Gem::Requirement
58
59
  requirements:
59
60
  - - "~>"
60
61
  - !ruby/object:Gem::Version
61
- version: '2.0'
62
+ version: '1.1'
62
63
  type: :runtime
63
64
  prerelease: false
64
65
  version_requirements: !ruby/object:Gem::Requirement
65
66
  requirements:
66
67
  - - "~>"
67
68
  - !ruby/object:Gem::Version
68
- version: '2.0'
69
+ version: '1.1'
69
70
  - !ruby/object:Gem::Dependency
70
- name: sqlite3
71
+ name: lookbook
71
72
  requirement: !ruby/object:Gem::Requirement
72
73
  requirements:
73
- - - ">="
74
+ - - "~>"
74
75
  - !ruby/object:Gem::Version
75
- version: '0'
76
- type: :development
76
+ version: '2.3'
77
+ type: :runtime
77
78
  prerelease: false
78
79
  version_requirements: !ruby/object:Gem::Requirement
79
80
  requirements:
80
- - - ">="
81
+ - - "~>"
81
82
  - !ruby/object:Gem::Version
82
- version: '0'
83
+ version: '2.3'
83
84
  - !ruby/object:Gem::Dependency
84
- name: puma
85
+ name: font-awesome-sass
85
86
  requirement: !ruby/object:Gem::Requirement
86
87
  requirements:
87
- - - ">="
88
+ - - "~>"
88
89
  - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
90
+ version: '6.5'
91
+ type: :runtime
91
92
  prerelease: false
92
93
  version_requirements: !ruby/object:Gem::Requirement
93
94
  requirements:
94
- - - ">="
95
+ - - "~>"
95
96
  - !ruby/object:Gem::Version
96
- version: '0'
97
- description: Una gem Rails che funziona come engine montabile contenente componenti
98
- UI riutilizzabili e pagine di documentazione
97
+ version: '6.5'
98
+ description: Better UI is a Rails gem that works as a mountable engine containing
99
+ reusable UI components, built with ViewComponent and Tailwind CSS, following the
100
+ BEM methodology. It includes documentation and interactive previews with Lookbook.
99
101
  email:
100
102
  - alessio.bussolari@pandev.it
103
+ - umberto.peserico@pandev.it
101
104
  executables: []
102
105
  extensions: []
103
106
  extra_rdoc_files: []
@@ -106,19 +109,142 @@ files:
106
109
  - README.md
107
110
  - Rakefile
108
111
  - app/assets/stylesheets/better_ui/application.css
112
+ - app/components/better_ui/application/card/component.html.erb
113
+ - app/components/better_ui/application/card/component.rb
114
+ - app/components/better_ui/application/main/component.html.erb
115
+ - app/components/better_ui/application/main/component.rb
116
+ - app/components/better_ui/application/navbar/component.html.erb
117
+ - app/components/better_ui/application/navbar/component.rb
118
+ - app/components/better_ui/application/sidebar/component.html.erb
119
+ - app/components/better_ui/application/sidebar/component.rb
120
+ - app/components/better_ui/general/alert/component.html.erb
121
+ - app/components/better_ui/general/alert/component.rb
122
+ - app/components/better_ui/general/avatar/component.html.erb
123
+ - app/components/better_ui/general/avatar/component.rb
124
+ - app/components/better_ui/general/badge/component.html.erb
125
+ - app/components/better_ui/general/badge/component.rb
126
+ - app/components/better_ui/general/breadcrumb/component.html.erb
127
+ - app/components/better_ui/general/breadcrumb/component.rb
128
+ - app/components/better_ui/general/button/component.html.erb
129
+ - app/components/better_ui/general/button/component.rb
130
+ - app/components/better_ui/general/divider/component.html.erb
131
+ - app/components/better_ui/general/divider/component.rb
132
+ - app/components/better_ui/general/dropdown/component.html.erb
133
+ - app/components/better_ui/general/dropdown/component.rb
134
+ - app/components/better_ui/general/dropdown/divider_component.html.erb
135
+ - app/components/better_ui/general/dropdown/divider_component.rb
136
+ - app/components/better_ui/general/dropdown/item_component.html.erb
137
+ - app/components/better_ui/general/dropdown/item_component.rb
138
+ - app/components/better_ui/general/field/component.html.erb
139
+ - app/components/better_ui/general/field/component.rb
140
+ - app/components/better_ui/general/heading/component.html.erb
141
+ - app/components/better_ui/general/heading/component.rb
142
+ - app/components/better_ui/general/icon/component.html.erb
143
+ - app/components/better_ui/general/icon/component.rb
144
+ - app/components/better_ui/general/input/checkbox/component.html.erb
145
+ - app/components/better_ui/general/input/checkbox/component.rb
146
+ - app/components/better_ui/general/input/datetime/component.html.erb
147
+ - app/components/better_ui/general/input/datetime/component.rb
148
+ - app/components/better_ui/general/input/radio/component.html.erb
149
+ - app/components/better_ui/general/input/radio/component.rb
150
+ - app/components/better_ui/general/input/select/component.html.erb
151
+ - app/components/better_ui/general/input/select/component.rb
152
+ - app/components/better_ui/general/input/select/select_component.html.erb
153
+ - app/components/better_ui/general/input/select/select_component.rb
154
+ - app/components/better_ui/general/input/text/component.html.erb
155
+ - app/components/better_ui/general/input/text/component.rb
156
+ - app/components/better_ui/general/input/textarea/component.html.erb
157
+ - app/components/better_ui/general/input/textarea/component.rb
158
+ - app/components/better_ui/general/link/component.html.erb
159
+ - app/components/better_ui/general/link/component.rb
160
+ - app/components/better_ui/general/modal/component.html.erb
161
+ - app/components/better_ui/general/modal/component.rb
162
+ - app/components/better_ui/general/pagination/component.html.erb
163
+ - app/components/better_ui/general/pagination/component.rb
164
+ - app/components/better_ui/general/panel/component.html.erb
165
+ - app/components/better_ui/general/panel/component.rb
166
+ - app/components/better_ui/general/progress/component.html.erb
167
+ - app/components/better_ui/general/progress/component.rb
168
+ - app/components/better_ui/general/spinner/component.html.erb
169
+ - app/components/better_ui/general/spinner/component.rb
170
+ - app/components/better_ui/general/table/component.html.erb
171
+ - app/components/better_ui/general/table/component.rb
172
+ - app/components/better_ui/general/table/tbody_component.html.erb
173
+ - app/components/better_ui/general/table/tbody_component.rb
174
+ - app/components/better_ui/general/table/td_component.html.erb
175
+ - app/components/better_ui/general/table/td_component.rb
176
+ - app/components/better_ui/general/table/tfoot_component.html.erb
177
+ - app/components/better_ui/general/table/tfoot_component.rb
178
+ - app/components/better_ui/general/table/th_component.html.erb
179
+ - app/components/better_ui/general/table/th_component.rb
180
+ - app/components/better_ui/general/table/thead_component.html.erb
181
+ - app/components/better_ui/general/table/thead_component.rb
182
+ - app/components/better_ui/general/table/tr_component.html.erb
183
+ - app/components/better_ui/general/table/tr_component.rb
184
+ - app/components/better_ui/general/tabs/component.html.erb
185
+ - app/components/better_ui/general/tabs/component.rb
186
+ - app/components/better_ui/general/tabs/panel_component.html.erb
187
+ - app/components/better_ui/general/tabs/panel_component.rb
188
+ - app/components/better_ui/general/tabs/tab_component.html.erb
189
+ - app/components/better_ui/general/tabs/tab_component.rb
190
+ - app/components/better_ui/general/tag/component.html.erb
191
+ - app/components/better_ui/general/tag/component.rb
192
+ - app/components/better_ui/general/tooltip/component.html.erb
193
+ - app/components/better_ui/general/tooltip/component.rb
109
194
  - app/controllers/better_ui/application_controller.rb
110
- - app/controllers/better_ui/docs_controller.rb
195
+ - app/helpers/better_ui/application/components/card.rb
196
+ - app/helpers/better_ui/application/components/card/card_helper.rb
197
+ - app/helpers/better_ui/application/components/main/main_helper.rb
198
+ - app/helpers/better_ui/application/components/navbar/navbar_helper.rb
199
+ - app/helpers/better_ui/application/components/sidebar/sidebar_helper.rb
111
200
  - app/helpers/better_ui/application_helper.rb
201
+ - app/helpers/better_ui/general/components/alert/alert_helper.rb
202
+ - app/helpers/better_ui/general/components/avatar/avatar_helper.rb
203
+ - app/helpers/better_ui/general/components/badge/badge_helper.rb
204
+ - app/helpers/better_ui/general/components/breadcrumb/breadcrumb_helper.rb
205
+ - app/helpers/better_ui/general/components/button/button_helper.rb
206
+ - app/helpers/better_ui/general/components/container/container_helper.rb
207
+ - app/helpers/better_ui/general/components/divider/divider_helper.rb
208
+ - app/helpers/better_ui/general/components/dropdown/divider_helper.rb
209
+ - app/helpers/better_ui/general/components/dropdown/dropdown_helper.rb
210
+ - app/helpers/better_ui/general/components/dropdown/item_helper.rb
211
+ - app/helpers/better_ui/general/components/field/field_helper.rb
212
+ - app/helpers/better_ui/general/components/heading/heading_helper.rb
213
+ - app/helpers/better_ui/general/components/icon/icon_helper.rb
214
+ - app/helpers/better_ui/general/components/input/checkbox/checkbox_helper.rb
215
+ - app/helpers/better_ui/general/components/input/datetime/datetime_helper.rb
216
+ - app/helpers/better_ui/general/components/input/radio/radio_helper.rb
217
+ - app/helpers/better_ui/general/components/input/radio_group/radio_group_helper.rb
218
+ - app/helpers/better_ui/general/components/input/select/select_helper.rb
219
+ - app/helpers/better_ui/general/components/input/text/text_helper.rb
220
+ - app/helpers/better_ui/general/components/input/textarea/textarea_helper.rb
221
+ - app/helpers/better_ui/general/components/link/link_helper.rb
222
+ - app/helpers/better_ui/general/components/modal/modal_helper.rb
223
+ - app/helpers/better_ui/general/components/pagination/pagination_helper.rb
224
+ - app/helpers/better_ui/general/components/panel/panel_helper.rb
225
+ - app/helpers/better_ui/general/components/progress/progress_helper.rb
226
+ - app/helpers/better_ui/general/components/spinner/spinner_helper.rb
227
+ - app/helpers/better_ui/general/components/table/table_helper.rb
228
+ - app/helpers/better_ui/general/components/table/tbody_helper.rb
229
+ - app/helpers/better_ui/general/components/table/td_helper.rb
230
+ - app/helpers/better_ui/general/components/table/tfoot_helper.rb
231
+ - app/helpers/better_ui/general/components/table/th_helper.rb
232
+ - app/helpers/better_ui/general/components/table/thead_helper.rb
233
+ - app/helpers/better_ui/general/components/table/tr_helper.rb
234
+ - app/helpers/better_ui/general/components/tabs/panel_helper.rb
235
+ - app/helpers/better_ui/general/components/tabs/tab_helper.rb
236
+ - app/helpers/better_ui/general/components/tabs/tabs_helper.rb
237
+ - app/helpers/better_ui/general/components/tag/tag_helper.rb
238
+ - app/helpers/better_ui/general/components/tooltip/tooltip_helper.rb
112
239
  - app/jobs/better_ui/application_job.rb
113
240
  - app/mailers/better_ui/application_mailer.rb
114
241
  - app/models/better_ui/application_record.rb
115
- - app/views/better_ui/docs/component.html.erb
116
- - app/views/better_ui/docs/index.html.erb
117
- - app/views/better_ui/docs/show.html.erb
118
242
  - app/views/layouts/better_ui/application.html.erb
243
+ - config/initializers/lookbook.rb
119
244
  - config/routes.rb
120
245
  - lib/better_ui.rb
121
246
  - lib/better_ui/engine.rb
247
+ - lib/better_ui/railtie.rb
122
248
  - lib/better_ui/version.rb
123
249
  - lib/tasks/better_ui_tasks.rake
124
250
  homepage: https://github.com/alessiobussolari/better_ui
@@ -129,6 +255,7 @@ metadata:
129
255
  homepage_uri: https://github.com/alessiobussolari/better_ui
130
256
  source_code_uri: https://github.com/alessiobussolari/better_ui
131
257
  changelog_uri: https://github.com/alessiobussolari/better_ui/blob/main/CHANGELOG.md
258
+ rubygems_mfa_required: 'true'
132
259
  post_install_message:
133
260
  rdoc_options: []
134
261
  require_paths:
@@ -147,5 +274,5 @@ requirements: []
147
274
  rubygems_version: 3.5.11
148
275
  signing_key:
149
276
  specification_version: 4
150
- summary: Componenti UI riutilizzabili per Rails con documentazione integrata
277
+ summary: Elegant and reusable UI components for Rails with integrated documentation
151
278
  test_files: []
@@ -1,41 +0,0 @@
1
- module BetterUi
2
- class DocsController < ApplicationController
3
- def index
4
- @components = [
5
- { name: 'Button', path: better_ui.docs_component_path('button') },
6
- { name: 'Alert', path: better_ui.docs_component_path('alert') },
7
- { name: 'Card', path: better_ui.docs_component_path('card') },
8
- { name: 'Modal', path: better_ui.docs_component_path('modal') },
9
- { name: 'Tabs', path: better_ui.docs_component_path('tabs') },
10
- { name: 'Form Elements', path: better_ui.docs_component_path('form_elements') }
11
- ]
12
- end
13
-
14
- def show
15
- doc_file = Rails.root.join('docs', "#{params[:page]}.md")
16
-
17
- if File.exist?(doc_file)
18
- @content = File.read(doc_file)
19
- else
20
- @content = "# Documentazione non trovata\nLa pagina richiesta non è stata trovata."
21
- end
22
- end
23
-
24
- def component
25
- component_name = params[:component]
26
-
27
- # Percorso relativo ai file di documentazione dei componenti
28
- doc_file = BetterUi::Engine.root.join('docs', 'components', "#{component_name}.md")
29
-
30
- if File.exist?(doc_file)
31
- @content = File.read(doc_file)
32
- else
33
- @content = "# Componente non trovato\nLa documentazione per il componente '#{component_name}' non è stata trovata."
34
- end
35
-
36
- # Decidere quali esempi mostrare in base al componente
37
- @component_name = component_name
38
- render :component
39
- end
40
- end
41
- end