@profoundry-us/loco_motion 0.0.7 → 0.0.8
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.
- package/README.md +45 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -33,11 +33,13 @@ your solution is aligned with our goals.
|
|
|
33
33
|
- [About](#about)
|
|
34
34
|
- [Getting Started](#getting-started)
|
|
35
35
|
- [Installing / Setting up Rails](#installing--setting-up-rails)
|
|
36
|
+
- [Using UUIDs by Default](#using-uuids-by-default)
|
|
36
37
|
- [Install HAML (Optional)](#install-haml-optional)
|
|
37
38
|
- [Install DaisyUI (Optional)](#install-daisyui-optional)
|
|
38
39
|
- [Try Out Your Application](#try-out-your-application)
|
|
39
40
|
- [Debugging](#debugging)
|
|
40
41
|
- [Testing](#testing)
|
|
42
|
+
- [Services / Service Objects](#services--service-objects)
|
|
41
43
|
- [Authentication](#authentication)
|
|
42
44
|
- [Web Console](#web-console)
|
|
43
45
|
- [BetterErrors (Optional)](#bettererrors-optional)
|
|
@@ -203,6 +205,20 @@ Congratulations!
|
|
|
203
205
|
You can now visit [http://localhost:3000](http://localhost:3000) in your web
|
|
204
206
|
browser and see your running Rails application!
|
|
205
207
|
|
|
208
|
+
### Using UUIDs by Default
|
|
209
|
+
|
|
210
|
+
We believe strongly in migrating all of your primary keys to UUIDs to increase
|
|
211
|
+
security as well as avoiding potential scaling issues in the future.
|
|
212
|
+
|
|
213
|
+
To enable this by default, create the following file:
|
|
214
|
+
|
|
215
|
+
```ruby
|
|
216
|
+
# config/initializers/generators.rb
|
|
217
|
+
Rails.application.config.generators do |generator|
|
|
218
|
+
generator.orm :active_record, primary_key_type: :uuid
|
|
219
|
+
end
|
|
220
|
+
```
|
|
221
|
+
|
|
206
222
|
### Install HAML (Optional)
|
|
207
223
|
|
|
208
224
|
While you can use the default ERB templating system that comes with Rails, we
|
|
@@ -479,6 +495,28 @@ We'll have some guides and examples for this coming soon!
|
|
|
479
495
|
> We plan to have a writeup soon (an ADR specifically) on exactly why we made
|
|
480
496
|
> the switch.
|
|
481
497
|
|
|
498
|
+
## Services / Service Objects
|
|
499
|
+
|
|
500
|
+
It is best practice to separate your logic into Service Objects rather than
|
|
501
|
+
shoving all of it into your Controllers and Models.
|
|
502
|
+
|
|
503
|
+
One solution we really like is
|
|
504
|
+
[ActiveInteraction](https://github.com/AaronLasseigne/active_interaction).
|
|
505
|
+
|
|
506
|
+
It is very stable, has wonderful documentation, and gives you a clean way to
|
|
507
|
+
build your service objects with support for things like composed interactions
|
|
508
|
+
and even ActiveModel validations.
|
|
509
|
+
|
|
510
|
+
Add `gem 'active_interaction', '~> 5.3'` to your `Gemfile` and create a new
|
|
511
|
+
class called `ApplicationInteraction` if you want to give it a try!
|
|
512
|
+
|
|
513
|
+
```
|
|
514
|
+
# app/interactions/application_interaction.rb
|
|
515
|
+
class ApplicationInteraction < ActiveInteraction::Base
|
|
516
|
+
# Your interactions will inherit from this class!
|
|
517
|
+
end
|
|
518
|
+
```
|
|
519
|
+
|
|
482
520
|
## Authentication
|
|
483
521
|
|
|
484
522
|
There are a **lot** of different ways to handle user authentication in Ruby on
|
|
@@ -884,7 +922,7 @@ the GitHub Discussions feature and let us know!
|
|
|
884
922
|
- [ ] Basic versions of DaisyUI Data Input
|
|
885
923
|
- [ ] Basic versions of DaisyUI Layout
|
|
886
924
|
- [ ] Basic versions of DaisyUI Mockup
|
|
887
|
-
- [
|
|
925
|
+
- [x] ~~Get YARD docs rendering with (better) Markdown~~ _**Working for now**_
|
|
888
926
|
- [x] Extract relevant pieces into a yard-loco_motion plugin
|
|
889
927
|
- [x] Publish Gem
|
|
890
928
|
- [x] Publish NPM package
|
|
@@ -902,6 +940,12 @@ the GitHub Discussions feature and let us know!
|
|
|
902
940
|
- [ ] Build some have docs / guides / examples for using playwright-ruby-client
|
|
903
941
|
- [x] See if we can build a `Tippable` concern that relevant components can
|
|
904
942
|
include to automatically add the tooltip param and classes where possible
|
|
943
|
+
- [x] Rename `tail` methods to `end` since we use that in other places
|
|
944
|
+
- [x] Update CardComponent Figure to be a proper class like other components
|
|
945
|
+
- [x] Create a GitHub pull request template to standardize PR submissions
|
|
946
|
+
- [ ] See if we can update the Join component to auto-add the `join-item` CSS
|
|
947
|
+
under certain conditions
|
|
948
|
+
- [ ] Add title and description content_for blocks to all examples for SEO purposes
|
|
905
949
|
|
|
906
950
|
[1]: https://loco-motion.profoundry.us/
|
|
907
951
|
[2]: https://loco-motion-demo-staging.profoundry.us/
|