NEO Developer App - Developer Flow
Developer as an actor can
- Register an App
- Edit an App
- Configure an App
Login
Developer can login using Single Sign-On or Cognito Login
Register an App
The first step in the app development process is registering the App
Following are the steps to register an App
i.Click on the + icon as shown below
ii. Enter the following parameters to register an App successfully
- App Id : is a key used in front-end application
Note : App Id must begin and end with alphabet/numbers and can contain special chars(-,@). It must have minimum length of 2 characters and maximum length of 25 characters.
- App Name : Name of the App
Note : App Name must begin and end with alphabet/numbers and can contain special chars(-,@). It must have minimum length of 2 characters and maximum length of 20 characters.
- Subdomain : Where the app is hosted
Note : Subdomain must begin and end with alphabet/numbers and can contain special chars(-, _). It must have minimum length of 2 characters and maximum length of 63 characters.
iii. After entering the required parameters click save to register the app
Post creation, the newly created App will be listed in the Apps Dashboard as shown below
Edit Apps
Click on the Edit icon of the app to edit the App Name and Description fields
Post edit, Click on Save to update the app name/description
Configure App
Allows the Developer to define
- Configurations used by the App
- Roles used by the App
- User profile used by the App
- Features used by the App
- Role Permissions that the app should adhere to
Click on the configure app icon as highlighted below
Click on the configuration tab
i. Configure Tab
Developers can create multiple environments that their App can connect to . It’s a logical grouping of Environment Variables
Add an environment
Click on + as highlighted below
Add Environment name, Click on Save
Post creation, environment will be listed as shown below
Adding environment variables
Developer can add multiple environment variables as key value pairs used by the App
Click on + icon to Add a new pair of Key value
Developer can delete key value pair/s by using the x icon as shown below
Save the changes to delete the key value pair
Key Value Pair list post deletion is as shown below
Roles
Allows a Developer to define roles of an app
To create a role
Click on + button to create a Role
Provide Role Name and Decription and click on Save as shown below
Post successful creation, Role created is listed as shown below
Edit/Update Role
Click on Edit as shown below
Developer can edit Role Name, Description and save the changes as shown below
Post edit and save, changes updaged will be notified as shown below
Delete Role
Click on Delete Role icon to delete the role as shown below
Provider Developer receives a popup notification before deleting a Role
Post deletion, a notification is provided to the Provider Developer as shown below
Note : If user is associated with a role and delete operation is performed on the Role, an error message will be displayed as below
Add User Profile
Allows Developer to define the user profile of an app. The values of the user profile vary from user to user and is set by the Admin of Neo App Manager
1. Click on User Profile tab as shown below and Click on + icon to Create New Attribute
2. Fill the Attribute details to Add Profile
Add Profile Parameters definition
- Attribute Name: Name of the Attribute field
- Order No: The serial order number as expected to appear one after another as Parent and Child Attribute respectively. Order Number cannot be repeated
- Attribute Type: There are two type of attributes
- 1. Text Box: For user profile attribute that is a free flowing text
- 2. Multiselect: For user profile that can be one or more values from a drop down list. If it is a drop down list then it can be dependent on another user profile that is of type multiselect
- Parent Attribute: If Attribute Type is Multiselect, then Parent Attribute drop-down list will show the list of multi select user profile attributes.
- Description: Description of the Attribute as Optional
3. Add Profile with Attribute Type as Multiselect:
3a. Fill the details with Master Parent Attribute as Order No 1 and Click on Save
Note : Master Parent Attribute doesn’t come under any parent category
Post creation the profile will be added in the list as shown below
3b. Add few more profiles by adding more attributes after clicking on + icon as shown below
3c. Fill the details with incrementing Order No. by 1 as shown below and select the Parent Attribute accordingly
Post creation the profile will be added in the list as shown below
3d. As per requirement, follow the previous steps to add more attributes by incrementing order number with parent/child attribute selection
4. Add Profile with Attribute Type as Text:
4a. Click on + icon as shown below
4b. Fill in the details with Attribute Type as Text and Click on Save button
Post creation the profile will be added in the list as shown below
Edit Attribute
Click on Edit icon to edit the Attribute as highlighted below
Update the editable fields (Attribute Name, Order No and Description) and click on Save button
Delete Attribute
Click on Delete Attribute icon to delete the role as highlighted below
Prior to deletion, Developer is notiofied as shown below below
Developer can confirm the deletion by clicking on Ok button or Cancel the deletion using the Cancel button as shown above
Feature
Add Feature
Click on the Feature tab to get the Add Feature pop up as shown below
Click on the + icon as shown below
Enter the following parameters to define the feature
- Feature Name : Name your feature
- Feature Type : Specify the type of the feature
- Page : If the feature is a Page in an app. Page feature have only view permission. So either you can view the page or not view it.
- Component: If the feature is a component in a Page or a component across pages in the app. For example
- A widget in a page can be treated as a component
- Button to edit across page can be treated as a component
- Entity: If the feature refers to a data in the app then we should treat it as an entity. For example, an app that deals with Customer data should treat Customer as an entity. Entities have CRUD (Create/Read/Update/Delete) permission
Note : Page level permissions configured will be handled by default by the App SDK, whereas as a Developer you can use the claims provided by the platform to handle the Component level security. For more information on this please go here: https://www.npmjs.com/package/@bcone/neo-app-sdk
- Parent Feature : Specify if there are any Parent features associated
Ex : Admins Page as a feature is nested under Users Page as shown below
Click on Save to create the Feature
Post Feature Creation, Provider Developer will be notified as shown below
Edit Feature
Allows the Provider Developer to
- Edit Feature Name
- Edit Parent Feature
- Include the Feature as a part of menu
- Edit Order Number
Post edit, Click on Save to update the changes
Delete Feature
Enables the Provider Developer to delete a feature as shown below
Post confirmation, feature will be deleted
Ex: Admin page is deleted in the screenshot below
Permissions
Following are the steps to provide permission to a user for specific page/s
Step 1: Click on Permissions Tab as shown below
Step 2: Select the Role to be permitted
Step 3: Select the feature
User as a role before receiving Permission to view pages
Data Scientist can now view Users, Apps, Admin pages
Post receiving the Permissions User can only view the specific pages
Logout
Click on Logout to signout from the account