Technical notes about management on FlexiForms Admin
What is an Environment?
In terms of software, an environment refers to a specific setup or context in which software applications are built, tested, and run. Each environment typically includes a combination of:
Hardware (physical or virtual machines)
Software dependencies (like operating systems, libraries, databases)
Configuration settings (such as environment variables)
Access permissions (who can access what)
Here are the most common types of software environments:
🔧 Development Environment (Dev)
Where developers write and test code.
Often includes debugging tools, IDEs, and local versions of services (e.g., databases).
Usually runs on a developer’s machine or isolated container.
🔍 Testing / QA Environment
Used by testers to validate new features, fix bugs, and ensure stability.
Closely mimics production but may contain test data.
Can include automated testing suites and CI/CD pipelines.
🧪 Staging Environment
A near-exact replica of production.
Used for final testing before release.
Helps catch environment-specific issues that dev/test environments might miss.
🚀 Production Environment (Prod)
Where the software is actually used by end users.
Must be stable, secure, and monitored.
Changes here are typically deployed through controlled release pipelines.
FlexiForms Environments
There are three environments each of which corresponds to typical software development stages in FlexiForms:
Development is used to develop the forms, and play around with them to see the effects of different designs and setups.
QA is used to test the form design and set up before pushing the form into Production environment.
Production is the real environment the end user will use.
User Types
There are three types of users in FlexiForms:
System Admins can access everything (every form, every page, every API data source etc.) in every environment and can switch the environments on Admin application. They are defined in Application Config file of the Admin application and cannot be deleted. Only the System Admin can access User management modules: Users and Permissions. This means only they can create/delete users or make a user admin, and only they can grant permissions for forms or system objects (Lists, API Data Sources, Credentials, Applets) to the Admins or Users. Only Admins can be given permission for system objects.
Admins, unlike System Admins and like Users, have capabilities that are limited to the environment where they are created. They cannot switch environments. They can access forms and system objects (Lists, API Data Sources, Credentials, Applets) only if a system admin granted access for them. However, they can create forms or new system objects. They cannot manage users or their permissions.
Users are defined by the Admins or System Admins for a limited form, or group of forms. The Admin/System Admin assign them to forms. These users cannot access system objects. They cannot create new forms or system objects. They cannot access the templates used for the forms to which they don't access. However, they can create/edit HTML templates, create and edit job settings, user verification settings, etc. for the forms that they can access.
Last updated