 Okay so we'll start. So hi everyone. Thank you for joining the session. Today we'll be talking about building your existing project with doxel. So today I read the mob role. And my colleague Suji Kumar Verma will be presenting the session. And we both work as Drupal developers at student technologies in India. And lately we have been working into a media and Buxmash initiative in Drupal contributions. You guys can reach out to us at our Twitter handles that are given here. So let us see that what all we are going to cover in today's session. So we'll see what actually doxel is why we use doxel. What is the installation process, how to create the environments for Drupal 8 online. We see the project directory structure the stack and the database configurations. And lastly advantages of using doxel. So yeah let's start. So firstly we need to understand that what actually doxel is. So doxel is basically it's a tool that is that works on Docker and virtual box. And it creates fully containerized environments. So basically it is used for defining and managing your development environments. Basically each project that you have on your local it is in the form of containers. So for example you have two projects so there will be two separate containers for those two projects. And whenever you need to whenever you do anything inside a project you have to do any development whatever you need to do. First you'll have to enter your containers. So another feature that doxel gives us is it comes with a default command line tool that is spin. So it really simplifies the management of all the components and we'll see how in the latest slides. Next doxel comes preloaded with various common tools and services that we commonly use for Drupal development. For example your Drupal console your composer PHP code Drupal Drupal your drush Drupal console and all of these and services your Apache solar your memcache Selenium and all of these. So there are various services that that already come with the doxel package. But again if you need any service that is not present in the doxel package. So you can easily add it because these services are containerized with Docker. So it's really easy to add those additional services that you need for a project. So yeah that what so we saw what doxel is next we looked at why do we need doxel. So whenever we use some product or some tool you can say so there's always some motivation behind it or there's always some problem that a person may have faced. So same was the case with us we faced some of the challenges that we faced many challenges prior to using doxel. So I'll just take you through some of the challenges that we were facing. So as a team when we work when we develop any applications as a team. So there are different peoples that are aligned to that project. So each person has a different machine and each machine can vary. Maybe a person one person may be using Linux machine and the other may be using a Mac machine. Also there can be difference in versions of some software or tools that you're using. So all these really create problems later on when you actually merge or when you actually deploy your code. So doxel really solves that because doxel is containerized. So it makes sure that each person system is the same the environment that you are developing is the same. So hence doxel is really helpful there also as we saw in the previous slide it already comes preloaded with various tools and services. So another problem that people generally face development team generally faces that when we do a setup when we do a project setup. So we spend a lot of time just to install various tools, various services. We spend so many hours just doing the setup on our local machines. So doxel really saves that time that tedious process is really eliminated when you use doxel. You will see later on that doxel with doxel you can just set up your project with a few basic commands and very minimal configuration. So we'll see in the latest slides how. Also when you upgrade when there is any upgrade to any softwares or tools again each person has to do that separately. So with doxel that does not need to be done. If your service because the services are containerized with doxel so they are automatically updated when it is updated in the doxel. So that was the main challenges that we faced prior to using doxel and hence that encouraged us to use doxel. So next we'll see we'll come to that how actually we can do the setup for doxel. So the first is the installation process. So by visiting the doxel's official website that is doxel.io you can download the doxel package. So you can download it in your supported version whichever operating system you are using and there will be some instructions that you will see on the screen. So you'll see that doxel is installed in just two to three steps. Also once doxel is installed on your system what you have to do you will have to run a command that is when VM start. So when VM start it basically starts the doxel application in the background. So it makes sure that your doxel is running and once the doxel is running you can actually start building your projects or you can start developing or you can start setting up your projects whatever you need to do. Okay so another way of installing doxel is by using this curl command that is shown here. So you can use this as well. Also as we saw there's a fin command line tool. So I already mentioned that whenever you install doxel fin automatically gets installed and it really helps us with the development processes when we do in all the configurations and all. So yeah that automatically comes with the doxel package. So yeah now I'll hand over to Sujit for the next part and I'll catch you later. Thank you Ritma. Hello everyone. So creating the environment for Drupal 898 doxel. In this process the first step is to initialize the dedicated stack for a project. So the code in my mind what is this stack. So stack are preloaded with some common development tools like composer, PHP code sniper, PHP CLI etc. For that we need to run one command fin in it. Basically it is for initialize your project. So run the command within your project directory and give the answer of some simple questions in form of yes and no, y and n. At the end it will generate the project URL. So this is how we can create the environment for Drupal. So in the next slide process to start a Drupal project. So we have some simple step to start your project Drupal project. First create the doxel directory. It is a very important directory because all the settings configurations comes under this directory related to doxel. And the next is doxel directory. Your Drupal code base come inside that. And after done all the above work run the command fin project to start. Fin project to start to basically run your project. So now your project setup done successfully. We already already generated the project URL in the previous slide. So open it in your browser and check your setup is running successfully or not. And there are simple steps to start your project. So this is how we can start our project. Next slide please. Project directory structure. Project directory structure basically it is the structure of your directory. As I already added the screenshot. So in the screenshot we have your project root and two important directory inside that dot root and dot doxel. Dot root basically you have to put all your Drupal code base inside that. And dot doxel directory you have to manage your configuration setting within this directory. So this is all about the directory structure. Previously we have discussed one method and set up Drupal project. And now this is another one quick start using a boilerplate. So this is a very simple process. We need to follow some quick steps and your setup is done. Run the command fin project create. So it is basically for creating a project and give some inputs like the blue screen like your project name and project type. So at the last you got the project URL and your setup is done. So this is a very simple process to set up a Drupal with doxel. Stack configuration. We have some predefined stacks. We have separate slide for that. So we will discuss this about later. Now we discuss about the default stack. Default stack is preloaded with Apache, MySQL and CLI. Whenever you set up any project income it's come with default stack. Now we discuss how to change one stack to another. So we have a file called doxel.env. This is an environmental file and the format of this file is in key and value pair. So we need to update the value of doxel underscore stack. With the stack you required. In my case I have a default one. So I have right doxel underscore stack is called default. So and run the command fin project reset. So it will reset your configuration. So this is all about the stack configuration. Custom stack. Custom stack means we override your current stack with the help of service you required. It is also play a very important role like if you require some new services in your current stack then you can declare that services in doxel.yml file like the blue screenshot. For example in the current stack we have a MySQL but our requirement is post-gray SQL. In this case we need to declare this service to doxel.yml file. And as I already attached the screenshot please have a look. This is how we can create the customer stack. Now move to the next slide custom configuration. We can add custom and static variable very easily for that we need to define it in the .yml file or as well as .env file basically environment file. So now if you want to verify that your custom variable added or not for that we need to run the command fin config. So it will give you the list of all the configuration of your current stack. So this is all about the custom configuration. And the next one is available stack. Doxel having some predefined stacks like we have already discussed about default. It has come with Apache, MySQL and CLI. And default no DB it has come with Apache and CLI. Aqua it has come with MySQL, Apache, CLI, Warners, MAMCAS, and SlopeSolar. Pantheon also have Angelix, MariaDB, CLI, Warners, Radies and Solar. And last but not the least Node comes with CLI. These stacks are very helpful at the time of development. And that's it from my side. Now I hand over to Ritima for explaining the remaining slides. Thank you. Thank you, Sujit. So we'll look at the last part, which is the database configuration. So when we install Doxel, it comes with a default DB whose name is default. So what we leave to do, we have to navigate to our project directory. And then we can import the DB by running this command pin DB import and path of your SQL dump file. And you can see that your DB will be imported successfully. After you have imported your DB, you have to configure your settings.php file. So what you have to do, you have to include this piece of code in your settings.php file. So it basically contains your DB name, username, password. And you can change these, your credentials or the DB name with the help of FN commands. And after you have saved the settings.php file, you will be able to access your triple site. So a triple site will be ready for the development. So this was the whole setup that we need to do to set up our projects with Doxel, Drupal projects with Doxel. So now we'll be looking at some of the FN commands. So FN basically provides us with a list of commands. It has various commands. You can see all the list of available commands by running one command that is FN help. So FN help will make you get the list of all the available commands. So for example, there is a FN create command. So it is used to create your projects. Then there is a FN up command. So basically it start your containers. Similarly, there are FN stop, FN restart. It stops your container, it restarts your container. Then we have a FN DB import. So what this command does, it truncates your database and it imports your SQL file. And again, we have FN DB dump. So what this does, it dumps your database into a SQL file. Similarly, there are various commands and you can check that with the help of FN help command. And you can use these commands as per your requirement. So lastly, we have the advantages. So we saw about like how we did the setup. So we saw that there was hardly any configurations. Like there were, but there were really very little configurations that has to be done. So very minimal configurations. And one main advantage that we see Doxel gives us is that it has fully containerized environments. It creates those environments. So again, if you have different projects running on your system and each project has a different requirement, has a different version requirement. So you need one project need PHP 7.1 and another needs PHP 7.3. So that can easily be accomplished with Doxel. So yeah, again, we saw it works really faster. The process is not at all tedious as it is with the normal setups. Also, we saw that it comes with many common tools and services. So most of the time you don't have to install any additional services. But yeah, in case you need that is also very easy. Also, one more thing we saw that we don't have to configure our virtual host manually. So you saw that it automatically generates your virtual host. It automatically configure your virtual host. You don't have to do that manually. So yeah, these were the main advantages. And this was all about Doxel Drupal setup with Doxel. And for more detailed information, you can refer to our blog post. So building your existing Drupal project with Doxel. Do have a look and give your feedback. Yeah, also, and regarding the session, do let us know how the session went. We'll share the feedback form in the chat section. Do show your valuable feedback. Thank you. And this is what's coming next. Thank you.