Developers guide » History » Revision 38
Revision 37 (Amber Herold, 08/02/2011 03:30 PM) → Revision 38/62 (Amber Herold, 08/02/2011 03:31 PM)
h1. Developers guide
This guide is primarily intended to help noobs to both Appion and Programming in general get up and running in the development environment that we have created at AMI.
It is a good place to add notes, however basic, that may help someone else accomplish a task related to Appion software development.
Parts of this guide are specific to machines and the environment that we have at AMI. Our apologies.
# *System Overview*
## Leginon
### Scope
### Windows Machine
## Appion
### Web Parts - web server
### Python Parts - processing server
### 3rd party apps
## Clusters
## "Myami code module diagram":http://emg.nysbc.org/projects/appion/wiki/Myami_code_diagram
# *Development Tools*
## [[appion:AMI Redmine Quick Start Guide|Redmine quick start]]
### Issue reporting and life-cycle
#### [[appion:Issue Workflow Tutorial]]: A guide to setting the Issue status.
### Adding Documentation
## [[AMI_Eclipse_Quick_Start_Guide|Eclipse]]
## [[Subversion]] (SVN)
### Checking your code into the main trunk
# *Languages and Technology*
## html, css, PHP, Python, Javascript, mySQL
## [[Coding standards|best practices for these]]
## [[Object Oriented Programming]]
## [[Useful shell commands]]
## [[MySQL_Notes|Getting started with MySQL]]
# *Installing Appion for development*
## Running the code from your sandbox
# *Adding a new program to the pipeline*
## General Instructions
### Processing parts (Python)
#### database access
### Web Parts (PHP)
#### launch page
#### reporting page
##### [[Using basicReport.inc]] for very simple PHP report pages
#### database accesss
## Adding a refinement method (single and multi model)
### [[Adding refine python parts|Python wrapper for 3rd party programs]] (Anchi)
### [[Adding refine runjob|Modifications to runJob.py]] (Christopher)
### [[how to add a new refinement method|Uploading results to the databse]] (Dmitry)
### [[Refine_Refactor_documentation|Adding the user interface]] (Amber)
# *Testing*
## [[Test datasets at AMI]]
## [[Appion Testing|Automated testing]]
## [[How to test upload images with your own sandbox]]
## [[How to run manual picking and mask making]]
# *[[Error Handling]]*
# *Adding pop-up Help*
# Where to find help
# [[Common variables used]]