As DNN Sharp is evolving in more robust and unified platform, called Plant an App, this questions comes up often - what are some exclusive features that users upgrading from DNN Sharp are expected to get? Here is an extended list we've put in place. Make sure to check the new releases regularly, as there's tons of stuff we're adding every month.
1. Consolidated Upgrade
In Plant an App, we’re looking at our suite of modules as a single product. To achieve this, we’ve built a new module called App Builder that orchestrates all the other. This module can be deployed on existing DNN instances as well.
When doing a fresh install or an upgrade of Plant an App, you’re really just installing one module - the App Builder. This module takes care of downloading and installing all the other modules that are needed automatically. This will save that two hours that it takes to install each module individually and wait for the site to recycle after each install.
Furthermore, this also increases the stability of the system, because we tested the release with exactly the same set of module versions. It’s definitely the most stable configuration that we know of.
2. Application Versioning through Git
-
History of all module changes - never lose a change again
-
Enhances accountability and transparency - see who changed what and when
-
Easily diff changes and revert to desired version
Plant an App can be linked to a Git repository that can live for example on GitHub. So every time somebody changes a module, that module is exported and committed to the repository. This results in having a complete history of all application changes.
Since every change appears as a commit in GitHub, it’s dated and has the DNN user that did the chance as the author. The commits contain page and module exports, so it’s possible to go back to any version, get the XML file and import it back into DNN.
3. Database Builder
Feature
|
Description
|
Visual Builder
|
Tables are defined in a visual editor. It doesn’t require any SQL knowledge. At a high level, an entity tree displays the relationship between tables. This is a popular feature amongst business analysts that use it to build the barebone of the app instead of writing specs.
|
Extended Metadata
|
Each field has extended metadata that allows the system to automatically generate the proper forms and perform validation.
|
Robust Architecture
|
The database builder generates tables that follow best practices in terms of foreign keys, index keys and naming conventions which are automatically determined from field metadata. This results in optimal performance being implemented out-of-the-box.
|
Security
|
Role-based permissions for CRUD operations at table level can also be defined in the visual editor.
|
Application Screens
|
The Database Builder can auto-generate all the application screens to visualize and operate with the data. It uses capabilities such as the form builder or the data grid that are detailed further down.
|
APIs
|
Every entity gets CRUD APIs automatically generated.
|
Fast Feedback Loop
|
It takes 10 seconds to add a new field to a table and start using it in the application.
|
4. Workflow Builder
Feature
|
Description
|
BPMN Visual Builder
|
We adopted the BMPN standard for defining processes in a visual manner that reflects the process flow.
|
Over 200 actions
|
Actions vary from the basic actions such as sending an email or SMS or updating the user profile to very developer actions such as executing Razor or Javascript on the server-side. The actions are tied together in the editor to build an end-to-end process.
|
Isolation
|
Workflows are isolated from the context where they’re called from. All data must come in through input parameters and be returned through output parameters.
|
Testability
|
Since they’re encapsulated, workflows can be easily integrated into automated test plans.
|
5. Core Actions
There’s new built-in actions that come out of the box with Plant an App that help build even more powerful processes.
Action
|
Description
|
Entity CRUD Actions
|
For each table created through the Database Builder, the system automatically generates specific actions that can perform CRUD operations on that table without having to write a single SQL line.
|
Workflow Actions
|
For each workflow that is created through the Workflow Builder, the system automatically creates specific actions that are used to call the process from any action capable module.
|
Execute C#/Razor script
|
A new action that can execute a razor script in the context of a workflow or any action capable module. The Razor action has access to the entire context as local variables.
|
Execute JavaScript on Server Side
|
A new action that executes JavaScript on the ServerSide using the Microsoft ClearScript library based on Google V8 engine. This opens up the custom business logic layer to JavaScript developers.
|
6. Token Builder
The App Builder comes with a completely revamped My Tokens that streamlines the process of creating and managing tokens.
7. Dashboard Builder
In version 1.6 we release the first version of the Dashboards module in preview mode (not to be used in production environment). It only supported KPI cards that are tied to entities. For the 1.8 release we will also support line charts and get it ready to be used in production.
8. Integrations
Title
|
Description
|
Marketing Automation
|
Actions that can send tracked emails or A/B testing campaigns.
|
FTP
|
Actions to work working with files that live on FTP servers.
|
Twilio
|
Provides actions to achieve 2-way SMS communications.
|
AWS
|
Actions to operate with various AWS services, such as working with files on S3, working with the SQS queues or programmatically configure Cloudfront distributions.
|
Slack
|
Provides actions that post messages to slack channels or users, for example when a support ticket is open in an Help Desk system.
|
GitHub
|
Used by Plant an App for application versioning. Each time a setting is changed in a builder or in any module, a commit on behalf of the current user is submitted to GitHub. This results in having full history, trackability and transparency in the development process.
|
Open ID
|
A connector that allows users to sign in using their directory credentials. Works with any service that supports Open ID, such as Okta, AWS Cognito or Azure AD.
|
SigFox
|
IoT connectivity to low-battery consumption devices.
|
FedEx
|
Integrates order tracking and events into the system.
|