To get started as a developer, you will need to install and set up various programs. It's definitely possible to use alternatives for the proposed tools, though the tools listed below are the ones that I am accustomed to in case if you have any support questions for them.
The general process is outlined below:
- Install the latest Mozilla Thunderbird 2.0 version if you haven't already done so
- Install the Thunderforce development tools and extensions
- Download the Thunderforce source code into a new Eclipse project
- Download and compile the Mozilla Thunderbird source code
- This is optional, but helps immensely with software development and debugging
- Sign up for a Salesforce.com Apex Developer Network (ADN) account to get a developer edition organization if you haven't already done so
- Your developer edition organization can be used to develop and test Thunderforce
- Developer edition organizations have API access, though they are limited to 5000 API calls per 24-hour period
- You can develop and test Thunderforce even if you don't have API access in your Salesforce.com organization or if you don't use Salesforce.com at all
- Create and configure a Thunderforce testing profile in Thunderbird
- Familiarlize yourself with Thunderforce's test framework
- Grab a module and develop it (module list is pending the architectural review's completion)
- This project's process politely asks that you use a process of refinement from a design to the code along with test-driven development
- Create a design for your module on the wiki
- Implement your module in parallel with your unit tests
- When possible, create your unit test before your code and use the test framework to verify your module's operation under those test cases
Development tools and extensions
Please install and set up the following:
- Eclipse IDE for C/C++ Developers
- Create and switch to a new Eclipse workspace for Thunderforce unless if you aren't using Eclipse for anything else
- This can be accomplished through File -> "Switch Workspace..."
- Optionally, you can create a shortcut to start the Thunderforce workspace directly by running eclipse or eclipse.exe with "-data" followed by your workspace folder path
- Example: eclipse.exe -vmargs -Xmx512M -data d:\Devel\Thunderforce
- Eclipse Plug-Ins
- Adobe JSEclipse
- Registration required, unfortunately
- You can use BugMeNot for the Adobe account if you want to
- Subclipse
- AnyEdit Tools
- Installation URL for Eclipse's built-in installer is http://andrei.gmxhome.de/eclipse/
- Only AnyEdit is needed. The other tools aren't needed unless if you want to install them
- Configure AnyEdit to convert all tabs into spaces
- This is in Window -> Preferences, General/Editors/AnyEdit Tools
- UMLet UML editor
- Oribe XML (being deprecated; I think Eclipse has its own XML editor now..)
Thunderforce Eclipse project
The following steps walk you through the process of importing the Thunderforce Eclipse project into your workspace:
- In your Thunderforce Eclipse profile, select "Import..." from the "File" menu to begin the process
- Within the "Other" group, select "Checkout Projects from SVN" and press the "Next >" button
- Create the https://www.moonlightdesign.org/thunderforce/svn repository location if it isn't already created. Press the "Next >" button
- When asked to select the folder to be checked out from SVN, select the "trunk" folder and press "Next >"
- Eclipse should automatically detect that the project is named Thunderforce. Press the "Finish" button to complete the project setup
The Thunderforce Eclipse project is presently split into three main folders:
- architecture
- The high-level architecture and any detailed design diagrams live in here
- extension
- tests
- Integration and unit tests live in this folder, which is structured as a Thunderbird extension. Because these tests are designed to test Thunderforce, this extension requires that the Thunderforce extension is also installed in a Thunderforce profile
Thunderforce testing profile in Thunderbird
To separate your production email from Thunderforce testing, we suggest that you create a separate Thunderbird profile for Thunderforce testing. You can also use your main Thunderbird profile, but you then run the risk of damaging your email during Thunderforce development.
- Ensure that Thunderbird is not running by closing all Thunderbird windows
- Start the Thunderbird profile manager in the command line: thunderbird -no-remote -ProfileManager
- Create a new profile named ThunderforceTest and press the Exit button to close the profile manager
- The Eclipse instructions refer to the ThunderforceTest name
- Optionally create a shortcut to launch the ThunderforceTest profile, which will work even when you have your default Thunderbird profile running
- The Thunderbird command to run in this shortcut: thunderbird -no-remote -P ThunderforceTest
- In your ThunderforceTest profile's extensions subfolder, create the two following text files. The file names that you will need to use are in bold:
- thunderforce@moonlightdesign.org
- thunderforcetest@moonlightdesign.org
- This file will contain the full absolute file path to the Thunderforce tests folder, such as d:\Devel\Thunderforce\Thunderforce\tests
- Both of these files will contain one and only one line of text
|
Artifacts
Useful Development Links
- Documentation
- Tools
- Eclipse Plug-Ins
- Mozilla Platform
- Thunderbird Extensions
- Salesforce.com
|