 Can you please confirm if you see my screen. Yes, we can. Okay, great. So hello everyone, welcome to the session for related to the project browser. So the title is unlocking the potential exploring the project browser initiative for enhanced efficiency and collaboration with Drupal. So, yeah. So what is the problem definition here, right. So now, as we know that in other other than Drupal CMS, if we talk about let's say WordPress, whenever we try to install the WordPress site. So there is what we can do is we can simply install it and with a single click we can get new plugins as like for whatever functionality we want. But in Drupal, what happens that whenever we install the core, so there is a core, you know, core modules, which is a set of modules, which we install in a go. But after that, if we want to install, let's say any country module, for example, tokens, see tools or anything. So for that we find a bit difficult difficulty there like what happens that we will have, we should know that where we should first of all search for it like whether Drupal has that kind of sort of functionality or not. Then we need to know that how exactly we can find it and then we need to know that how to install it for those sort of things we should know those commands or like those sort of, you know, structure like how we can get that particular plugin. And this is this is where it becomes a bit relatively difficult to use, especially for the new users who are coming to Drupal. So now what is what is happening because of that is that I user find a bit difficult these things and they are actually losing interest in Drupal because of these sort of things like they are thinking that it is a bit difficult or challenging to find new plugins and then install them on those sort of things. Because it involves a lot of new steps, which I just talked about. And after that, sometimes we need technical skills as well, like, you know, composer, because we know that composer is what right now is managing the dependencies between the plugins. So we should know the composer state commands like how exactly we install it then how exactly we enable those sort of modules. So this becomes a bit difficult because not everybody know how to use the composer. So this is a bit like this is the problem definition here. And what is our goal goal is to simplify that we want to give users such an experience that the process of finding and installing the module becomes easier. And this is for those users who are actually like, you know, individuals and new to Drupal, like the site builders, they don't know actually the coding in the back end. And what it actually we want along with this is that the developers, let's say I'm a developer, but I don't know exactly how to run the command for composer and those sort of things. So I should have some sort of, you know, a handbook or something like that, where I know each command and everything that this is what I run and then I will get the module without leaving the site. I will be on the site all the time and I'll be doing the development as well, along with, you know, searching for the modules. So the overall objective here is to enhance the accessibility and use it use the ability for various user groups like the developers and site builders and the individual new members to Drupal. Yep. So, currently, so this was the initiative and from few years is set of people. And basically they are working towards developing this thing and we call it a project browser. So right now it's a contributed module. And we need to install it in the system for now. It will become a part of Drupal in future. So what will happen that as soon as we install the Drupal code, it will automatically be there in the Drupal code base, but right now we have to install it. So what happens after that, the module is installed and we will get a new tab called a browse just next in the extent section. So there is an extent section we see in the admin toolbar from where we install the modules we click on it and we will see the browse tab as well. It will show everything to you like on the site as well for now. I'm just explaining and there we will get a UI to explore in the Drupal.org module word. So we will get each and every module which is there in the Drupal.org in the real time because so there is a API which is getting called in the backend which will get all the modules in the real time and then we can actually see the commands how to install it or if you want to install it also we can install it. So this is how it works now. Along with this there is a very important and you know powerful feature which in future which will come is that this project browser will give us extra you know kind of feature in terms of let's say in my site I don't want to install each and every module and I don't want to give the functionality for that site builders to basically just go to this tab and you know install whatever module you want. So for that also I can write my custom plugins in future it will come right now it's not there so we can craft a custom plugins and that what it will give us that we can simply you know kind of remove some sort of modules that these sort of modules I don't never want to be installed on my site and those sort of things so I can you know personalize as well as per my site so that feature will come in in future because Dooper.org is a wide you know site and there can be any any module which can be listed in my site and there is a security risk as well there so because a lot of different sort of modules will be there somebody can install any module and it can and it can create problem sometimes so this is a feature which will come in future. Any questions till now. Yeah, so I'll explain this slide. As well right now so we talk about automatic updates module so there is an automatic update module available in Drupal and I may already gave presentation around this so there is a relationship between automatic updates and project browser module here. What is the relationship is that there is a sub module which comes along with automatic updates the module name is package manager. So whenever we install project browser we need we should we need to install automatic updates as well because package manager is a part of automatic updates and project browser also needs this module. So there is a dependency in this regard so so let's say if we directly install package project browser but do not install automatic updates then we will not get the functionality to install the module on the site we will only be able to see the you know commands and everything like this is the command to install the module manually but we will not be able to you know kind of integrate the module installation with the Drupal. So once we install automatic update you do not need to enable it you can only enable package manager and it will give the option to in install the module via project browser. So there is a relationship so what will happen in future is that automatic updates and project browser both will be the part of Drupal core and package manager is a common module which is being which is basically being used by both the modules. So that so this is how the structure will be in future but right now it is a bit segregated and this is to basically know that this is how it works so I'm telling you right now these things. And in the absence of package manager as I already mentioned that user will be only able to see the instructions that this is how the module can be installed via composite but they cannot perform the actual updates there. Yeah, so it's time for them now. So actually I'm using it for because of if I'm not active for some time it gets timed out but let me show it to you meanwhile it gets bigger. So this is the project browser page on Drupal.org. Now here we can see, you know, there are different screenshot attached, and then we can see the problem statement as well. For someone who wants to, you know, kind of understand it in deep, they can simply go and try it out, try it here. This will spin up environment similarly what I'm going to do, but I'm just telling for, you know, like checking out later. Then there is a initiative page which I will show you and everything is explained here like how it works and everything. There is a requirement that it will only work with Drupal 10 plus. And yeah, along with this, let me tell you one more thing. So there are some modules which are dependent on the libraries. So as soon as we install those, I mean, any sort of that module, it will automatically take care of the library as well. So you don't need to, you know, explicitly download the library or install it, it will automatically take care of every single thing. So this is the power of this movie. So now we have our site up and running. We can see here in the code base that it has few modules under control, which is project browser. Okay, this is installed for us. Now there is other module which is automatic updates. As I mentioned that this module would need it to install the site. And along with this, there is a package manager. So this is how the structure look like. So package manager right now is a part of automatic updates. Now we install it just to get this module. And in my site, right now the package manager is installed, but automatic updates is not installed. So this is how right now the current scenario is. Let's go to the site. Okay, so now in the, if I go to extend, if I look for the project browser, this is the project browser module. There is a configuration page. So I'll let's go to the configuration page. Now there is a thing to be noted that if I do, let's say if I do not install automatic updates because there is no dependency between these two modules. So what will happen? Now this particular checkbox will be unchecked and grayed out in that case, which means that it will not allow installing the module via UI. So it will be unchecked and grayed out, which means that it will only show the commands that these are the commands to install the module. Now right after we install the automatic updates and package manager, then I get this option enabled and then I can check and uncheck this option. So this is the difference. It will not break. It will just show the commands. So that's the first thing. The second thing is that it has a Drupal.org mocked API, which is right now enabled. And this is what is responsible for getting all the real time modules data from Drupal.org. Okay, this is the configuration please. The other setting which is there is to disable add new module page. So we see that this add new module tab is there, right? So as soon as we disable it, it will go away. So what happens that let's say we don't want user to install new module from this page. We only want install user to install all the modules from browse page. So we would definitely want this to go away, right? So in that case, we can disable this setting and it will be, it will disappear. So the user will be only able to download the model from the browse tab. So as the slide said, we now have a browse tab here. So let's go to this one. So this is how it looks. Okay. By default, the maintain and covered by a security policy check. These filters will be selected. We can see right now it is showing me 4,180 results. It means these number of modules. We have different filters here. So these are the category of modules. So let's say if I want to only search for the e-commerce I selected, it gets enabled here. And we can see only the e-commerce module here. So as I mentioned, so these are the modules. There is, you know, pagination and two sort of things. Then as I mentioned that if this is disabled, it will only show us the command. Right. So let's go to this page again. We see view command right now. We click on it. Now it says multiple things how to download the recommended way of doing this is Composer. We can use this. We can pop it from here. How to install use these commands and it will be installed automatically. So this is how it tells us. Now I don't, I don't have to leave this my site to go to tuple.org or anywhere. I just, I can simply use these commands and install my site. Right. Similarly, let's say if I enable this. So this view command gets changed to add an install. Now I can install my modules. But right now, if I click on it, there is some error which is coming up. It is because right now it is running on the grid pod. So there are some, you know, limitations, but if we run it on the different environment, it will basically what it will do. It will, whenever I click, there is a command which will run using Composer in the backend. Similar commands, which is, which was shown there. Right. So first of all, the composer, then the Drush commands and it will download and enable the module. Along with that, whatever the dependent modules also, it will install those as well. Along with the libraries. So this is how it looks. And in the last, as I mentioned, the package manager module needs to be installed. If I show you automated. So this model is not anyone correct. But the package manager needs to be installed. If I disable the package manager, this option will be grayed out. So this is in general about package manager. And the module. So that's all. Any questions? Yeah, I got a question. Thanks for that. So it was really cool. Is there any plan to also support adding patches for particular modules? I think right now I did not see anything related to patches here. But yeah, I, but I need to check for the stable release actually. Yeah. Yes. So patches are going to be manually added. Okay. Go. And it is actually right now it's in, you know, a testing phase. So there might be some issues, but we like multiple sites are using this also like 300 plus sites are using it. But just to add, just to add to it, like it uses composer by default. So if you're in stock, if you click on add installed, the module will be installed via composer. So you can extend the composer and do whatever you want to do. And secondly, it also lets you create a plugin for. I think I got a mention it, but I just wanted to stress. It also lets you create a new plugin for the project browser. So you can restrict access. You can like do a lot of changes there. So yeah, you can allow some categories to be filtered. So that also restrictions you can put. Got it. Tyler has put a question in the chat. Are the modules the seven project browser up to date? Yes. So the modules which we are getting are up to date and to their latest stable release. Like I mentioned here, let me go back. So there are only two filters by which the modules are getting, you know, maintained currently actively maintained and covered by a security policy. So it means the latest table release. I have a question. So this module allows you to install a module, but if there's like a security release that comes out, would it allow you to upgrade it to the new version? So, so basically this is what where the automatic updates module will come into picture. So those two modules, you know, they. So I think that will happen via automatic updates. We can install the latest update via that module. So I mean, this is a set of, you know, features which will come, which will be basically, you know, covering by automatic updates and this project browser. So both the things will be working together. And any other questions? I'm sorry. I also had a question in chat. There's a question from sign chat. Do you use this if you're a developer? Does it make it faster? Most of the time spent choosing modules is looking through code, but I don't see quick access to review the code of a module. What do you use this if you're a developer? That's the main question. See, so basically, let's say if I'm a developer in my, from my perspective, sometimes we are not aware that like what all modules are available for, let's say just for anything, let's say accessibility. So I don't know like what all modules are there. So at least I'll be able to, you know, list out all the modules. Okay. These are the modules I can look into. And then after that, I can simply go from here to the modules, you know, detail page and I can see like this is the board and everything. So at, so definitely I will use it because it will give me more flexibility in terms of getting, you know, getting about modules in general, all the modules and then it definitely gives me all the steps, you know, from here only I can install it from here I can see the commands. So definitely it has a good impact for sure. Thanks, Gaurav. I think I have a question. I have another answer to this side. I think this initiative and this module is mainly to help with the, one of the biggest issues that everybody says with Google is the cost of entry, the barrier, the entry barrier. So I think this module will help with that. So people who are new to Drupal or people who are not developers, developers, but are afraid they should, they would be able to, you know, use this module and this will help them in installing new modules, et cetera. But I do do understand what you're trying to say because as, as if I look at the people here, Gaurav who's been working with Drupal for 10 years, I don't think he would use, if he knows which module to install, he will not use the project browser. He will just go ahead and do a composite acquire. Yeah. But again, you're saying, sorry, I'm just reading out his comments in the chat. Today I looked at three themes which are modules and I had to look at the code and none of them were appropriate, totally valid. But then you don't want the code in prods. So you have to move it before deploying it. Let's do more quickly install crap that makes their site bloated. Yeah. Actually, there's another group of people who are still using the WordPress because of these things on it. Still, I can say it would be very useful for the, for those kind of group of people who are managing site themselves without looking into the server itself. They just want site hosted somewhere and they can easily manage using the plugins, modules, etc. Totally. So I think this is the counterpart of WordPress plugin installer. And totally agree with it. This is not tool for system developers. That's pretty clear. It's more a tool for newbies or people who are trying to try their hand on Drupal. It is more about Drupal as a CMS, not as a framework or that we are used to saying that Drupal is not just a CMS, but if you talk about CMS, it is very useful and it should be available to those person who are using Drupal as the CMS only. So they need a module or any customization in their site. They can easily search plugins here and do that. It's really hard for a non-technical person to look into Drupal.org and figure out something and install the module manually. I have a question. Is there a way to restrict the modules that you see? So if I just wanted to allow people to install a strict set of modules. So there will be a plugin system which will be there. We can create our custom plugins to restrict users to see set of modules and even try, we can do different sort of things like maybe I think introduce different sort of filters or those sort of things as well. But right now the roadmap is not, you know, so it's there. But it's not clear right now what all is going to happen. But there will be definitely custom things which we can do with this inclusion. I can see the practical use. If that was available like in CMS, like you just allow certain set of modules that they can install. Yeah. All right. So yeah, the best use case of a distribution that might list modules that can be installed. Yeah. That's exactly what you want to see. Any more questions? All right. I'll stop recording then. Thanks a lot, Sean, for this.