lesli_shield 1.1.3 → 1.1.5

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.
data/readme.md CHANGED
@@ -1,14 +1,15 @@
1
1
  <div align="center">
2
- <img width="100" alt="LesliShield logo" src="./app/assets/images/lesli_shield/shield-logo.svg" />
3
- <h3 align="center">Users & Security Management for the Lesli Framework.</h3>
2
+ <h1 align="center">
3
+ <img width="100" alt="LesliShield" src="./app/assets/images/lesli_shield/shield-logo.svg" />
4
+ </h1>
5
+ <h3 align="center">Authentication and authorization for the Lesli Framework.</h3>
4
6
  </div>
5
7
 
6
8
  <br />
7
- <hr/>
8
9
 
9
10
  <div align="center">
10
- <a target="_blank" href="https://github.com/LesliTech/LesliShield/actions">
11
- <img alt="Tests passing" src="https://img.shields.io/badge/Tests-passing-green?style=for-the-badge&logo=github">
11
+ <a target="_blank" href="https://github.com/LesliTech/LesliShield/actions/workflows/lesli-ci-tests.yaml">
12
+ <img alt="LesliShield test status" src="https://img.shields.io/github/actions/workflow/status/LesliTech/LesliShield/lesli-ci-tests.yaml?branch=master&style=for-the-badge&logo=github&label=tests">
12
13
  </a>
13
14
  <a target="_blank" href="https://rubygems.org/gems/lesli_shield">
14
15
  <img alt="Gem Version" src="https://img.shields.io/gem/v/lesli_shield?style=for-the-badge&logo=ruby">
@@ -16,84 +17,148 @@
16
17
  <a target="_blank" href="https://codecov.io/github/LesliTech/LesliShield">
17
18
  <img alt="Codecov" src="https://img.shields.io/codecov/c/github/LesliTech/LesliShield?style=for-the-badge&logo=codecov">
18
19
  </a>
20
+ <a target="_blank" href="https://sonarcloud.io/project/overview?id=LesliTech_LesliShield">
21
+ <img alt="Sonar Quality Gate" src="https://img.shields.io/sonar/quality_gate/LesliTech_LesliShield?server=https%3A%2F%2Fsonarcloud.io&style=for-the-badge&logo=sonarqubecloud&label=Quality">
22
+ </a>
19
23
  </div>
20
24
 
21
- <hr/>
22
25
  <br />
23
26
 
24
27
  <div align="center">
25
28
  <img
26
29
  style="width:100%;max-width:800px;border-radius:6px;"
27
- alt="Lesli screenshot" src="./docs/images/screenshot.png" />
30
+ alt="LesliShield security administration"
31
+ src="./docs/images/screenshot.png" />
28
32
  </div>
29
33
 
34
+ ---
35
+
36
+ <br />
37
+
38
+ ## Introduction
39
+
40
+ LesliShield is the official authentication and authorization engine for the [Lesli Framework](https://github.com/LesliTech/Lesli).
41
+
42
+ It centralizes account security, role-based access control, and user onboarding for Lesli applications.
43
+
30
44
  <br />
31
- <hr/>
45
+
46
+ ## Features
47
+
48
+ - Authentication and session management
49
+ - Role-based access control
50
+ - Permission and privilege administration
51
+ - Account-scoped security policies
52
+ - User invitations and onboarding
53
+
32
54
  <br />
33
55
 
34
- ### Installation
56
+ ## Try LesliShield
35
57
 
36
- ```ruby
58
+ - [Try the online demo](https://demo.lesli.dev/)
59
+ - [Run the Docker demo](https://github.com/LesliTech/lesli-docker-demo)
37
60
 
38
- # Add LesliShield engine gem
61
+ <br />
62
+
63
+ ## Quick Start
64
+
65
+ ### Requirements
66
+
67
+ - A Rails application with [Lesli](https://rubygems.org/gems/lesli)
68
+ - SQLite by default, or PostgreSQL when preferred by the host application
69
+
70
+ ### Install LesliShield
71
+
72
+ Add the engine to the host Rails application and prepare its database:
73
+
74
+ ```shell
39
75
  bundle add lesli_shield
76
+ bin/rails db:prepare
77
+ ```
78
+
79
+ ### Mount the engine
40
80
 
81
+ Applications using Lesli's standard router mount LesliShield automatically at `/shield`:
41
82
 
42
- # Setup & initialize the database
43
- rake lesli:db:setup
83
+ ```ruby
84
+ # config/routes.rb
85
+ Rails.application.routes.draw do
86
+ Lesli::Router.mount(self)
87
+ end
88
+ ```
44
89
 
90
+ If the application does not use the standard Lesli router, mount the engine directly:
45
91
 
46
- # Load LesliShield engine
92
+ ```ruby
93
+ # config/routes.rb
47
94
  Rails.application.routes.draw do
48
95
  mount LesliShield::Engine => "/shield"
49
96
  end
50
97
  ```
51
98
 
52
- <br />
53
- <hr />
99
+ Start Rails and visit [http://127.0.0.1:3000/shield](http://127.0.0.1:3000/shield):
100
+
101
+ ```shell
102
+ bin/rails server
103
+ ```
104
+
54
105
  <br />
55
106
 
56
- ### Development
107
+ ## Development
108
+
109
+ Clone LesliShield into the host application's `engines` directory:
110
+
111
+ ```shell
112
+ cd RailsApp
113
+ mkdir -p engines
114
+ git clone https://github.com/LesliTech/LesliShield.git engines/LesliShield
115
+ ```
116
+
117
+ Reference the local engine from the host application's `Gemfile`:
57
118
 
58
119
  ```ruby
59
- # clone the lesli repo inside your engine folder: RailsApp/engines
60
- git clone https://github.com/LesliTech/LesliShield.git
120
+ gem "lesli_shield", path: "engines/LesliShield"
121
+ ```
61
122
 
62
- # Load LesliShield as a Gem
63
- gem "lesli", path: "engines/LesliShield"
123
+ Install dependencies, prepare the host database, and start Rails:
64
124
 
65
- # Install the necessary Gems to run LesliShield
125
+ ```shell
66
126
  bundle install
127
+ bin/rails db:prepare
128
+ bin/rails server
129
+ ```
67
130
 
68
- # Setup & initialize the database
69
- rake lesli:db:setup
131
+ ### Tests
70
132
 
133
+ From a complete Lesli development workspace, run the engine test suite from the LesliShield directory:
134
+
135
+ ```shell
136
+ cd engines/LesliShield
137
+ bin/rails test
71
138
  ```
72
139
 
73
140
  <br />
74
- <hr />
75
- <br />
76
-
77
- ### Demo
78
141
 
79
- * [online demo](https://demo.lesli.dev/)
80
- * [docker demo](https://github.com/LesliTech/lesli-docker-demo)
142
+ ## Documentation
81
143
 
144
+ - [Lesli website](https://www.lesli.dev/)
145
+ - [Documentation](https://www.lesli.dev/engines/shield)
146
+ - [Release notes](https://github.com/LesliTech/LesliShield/releases)
147
+ - [Issue tracker](https://github.com/LesliTech/LesliShield/issues)
148
+ - [Source code](https://github.com/LesliTech/LesliShield)
82
149
 
83
- ### Documentation
84
- * [website](https://www.lesli.dev/)
85
- * [documentation](https://www.lesli.dev/engines/shield)
150
+ <br />
86
151
 
152
+ ## Community
87
153
 
88
- ### Connect with Lesli
154
+ - [X: @LesliTech](https://x.com/LesliTech)
155
+ - [hello@lesli.tech](mailto:hello@lesli.tech)
156
+ - [https://www.lesli.tech](https://www.lesli.tech)
89
157
 
90
- * [@LesliTech](https://x.com/LesliTech)
91
- * [hello@lesli.tech](hello@lesli.tech)
92
- * [https://www.lesli.tech](https://www.lesli.tech)
158
+ <br />
93
159
 
160
+ ## License
94
161
 
95
- ### License
96
- -------
97
162
  Copyright (c) 2026, Lesli Technologies, S. A.
98
163
 
99
164
  This program is free software: you can redistribute it and/or modify
@@ -107,18 +172,16 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
107
172
  GNU General Public License for more details.
108
173
 
109
174
  You should have received a copy of the GNU General Public License
110
- along with this program. If not, see http://www.gnu.org/licenses/.
175
+ along with this program. If not, see [https://www.gnu.org/licenses/](https://www.gnu.org/licenses/).
111
176
 
112
- <hr />
113
- <br />
114
- <br />
177
+ The complete license text is available in the [license file](./license).
115
178
 
116
- <div align="center" class="has-text-centered">
117
- <img width="200" alt="Lesli logo" src="https://cdn.lesli.tech/lesli/brand/app-logo.svg" />
118
- <h3 align="center" class="mt-0">
119
- The Open-Source SaaS Development Framework for Ruby on Rails.
120
- </h3>
121
- </div>
179
+ ---
122
180
 
123
181
  <br />
124
182
  <br />
183
+
184
+ <div align="center">
185
+ <img width="80" alt="Lesli icon" src="https://cdn.lesli.tech/lesli/brand/app-icon.svg" />
186
+ <h3 align="center">The Open-Source SaaS Development Framework for Ruby on Rails.</h3>
187
+ </div>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lesli_shield
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
4
+ version: 1.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Lesli Development Team
@@ -43,11 +43,13 @@ files:
43
43
  - app/assets/javascripts/lesli_shield/registrations.js
44
44
  - app/assets/javascripts/lesli_shield/sessions.js
45
45
  - app/assets/stylesheets/lesli_shield/application.css
46
+ - app/assets/stylesheets/lesli_shield/application.tailwind.css
46
47
  - app/assets/stylesheets/lesli_shield/confirmations.css
47
48
  - app/assets/stylesheets/lesli_shield/devise/oauth.css
48
49
  - app/assets/stylesheets/lesli_shield/passwords.css
49
50
  - app/assets/stylesheets/lesli_shield/registrations.css
50
51
  - app/assets/stylesheets/lesli_shield/sessions.css
52
+ - app/assets/stylesheets/lesli_shield/sessions.tailwind.css
51
53
  - app/assets/stylesheets/lesli_shield/users.css
52
54
  - app/controllers/lesli_shield/application_controller.rb
53
55
  - app/controllers/lesli_shield/dashboards_controller.rb
@@ -163,9 +165,6 @@ files:
163
165
  - config/initializers/devise.rb
164
166
  - config/locales/translations.en.yml
165
167
  - config/locales/translations.es.yml
166
- - config/locales/translations.fr.yml
167
- - config/locales/translations.it.yml
168
- - config/locales/translations.pt.yml
169
168
  - config/routes.rb
170
169
  - db/migrate/v1/0801000110_create_lesli_shield_accounts.rb
171
170
  - db/migrate/v1/0801100210_create_lesli_shield_role_actions.rb
@@ -1,2 +0,0 @@
1
- ---
2
- :fr: {}
@@ -1,5 +0,0 @@
1
- ---
2
- :it:
3
- lesli_shield:
4
- devise/sessions:
5
- message_not_valid_credentials: ":lesli_shield.devise/sessions.message_not_valid_credentials:"
@@ -1,2 +0,0 @@
1
- ---
2
- :pt: {}