I am pleased to announce that i have created a tool for creating plugins.
It is a windows .exe file, but i am hoping to port it to mac and linux quite soon
You just work through the program following the numbered buttons. The program only creates a backbone of the php code needed, saving time and effort.
It requires the .net framework 3/3.5
You can download it here:
http://joecotton.co.uk/mybb/index.php
Enjoy! And please report any problems!
Thanks
Nice
The file is 100% clean according to virustotal.com aswell.
Okay, for the first version this is pretty nice
There is still room for improvements though, for example:
- Pressing TAB let's you jump to a random field but not to the next field (minor)
- It'd be nice if the EXE could save some info, for example save the author's name and website into a settings file or anything (saves work)
- Uninstall generator seems to be buggy:
$db->query('DELETE FROM '.TABLE_PREFIX.'settings WHERE name IN(
'$setting_group',
'$setting_group2',
)');
I didn't add settings with these names
- Template replacement could be included, same with hooks
- You have to get used to it first, I think it's not so easy for noobs to handle.
Explanations for all steps like for the plugin info (which is great) could be useful.
Thank you very much allready - I used it for my new plugin
Kind regards
Lennart Sauter
EDIT: Plugin works nicely after correcting the uninstall bug
Good job!
Hey,
I was working on one of these last year, but with my follow-through ability it kinda fizzled out. Nevertheless I was in a slightly more advanced state then where you are at now, so I'll offer some pointers.
1. Multiple files. Yeah this is a big blueberry and took me a week to get perfect. Options such as adding language files and other code files are really a must for more complex plugins. Basically what I did here was store the project files in one folder, with an Access Database to give the path where each file was stored. When a project was compiled from within the editor, the file structure was outputted. And when opened the files were organised in tabs.
2. Bigger text editor. More advanced plugin makers would still use custom code, so a fullscreen editor is extremely useful too. I could never get syntax highlighting to work properly in C#, but if you can, that's a major selling point.
3. Hooks and templates. Template/CSS editing is easy enough with a knowledge of regex. I just had a "find/replace" option for templates and CSS. For hooks you could just add a menu item for "run hook" and ask for the hook name, function to use and what function to place the run_hook code in.
4. Menus. This kind of ties in with the fullscreen editor dealy. Hide your buttons within a main menu and your text boxes on a different form (under a configure menu item or something). This will allow the text editor to take up more space and make the interface more elegant to work with.
You have achieved a nice, lean first attempt which is brilliant. (When I say lean, I mean it, my uncompleted version was 3.2MB) It will certainly make life a lot easier for many plugin makers - kudos.
@blueparukia to main point of this is to create a template not the whole plugin.
However, I am nearly done with mine and allows template creation. I am just fixing one issue in saving the settings
Edit:
see here:
http://community.mybboard.net/thread-54240.html
@2KH good good
@Lennart Sauter cool, glad is could be useful... Ok, this is still a Beta so expect some more advanced features and an improved interface coming soon! It finished it in a hurry to get it out before Pirata Nervo
@blueparukia Thanks for the advice, i will try and implement syntax highlighting a a tabbed editor soon
. In the meantime, i'll work on the multiple files
I will also work on a better interface
Thank you all for the feedback
Release 1.1 expected:
Later today (9th) or tomorrow (10th)
Drops jaw.
VERY nice! It's obviously still got a long way to go, but it still will be a very useful tool. Thank you for this!
Ahh damn, how much I hate Microsoft. It makes things so hard to re-distribute..*sigh* error when executing application on other computers. I fixed this in my previous apps but I don't remember how.. grr