Hosteruser
09-29-2008, 07:30 PM
How many people have created custom modules for Cpanel ... and do you have any resources on what we need to do?
![]() | View Full Version : Control Panel programming ... Hosteruser 09-29-2008, 07:30 PM How many people have created custom modules for Cpanel ... and do you have any resources on what we need to do? markfrompf 09-29-2008, 07:58 PM We just skin our cPanel and leave it alone :D There's beauty in simplicity, plus we aren't risking having our changes wiped out during the next /scripts/upcp --force Tim Greer 10-03-2008, 01:19 AM Myself and some people I know have created modules for Cpanel, including replacing existing functions that are more secure, have better sanity checking, etc. What are you looking to do? Are you sure you're not just trying to interface with Cpanel via an API, and not really needing to create a module/extension? justsurge 10-04-2008, 09:00 AM hi, cpanel has documentation on this. it has to be written in perl and placed in a certain dir. in a reseller section? eliot luke_a 10-04-2008, 04:01 PM How difficult would it be to develop your own control panel? What kind of restrictions are there on the choice of programming language, etc? I think Plesk is php (as it appears to have .php3 file extensions, which is old!), and I think CPanel is in Perl, but that may just be for their web front-end interfaces - they could be developed using other languages in the backend to perform the actual functionality. I would like to have a go at developing a control panel, Linux would be easier than Windows surely? But I hope to do both eventually. I was thinking of tackling it using C or C++, and possibly PHP for the web gui, or am I wrong? Tim Greer 10-04-2008, 05:20 PM You can use PHP, Perl, C, C++, Java, Python, Ruby or anything else that will be low level enough, or any combination of those things. I'd personally recommend C or C++ or Perl. It's not an "easy" task, but it's not that hard either. It really depends on your knowledge of systems, what you want the control panel to do (just provide an interface or do server software updates, apply security settings, effectively take a plain white box install and do everything it needs), or if you want to interact with existing programs/services, like Apache, QmailAdmin (rather than having the control panel modify and create things and basically do what that program already does), and that sort of thing. Also, how well you know the language of choice. You have to know how to code efficiently, securely and create a stable, reliable interface, ensure it doesn't break any configurations, and about 200 other things. From there, you can create API's, modules, etc. to plug things in or add to it. I've worked on control panel projects before and I don't think many people can really do it well or safely, but that's just my own opinion about what I've seen people do. It's not that hard, but it's usually people that code in PHP for web pages, do a little web design and sys admin that think it is doable and then without the proper knowledge or guidance, they create a lot of problems for themselves. So, if you know how to do it properly, then it's not that hard, it just takes time and you need to consider what you want it to do and how you want it to work, and what features it'll have and how those will work. I had completed about 95% of a control panel back end with the service, allowing for modules and API calls, where it would just be to the point where you'd start adding things in a safe way, but stopped the project, since you need to have a good motivating reason to do a large project like that, unless you happen to just have that time (in which case, I'm jealous). Myself and some others are going to pick up on a control panel project soon, for in-house development for our company, to eventually replace Cpanel, but we have no plans at this time to license or sell it, even though we believe it'll be far superior in every way, since you have to have the client base. But, again, it takes a good deal of time, depending on what you want it to do. You can get a decent service, interface and features working to do a few dozen things in a week or two, if you know what you're doing and have worked on projects like this before, but if you want to start offering API's, modules, extensions, skins, plugins and do things like keeping servers up to date, trying to have it do all the things like Cpanel does, etc., you're probably talking a few months of development if you could spend a good amount of time on it without being interrupted. Exia 10-04-2008, 06:34 PM How difficult would it be to develop your own control panel? What kind of restrictions are there on the choice of programming language, etc? I think Plesk is php (as it appears to have .php3 file extensions, which is old!), and I think CPanel is in Perl, but that may just be for their web front-end interfaces - they could be developed using other languages in the backend to perform the actual functionality. I would like to have a go at developing a control panel, Linux would be easier than Windows surely? But I hope to do both eventually. I was thinking of tackling it using C or C++, and possibly PHP for the web gui, or am I wrong? We're currently in the midst of doing the same thing. In my personal opinion, the only restriction on the choice of programming language; is which one you are most comfortable with. Linux is not necessarily easier than Windows, but unless you have a fair bit of experience with say .NET and interfacing with Windows services - you might just want to go with Linux, which is more easily manipulated in my opinion (that could just be habit on my part). We're using a mixture of C, PHP and Python - and it's coming along quite nicely. So no, you're not wrong, and I wish you the best of luck in your endeavour. :) |