Convertigo No Code Studio Standalone
This a is the dockerized version of Convertigo No Code Studio that enables you to run it on premises.
Pre-requisites
Linux platform is recommended.
- You need to have access to internet
- You need to install:
- You need at least 2 GB of disk space. 20 GB is recommended.
- For CENTOS 7 you must enable user namespaces in kernel to support PWA creations
- Add
user.max_user_namespaces=28633
to/etc/sysctl.conf
(or/etc/sysctl.d
) - And then run
$ sudo sysctl --system
- For older release than CENTOS 7.7, you have to run additional commands
$ sudo grubby --update-kernel=ALL --args="user_namespace.enable=1" $ reboot
- Add
Installation guide
You can access the No Code Studio Releases here
First of all, extract tar.gz (This file is given by a download link in a message) :
$ tar -xzvf c8oforms_standalone.tar.gz
Then, start docker as a deamon :
$ systemctl start docker
Then, make sure you have correct permissions on folder c8oforms_standalone (read/write/execute)
$ sudo chmod -R 777 ./c8oforms_standalone
Then, navigate to folder
$ cd c8oforms_standalone
and edit the .env file
$ nano .env
Check that
COUCHDB_ENABLE=1
HTTPD_ENABLE=1
BASEROW_ENABLE=1
Edit the PUBLIC_HOSTNAME to the DNS host name users will type in their browser URL field. for example http://my.dns.name, replace with your real server DNS name. This must not be localhost and is mandatory.
PUBLIC_HOSTNAME=my.dns.name
Configure BR email notification system
No Code Studio uses BR notifications for No Code Databases workspace sharing. Configure this in the .env file as is :
Name | Description | Defaults |
---|---|---|
FROM_EMAIL | The email address BR will send emails from. | |
EMAIL_SMTP | If set to any non empty value then BR will start sending emails using the configuration options below. If not set then BR will not send emails and just log them to the Celery worker logs instead. | |
EMAIL_SMTP_USE_TLS | If set to any non empty value then BR will attempt to send emails using TLS.Whether to use a TLS (secure) connection when talking to the SMTP server. This is used for explicit TLS connections, generally on port 587. If you are experiencing hanging connections, see the implicit TLS setting EMAIL_SMTP_USE_SSL. | |
EMAIL_SMTP_USE_SSL | If set to any non empty value then an implicit TLS (secure) connection will be used when talking to the SMTP server. In most email documentation this type of TLS connection is referred to as SSL. It is generally used on port 465. If you are experiencing problems, see the explicit TLS setting EMAIL_SMTP_USE_TLS. Note that EMAIL_SMTP_USE_TLS/EMAIL_SMTP_USE_SSL are mutually exclusive, so only set one of those settings to True. | |
EMAIL_SMTP_HOST | The host of the external SMTP server that BR should use to send emails. | |
EMAIL_SMTP_PORT | The port used to connect to $EMAIL_SMTP_HOST on. | |
EMAIL_SMTP_USER | The username to authenticate with $EMAIL_SMTP_HOST when sending emails. | |
EMAIL_SMTP_PASSWORD | The password to authenticate with $EMAIL_SMTP_HOST when sending emails. | |
EMAIL_SMTP_SSL_CERTFILE_PATH | If EMAIL_SMTP_USE_SSL or EMAIL_SMTP_USE_TLS is set, you can optionally specify the path to a PEM-formatted certificate chain file to use for the SSL connection. If using docker then you will need to mount in this file into all the BR backend containers. | |
EMAIL_SMTP_SSL_KEYFILE_PATH | EMAIL_SMTP_USE_SSL or EMAIL_SMTP_USE_TLS is set, you can optionally specify the path to a PEM-formatted private key file to use for the SSL connection. If using docker then you will need to mount in this file into all the BR backend containers. Note that setting EMAIL_SMTP_SSL_CERTFILE_PATH and EMAIL_SMTP_SSL_KEYFILE_PATH doesn’t result in any certificate checking. They’re passed to the underlying SSL connection. Please refer to the documentation of Python’s ssl.wrap_socket() function for details on how the certificate chain file and private key file are handled. |
Now Start the Convertigo stack Convertigo With No Code Studio, run:
$ docker-compose up -d
You have to wait a couple of minutes for the environment to finish setting up to start. After several minutes Go to Convertigo system administration (http://my.dns.name/convertigo) and login using
- user: admin
- password admin
To shutdown docker,and stop Convertigo No Code Studio, run:
$ docker-compose down
Update guide
You can access the No Code Studio Repository here :.
First of all, downlaod C8Oforms.car, and then Go to Convertigo administration, into projects to import your C8oForms.car
Click on Deploy a project, and then browse file on your system.
Environment
Convertigo No Code Studio
- Connect to url: http://my.dns.name/convertigo/projects/C8Oforms/DisplayObjects/mobile/index.html
- To login into Convertigo No Code Studio you can either create a new account or setup authentication with active directory or setup authentication with Google, Microsoft or OpenID
Convertigo Server admin console
- Administration url: http://my.dns.name/convertigo/admin/main.html
login: admin password: admin
Workspace
- You can find your workspace into folder c8oforms_standalone/workspace.
- This workspace contains all Convertigo user data: the projects, the configuration files, the logs, etc.
Create a new Convertigo No Code Studio account
Go to convertigo administration and login, then navigate to test platform, and click on lib_UserManager, execute sequence AddUser with user email and password.

Be careful to use an email like “myemail@mail.com”. If you don’t, you won’t be able to login.
Authentication Active directory
You have to configure project lib_UserManager . To do so go to convertigo admin console: http://my.dns.name/convertigo/admin/login.html and type login and password. Then, click on project on the left hand side to access to project list view. On the left side of lib_UserManager and C8Oforms projects, you will se a red warning icon, click on it to create symbols.

Now that its done, click on symbols on the left hand side.

For lib_UserManager, you will have to define 5 symbols:
- lib_UserManager.adminUser
- This servfice account user must be an active directory account, who has at least read only access right, and so can execute research on whole tree (expected synthax is DOMAIN_NAME\USER)
- lib_UserManager.adminPassword.secret
- Service account password of our active directory user
- lib_UserManager.ldapServer
- Url of LDAP server such as ‘ldap://LDAP_SERVER:389’
- lib_UserManager.ldapBasePath
- Base path where users will search in AD such as ‘DC=domain,DC=subdomain,C=US’
- lib_UserManager.ldapDomainName
- The default NT Domain such as ‘DOMAIN_NAME’
For NoCode Studio, you will have to optionally define 1 other symbol:
- C8Oforms.loginAdGroup
- This group, is used to determine if an active directory user will be able to connect to No Code Studio. If symbol is empty, any Active directory user will have acess to Convertigo Forms, but if symbol is defined, only users that are members of this group will have acess to NoCode Studio.
Authenticating with OAuth or OpenID
NoCode Studio supports OAuth SSO. to set it up configure the following symbols :
For Microsoft AzureAD (Entra ID)
Symbol | Sample Value | Desciption |
---|---|---|
lib_oauth.azuread.clientid | XXX | The EntraID (AzureAD) cliend ID |
lib_oauth.azuread.tenantid | common | The EntraID tenant ID |
For GitHub OAuth :
Symbol | Sample Value | Desciption |
---|---|---|
lib_oauth.github.clientid | XXXX | The GitHub Client id |
lib_oauth.github.keysecret.secret | XXX | The GitHub client secret |
For Google OAuth :
Symbol | Sample Value | Desciption |
---|---|---|
lib_oauth.google.clientid | XXXX | The Google Client ID |
lib_oauth.google.keysecret.secret | XXX | The Google Client Secret |
For Linkedin:
Symbol | Sample Value | Desciption |
---|---|---|
lib_oauth.linkedin.clientid | XXXX | The Linkedin Client ID |
lib_oauth.linkedin.keysecret.secret | XXXX | The Linkedin Client Secret |
For OpenID :
Symbol | Sample Value | Desciption |
---|---|---|
lib_oauth.openid.clientid | XXXX | The OpenID Client ID |
lib_oauth.openid.clientsecret.secret | XXXX | The OpenID client secret |
lib_oauth.openid.endpoint | https://api.login.yahoo.com/oauth2/request_auth | The URL to the end point |
lib_oauth.openid.instrospect_url | https://openid_introspect_url | An optional introspect URL |
Backup
Directories to save in the event of a machine crash :
- All the workspace directory except logs folder. This contains all the specifics parameters as well as the symbols set.
- All the couchdb directory. This directory contains all the databases used for Convertigo No Code Studio. In particular the definitions of forms, users, rights, …
- The tomcat/conf directory, only if you have changed the configuration like add a certificate store.
Restoration is easy. It consists of replacing the installed directories with those saved. Note that backup can be done while CouchDB is running see this article in CouhcDB documentation Couchdb Backups
GDPR Compliance
They are two built in features in Convertigo Forms to help you comply with the General Data Protection Regulation - GDPR.
1) You can define a text (HTML is supported) to display in the GDPR menu of the application.
2) You can display a message each time a user creates a form, to make him aware of the GDPR rules.
To do this, Go to Convertigo administration, into symbols section, and create the following symbols:
C8Oforms.GDRP-MENU
To define the text and show the GDPR menu (1)C8Oforms.GDRP-TOAST
To define and display the message before creating a new form (2)
Post install Check
Once installed, you can check that everything is ok using this check list
- Launch the application (url: http://my.dns.name/convertigo/projects/C8Oforms/DisplayObjects/mobile/index.html)
- Log in with an existing AD account (Use DOMAIN\user) or Login in using SSO (Google, OpenID, or Microsoft Entra ID)
- Create a user (Use No Code Studio Admin menu)
- Verify SMTP configuration (Create a sample app with a Submit flow using the Mail Send Action)
- Create an app from a template (Click on one of the application temaplates)
- Check access to No Code (Click on the No Code database tab and check that the Database panel is displayed)
- Publish the application and use it (Using QR Code)
- Export / import the app