Student projects/Moodle IDE
Note: This page outlines ideas for the Moodle IDE project. It's a specification under construction! If you have any comments or suggestions, please add them to the page comments.
This project is about creating a Moodle integrated development environment (IDE), based on Eclipse, so that new developers can begin developing Moodle in less time.
Ideas:
- First release: Eclipse + Plugins + Moodle splashscreen + CVS Configuration + Apache + MySQL + Moodle CVS code. All preconfigured and ready out of the box.
- Moodle project will automatically packs the Moodle version that is downloaded by the user
- Check style plug-in alike to follow Coding Moodle Design Guidelines.
- Development help (can be wiki pages to navigate offline)
Moodle IDE
Eclipse ✔
Selecting the base of the Integrated Development Environment (IDE) is one of the most important thing because it will be the key of the development process. I decided to start out with the latest version of PHPeclipse.
- T1 Develop an Eclipse wizard that will automatically extract the Moodle and XAMPP zip files to create a Moodle project. If the user has already XAMPP installed, then the user should be able to specify the XAMPP .htdocs path
Splashscreen ✔
CVS ✔
CVS plug-ins is already built into Eclipse. The discussion about this is that if there are too many X times of checking the new version of the Moodle and packs it, then there will be a huge server loads, with the addition that not everybody would want to always packs the new version when it's been released. So, creating plug-ins to bridge the user interface and the CVS script is one way that I think is more appropriate, but I'd like to do some more research on the CVS behavior.
- T1 Research the behavior of CVS in Eclipse
Apache + MySQL ✔
- XAMPP for Windows
This Windows version will be the first one that will be packed out of the box with the Moodle IDE.
- T1 Configure the XAMPP plug-in for Moodle IDE
Plug-ins ✔
- Checkstyle 4.4
- T1 Create a checkstyle template that follows Coding Moodle Design Guidelines.
Screenshot
Environment
Releases
1.0.0
- Community feedback forum discussion
Features
- Create a Moodle project
- Apache, MySQL, and PHP
- XDebug
- Moodle CVS
- Splashscreen
1.0.1
- Community feedback forum discussion
Features
- More automation
1.0.2
- Community feedback forum discussion
Features
- Moodle Browser
- Checkstyle
1.0.3
- Community feedback forum discussion
Features
- Installer
Installer will extract the Moodle IDE package in the specified user location, then create necessary shortcut that will be helpful for the user. At the end of the installation, the user will be able to decide to open the HTML readme after the installation or not.
- Shortcuts on desktop and start menu
- Moodle IDE (eclipse.exe)
- XAMPP Control Panel (xampp-control.exe)
- PHP doc (http://www.php.net/manual/en/)
- HTML readme (only on start menu)
1.0.4
- Community feedback forum discussion
Features
- Installer verification if the user has JRE installed, if not then download it, otherwise proceed installation
- Relative preference configuration to allow installation anywhere without having to configure preference manually
1.0.5
- Community feedback forum discussion
Features
- More automation on XDebug
1.0.6 *Updated*
- Community feedback forum discussion
Features
- An option to Download the Moodle package then unpack it automatically to the project
Fixes
- Add xdebug.remote_mode=req to the php.ini Apache configuration for XDebug
- Enable php_curl.dll and php_openssl.dll
- Change the memory_limit = 32M to memory_limit= 40M
Notes
Groups
so we have 3 different groups:
- admin maintaining hacks on production site
- they check out latest stable branch into dev server
- test moodle
- tweak moodle
- copy test->production
- upgrade test server - eclipse does wonderful merging job here
- test changes
- copy test -> production
- contrib code developer
- general other users learning PHP or Moodle coding
Important Dates
- July 9, 2008: Midterm evaluation
- August 11, 2008: Final week
- Google: August 11: Suggested pencils down. Take a week to scrub code, write tests, improve documentation
- Google: August 18: Firm 'pencils down' date. Mentors, students and organization administrators can begin submitting final evaluations to Google.
- Google: September 1: Final evaluation deadline.
- Google: September 3: Students can begin submitting required code samples to Google.
See also
- GSOC/2008
- Eclipse Projects COBOL, C++, Java, and PHP IDE
- Moodle IDE application abstract
- Using Moodle GSOC: Moodle IDE forum discussion
- Dr. Dobbs Journal Eclipse Podcast
- Wikipedia article: Integrated development environment
- Moodle IDE: Community Feedbacks forum discussion
- Moodle IDE Release (1.0.0) forum discussion
- Moodle IDE Release (1.0.1) forum discussion
- Moodle IDE Release (1.0.2) forum discussion
- Moodle IDE Release (1.0.3) forum discussion
- Moodle IDE Release (1.0.4) forum discussion
- Moodle IDE Release (1.0.5) forum discussion
- Moodle IDE Release (1.0.6) forum discussion