Skip to content

Commit 6f6e1b6

Browse files
Update docs to use strata namespace (#203)
## Changes Use Strata namespace in documentation
1 parent 1be7fe3 commit 6f6e1b6

18 files changed

Lines changed: 226 additions & 226 deletions

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
# Flex
1+
# Strata
22

3-
Use the Flex SDK to create intuitive, accessible, and effective digital-native government digital services for residents, business owners, and government staff. Leverage extensible modular components to create multi-page intake applications and case management workflows.
3+
Use the Strata SDK to create intuitive, accessible, and effective digital-native government digital services for residents, business owners, and government staff. Leverage extensible modular components to create multi-page intake applications and case management workflows.
44

55
## Installation
66

77
See [Installation](./docs/installation.md) for instructions
8-
on getting the Flex SDK installed for your project.
8+
on getting the Strata SDK installed for your project.
99

10-
## Get started using Flex
10+
## Get started using Strata
1111

12-
See [Getting Started](./docs/getting-started.md) for a guide on how to create your first Flex application.
12+
See [Getting Started](./docs/getting-started.md) for a guide on how to create your first Strata application.
1313

1414
## Documentation
1515

16-
See [Flex SDK Documentation](./docs/README.md) for an organized overview of all available documentation.
16+
See [Strata SDK Documentation](./docs/README.md) for an organized overview of all available documentation.
1717

1818
## Contributing
1919

20-
See [CONTRIBUTING.md](./CONTRIBUTING.md) for details on how to contribute to the Flex SDK.
20+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for details on how to contribute to the Strata SDK.

docs/README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
1-
# Flex SDK Documentation
1+
# Strata SDK Documentation
22

3-
Welcome to the Flex SDK documentation. This index provides an organized overview of all available documentation.
3+
Welcome to the Strata SDK documentation. This index provides an organized overview of all available documentation.
44

55
## Getting Started
66

7-
- [Getting started guide](./getting-started.md) - Begin here to create your first Flex application
7+
- [Getting started guide](./getting-started.md) - Begin here to create your first Strata application
88

99
## Core concepts
1010

11-
- [Flex SDK components](./flex-sdk-components.md) - Overview of available SDK components
11+
- [Strata SDK components](./strata-sdk-components.md) - Overview of available SDK components
1212
- [Authorization](./authorization.md) - Built-in base policies for secure authorization patterns
13-
- [Flex Data Modeler](./flex-data-modeler.md) - Learn how to define data models using Flex Attributes and generate migrations using the Flex Migration Generator.
13+
- [Strata Data Modeler](./strata-data-modeler.md) - Learn how to define data models using Strata Attributes and generate migrations using the Strata Migration Generator.
1414
- [Multi-Page Form Builder](./multi-page-form-builder.md) - Create complex forms that span multiple pages
1515
- [Business process family tree](./business-process-family-tree.md) - Understanding business process hierarchies
16-
- [Flex Rules Engine](./flex-rules-engine.md) - Introduction to the rules engine for business logic
16+
- [Strata Rules Engine](./strata-rules-engine.md) - Introduction to the rules engine for business logic
1717

1818
## Implementation guides
1919

@@ -25,5 +25,5 @@ Welcome to the Flex SDK documentation. This index provides an organized overview
2525

2626
## Reference
2727

28-
- [Flex attributes](./flex-attributes.md) - Detailed documentation on all Flex attributes
29-
- [Generators](./generators.md) - Generate boilerplate code with Flex generators
28+
- [Strata attributes](./strata-attributes.md) - Detailed documentation on all Strata attributes
29+
- [Generators](./generators.md) - Generate boilerplate code with Strata generators

docs/contributing/contributing-strata-attributes.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
# Contributing new Flex attributes
1+
# Contributing new Strata attributes
22

3-
This document describes how to create new Flex attributes
3+
This document describes how to create new Strata attributes
44

55
## Design
66

7-
1. Decide whether or not to create a new value object in app/models/flex/
8-
By default, Flex attributes will require creating a new value object. The exception is if the type of the attribute is already a native Ruby type, such as the memorable_date attribute which represents a Date object.
7+
1. Decide whether or not to create a new value object in app/models/strata/
8+
By default, Strata attributes will require creating a new value object. The exception is if the type of the attribute is already a native Ruby type, such as the memorable_date attribute which represents a Date object.
99

1010
2. Determine if the attribute is composed of multiple nested attributes:
1111

@@ -67,19 +67,19 @@ This document describes how to create new Flex attributes
6767
```
6868

6969
3. Decide if there are validations that need to be added by default.
70-
Note: Do not add presence option or validation. By default all Flex attributes allow nil.
70+
Note: Do not add presence option or validation. By default all Strata attributes allow nil.
7171

7272
## Implementation
7373

7474
1. Create the value object
75-
2. Create a Concern `{FlexAttributeType}Attribute` in `app/lib/strata/attributes/` with a class method `{flex_attribute_type}_attribute` that takes the attribute `name` and an `options` hash and defines the new flex_attribute type on the including class, then include the module in Strata::Attributes in `app/lib/strata/attributes.rb`
76-
1. **Important**: The `flex_attribute` method in `app/lib/strata/attributes.rb` dynamically calls `#{type}_attribute`, so following the naming convention for the class method is required for the attribute to work properly.
77-
3. Extend the `flex:migration` generator in `migration_generator.rb` to include the new Flex attribute.
78-
4. For testing, add the new flex attribute to TestRecord in `spec/dummy/app/models/test_record.rb`. Try using the flex migration generator to generate this migration by running `cd spec/dummy && bin/rails generate flex:migration Add<AttributeName>ToTestRecords <attribute_name>:<flex_attribute_type>` and then run the migration with `bin/rails db:migrate`
79-
5. Add tests to spec/dummy/spec/lib/flex/attributes_spec.rb leveraging the new flex attribute. Make sure to test:
75+
2. Create a Concern `{StrataAttributeType}Attribute` in `app/lib/strata/attributes/` with a class method `{strata_attribute_type}_attribute` that takes the attribute `name` and an `options` hash and defines the new strata_attribute type on the including class, then include the module in Strata::Attributes in `app/lib/strata/attributes.rb`
76+
1. **Important**: The `strata_attribute` method in `app/lib/strata/attributes.rb` dynamically calls `#{type}_attribute`, so following the naming convention for the class method is required for the attribute to work properly.
77+
3. Extend the `strata:migration` generator in `migration_generator.rb` to include the new Strata attribute.
78+
4. For testing, add the new strata attribute to TestRecord in `spec/dummy/app/models/test_record.rb`. Try using the strata migration generator to generate this migration by running `cd spec/dummy && bin/rails generate strata:migration Add<AttributeName>ToTestRecords <attribute_name>:<strata_attribute_type>` and then run the migration with `bin/rails db:migrate`
79+
5. Add tests to spec/dummy/spec/lib/strata/attributes_spec.rb leveraging the new strata attribute. Make sure to test:
8080
a. Assign a Hash to the attribute and make sure the attribute is cast to the value object type and has the correct value
8181
b. Load the attribute from the database and make sure the attribute is correctly cast from the database record to the value object type and has the correct value
8282
c. Test validation logic if relevant. When testing validation logic, check that the appropriate error objects are present and that the original uncast values are present so that they can be shown to the user to be fixed.
83-
1. Create the associated FormBuilder helper method for rendering the form fields associated with the Flex attribute. (See [Contributing FormBuilder helper methods](/docs/contributing/contributing-form-builder-helper-methods.md))
83+
1. Create the associated FormBuilder helper method for rendering the form fields associated with the Strata attribute. (See [Contributing FormBuilder helper methods](/docs/contributing/contributing-form-builder-helper-methods.md))
8484

8585
See the existing attribute tests in the codebase for examples.

docs/contributing/data-modeling-guidelines.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Data Modeling Guidelines
22

3-
The Flex SDK uses domain-driven design (DDD) principles. These guidelines explain key ideas in plain language, with examples, so developers can apply them consistently.
3+
The Strata SDK uses domain-driven design (DDD) principles. These guidelines explain key ideas in plain language, with examples, so developers can apply them consistently.
44

55
## ActiveRecord vs Repository Pattern
66

7-
DDD often recommends the repository pattern as a layer that separates domain logic from data persistence. To align with common Rails practice, the Flex SDK skips this extra layer. Instead, the model class itself acts as the repository.
7+
DDD often recommends the repository pattern as a layer that separates domain logic from data persistence. To align with common Rails practice, the Strata SDK skips this extra layer. Instead, the model class itself acts as the repository.
88

99
### What this means for you
1010

docs/contributing/implementation-guidelines.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Implementation Guidelines
22

3-
This document provides guidelines for implementing features in the Flex SDK. Following these guidelines will help ensure code quality, maintainability, and consistency.
3+
This document provides guidelines for implementing features in the Strata SDK. Following these guidelines will help ensure code quality, maintainability, and consistency.
44

55
## Code Simplicity
66

docs/docs/case-management-business-process.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Creating a Case Management Business Process
22

3-
After creating an application form, the next step is to define how that application will be processed. In Flex, this is done through a case management business process, which defines the workflow and tasks needed to process the application.
3+
After creating an application form, the next step is to define how that application will be processed. In Strata, this is done through a case management business process, which defines the workflow and tasks needed to process the application.
44

55
## Understanding Case Management
66

@@ -17,19 +17,19 @@ A case management business process consists of:
1717

1818
## Creating a new business process
1919

20-
Creating a case management business process involves generating a case model that extends from `Flex::Case` and defining a business process that specifies the workflow. The business process determines how an application moves through your organization, from initial submission to final determination. This guide continues with the passport application example to demonstrate how to create a business process for handling passport applications.
20+
Creating a case management business process involves generating a case model that extends from `Strata::Case` and defining a business process that specifies the workflow. The business process determines how an application moves through your organization, from initial submission to final determination. This guide continues with the passport application example to demonstrate how to create a business process for handling passport applications.
2121

2222
### 1. Generate the Case and Business Process
2323

2424
First, generate the case model and business process files:
2525

2626
```shell
27-
bin/rails generate flex:case PassportCase
27+
bin/rails generate strata:case PassportCase
2828
```
2929

3030
This command will:
3131

32-
- Create a case model in `app/models/flex/passport_case.rb`
32+
- Create a case model in `app/models/strata/passport_case.rb`
3333
- Generate a business process in `app/business_processes/passport_business_process.rb`
3434
- Set up the necessary database migrations
3535
- Create task models and views
@@ -40,7 +40,7 @@ Update the generated business process file to define your workflow:
4040

4141
```ruby
4242
# app/business_processes/passport_business_process.rb
43-
class PassportBusinessProcess < Flex::BusinessProcess
43+
class PassportBusinessProcess < Strata::BusinessProcess
4444
# Define steps
4545
applicant_task('submit_application')
4646

@@ -65,10 +65,10 @@ end
6565
For each task in your business process, generate the necessary views:
6666

6767
```shell
68-
bin/rails generate flex:task verify_identity PassportCase
69-
bin/rails generate flex:task review_documents PassportCase
70-
bin/rails generate flex:task process_payment PassportCase
71-
bin/rails generate flex:task make_determination PassportCase
68+
bin/rails generate strata:task verify_identity PassportCase
69+
bin/rails generate strata:task review_documents PassportCase
70+
bin/rails generate strata:task process_payment PassportCase
71+
bin/rails generate strata:task make_determination PassportCase
7272
```
7373

7474
### 5. Test the Business Process
@@ -89,4 +89,4 @@ kase.business_process_instance.current_step
8989

9090
## Next Steps
9191

92-
1. [Add custom task implementations](../lib/generators/flex/task/USAGE)
92+
1. [Add custom task implementations](../lib/generators/strata/task/USAGE)

docs/flex-data-modeler.md

Lines changed: 0 additions & 59 deletions
This file was deleted.

0 commit comments

Comments
 (0)