case-study
Try Drupal: A Demo Experience solution
How we built a whole demo experience solution for 1xINTERNET
In proccess of discovering what Qaack is capable of, 1xINTERNET presented their need for a solution to demo a digital experience platform to potential clients and we quickly realized how easy it would be to use Qaack to solve the problem.
Try Drupal logo
The client
1xINTERNET is a full-service digital agency with offices in Frankfurt, Berlin, Reykjavik, and Conil. They help businesses of all sizes to create and implement digital solutions that achieve their goals.
1xINTERNET's logo
They offer services in web-development, consulting and online marketing, and they are actively involved in the Drupal community, contributing to the projects, being part of events, promoting Drupal and much more.
The requirements
1xINTERNET's main product is a Drupal based digital experience platform, know as 1xDXP, and they are willing to make it accessible to clients, letting them test it as editors, viewers and administrators.
Following that direction, they found that, having to setup a demo environment for each client requesting a demo was too much time consuming and they wanted to automate the process, offering demo instances on the fly, just when a potential client requests it.
The deadline
1xINTERNET is pretty active in the Drupal community and they wanted to show up this demo experience in the biggest Drupal event in Europe, Drupal Con Lille 2023.
Drupal Con Lille 2023
The goal was to have a demo experience solution integrated with their website and ready to be presented and ensuring performance and scalability in order to handle a big load of users during the event.
The proposal
As a Web Environment Manager (WEM), Qaack is capable of creating environments through API, that's really handy for these kind of needs. Setting up a full new instance for 1xINTERNET and adding a configuration file, their solution becomes ready to be pre-built, cloned and launched in seconds and on demand.
We presented specific nice features that Qaack would provide in order to make the experience even better:
- Qaack instances
- Reusable environments
- Environment clones
- API integration
- Max environment limit
- Enviroment Time To Live (TTL)
- Scheduled rebuilds
And many more…, so after a few meetings and a proof of concept, we went for it and started working on the solution.
The solution
Summing up, Try Drupal is the result of the integration of Qaack’s API with a simple form on 1x’s website.
First of all, we prepared a new Qaack instance specifically for 1xINTERNET, so it would be isolated and under their control, being able to scale it when big loads of users are expected.
Then we needed to configure and setup 1xDXP to work with Qaack. So we configured a qaack.yml file to the project repository, then the project was added to Qaack, authenticated via SSH key pair, which is automatically generated by Qaack.
In order to provide multiple demos we used the environment clones feature, that allows you to spawn copies of a given environment. However, that was not enough because it would install the whole Drupal site from scratch. So, in order to save time and resources, we would took advantage of reusable environments. This means that after the original environment is built, it's saved to be used later, then, in a matter of seconds, a fully 1xDXP site can be up and running.
Finally, the only missing part was to integrate with 1xINTERNET website and this resulted to be easy thanks to the API. Just by doing a HTTP request (from any programming language) it is possible to spin up a new demo and get the public address, similar to others IaaS platforms.
Thanks to the previously mentioned features like max environment limit, environment TTL and scheduled rebuilds, we were able to ensure that the solution would be able to be performant and roboust with at least 150 concurrent environments running.
The result
The form is the entry point for potential clients to request a demo instance of 1xDXP, then, after confirmation, Qaack creates a new environment and sends the credentials to the client via email.
The process can be summarized in the following steps.
First the clients or users get access to the Try Drupal form using a QR or organic web browsing, there, they fill some data and provide a valid email.
Try Drupal form on 1xINTERNET's website
After submitting the form, the user receives an email with a confirmation link, which they have to click to confirm the request.
Try Drupal confirmation email
Once the user clicks the confirmation link, Qaack creates a new environment with 1xDXP and sends the credentials to the user via email.
Try Drupal credentials email
Finally, the user can access the environment using the url and credentials provided in the email and check the demo in detail.
Try Drupal environment running on Qaack
Behind the scenes, Qaack is taking care of the environment, ensuring that it's up and running, minding the available resources, so the environment is only created if the limit is not reached and it's destroyed after 2 hours.
Your own demo experience solution
Are you looking for a demo solution like this one?