Base Components
Every NS applicationNS Application (NSApplication). A pre-built software stack that provides common enterprise application functionality such as CRUD, search, authentication, and business process modeling out of the box. can add Base Components: ready-made components that handle common, cross-cutting concerns so you don't have to build them yourself. They're not automatically part of every applicationApplicationThe overarching model container grouping all components, domain logic, and configurations for an enterprise solution., but adding one is as simple as adding any other component dependency.
Account Component
The account component contains a number of data elementsData Element (DataElement). A fundamental data concept or entity within an application's domain, acting as an anthropomorphic translation of a real-life object or concept. to manage user interaction such as login and data
access:* Account, User, UserGroup ,Profile and DataAccess.
A user belongs to an account (i.e. an organization) and has a certain profile (e.g. user, administrator, super user). A user can also belong to a certain user group.
Data access can be configured at 3 levels: for a usergroup, for a profile and for an individual user.
Access to the following elements can be configured:
- Data elementsData Element (DataElement). A fundamental data concept or entity within an application's domain, acting as an anthropomorphic translation of a real-life object or concept.
- Data operationsData Operation (DataOperation). A type-safe action (e.g., Create, Update, Custom) executed on DataElement instances to modify data or trigger business logic.
- API endpoints
For each element, we define 4 levels of access: view, create, edit and remove. Two authentication mechanisms are supported out of the box:
- built-in username/password management
- integration with an external identity provider via OpenID Connect
Alerting Component
The alerting Component is a base component to handle the concern of sending alert messages to channels such as
email or Slack. It implements a publish-subscribe mechanism for sending those messages. Alerts are
published to named topics, and subscriptions route them from a topic to one or more channels. The component is
designed with modular re-usable components that define fixed interfaces to add functionality. Through a combination of model options and expandersExpanderA unit of generation that combines a data tree instance (functional M1 model) with a template to generate an artifact. , it is possible to add additional (or replace) channel types if support for a different platform or a different implementation is needed.
Assets Component
The assets component adds file upload and download functionality. It allows you to store files, and link
them to the related data elementData Element (DataElement). A fundamental data concept or entity within an application's domain, acting as an anthropomorphic translation of a real-life object or concept. (e.g. a drivingLicense photo linked to a Booking data elementData Element (DataElement). A fundamental data concept or entity within an application's domain, acting as an anthropomorphic translation of a real-life object or concept.).
The assets components handles:
- File storage in database or disk
- Upload interface to browse and link files
- Download interface
- Implementations to read and manipulate files in business logic
The assets component supports three types of assets.
Mailing Component
The mailing component adds mailing capability to an NS applicationNS Application (NSApplication). A pre-built software stack that provides common enterprise application functionality such as CRUD, search, authentication, and business process modeling out of the box.. The component provides a simple interface to
create emails and adds a workflow implementation that handles the actual email delivery through an external mail server you configure.
Utils Component
The utils component provides a data elementData Element (DataElement). A fundamental data concept or entity within an application's domain, acting as an anthropomorphic translation of a real-life object or concept. that can be used to configure values at runtime.
In some cases, settings or configuration parameters might be dynamic and depend on your environment, client or time.
The data elementData Element (DataElement). A fundamental data concept or entity within an application's domain, acting as an anthropomorphic translation of a real-life object or concept. ParamTargetValue has three attributes to define a configuration:
| FieldFieldA property of a DataElement expanded to a database column and user interface input element. | Description |
|---|---|
| Param | Name for the parameter |
| Target | Additional tag. At least one triplet should have target default. |
| Value | Value for this param-target combination |