Sakai development getting started
Information
This page contains links to all the information a developer should need to get started developing tools and apps for Sakai. This is meant to be a kind of Sakai development walkthrough. It contains a section on where to get more information and then links to get you on the path from regular a Java programmer to Sakai superstar (or something like that). If anything is missing or confusing please contact Former user (Deleted).
(Development Tips (PPT)) (Technical intro to Sakai (PPT))
Really Getting Started
- Developer links and resources
Also listed at the bottom of this page- Check out the developer links and resources, bookmark most of them, use them to do the steps below
- Sign up for the sakai-dev email list
- Get an account on Sakai Confluence and JIRA
- Development Environment Setup Walkthrough
- Getting a good development environment setup is critical to working with Sakai code
- Complete step by step instructions and various tips that will make developing in Sakai easier
- Sakai Programming Best Practices
- Familiarize yourself with the Sakai programming best practices before getting started
- Getting a good development environment setup is critical to working with Sakai code
- Sakai AppBuilder plugin
- Generate and try some sample code
- Install the appbuilder plugin in your eclipse environment
- Generate a sample tool in your Sakai source directory
- Build and Deploy the tool using maven
- Startup Sakai
- Test the new tool by adding it to a project site
- Modify the tool
- Alternatively use the maven 2 template generator to build a basic Sakai app structure:
Maven Sakai Template generator
- Sakai application (tool) structure
- Make sure you are familiar with the structure of a Sakai tool or application
- Sakai app and tool naming tips
- Learn the various Sakai app and tool naming conventions
- Developer Guides
- Learn about the possible presentation technologies and persistence technologies in Sakai
- Sakai Programmer Manual
- Reference the various guides and tutorials in the Sakai programmer manual as needed
Where to get more information
- Sakai foundation website - the main website for the Sakai foundation and Sakai project
- Find information about upcoming Sakai conferences and other Sakai related news
- Find out what schools are using Sakai
- Figure out why it is called Sakai
- Programmers Cafe
- The best source of information for developers wanting to work in Sakai
- Info you can find there:
- Tutorials
- Tips
- Documentation
- Sample code
- sakai-dev email list
- The sakai-dev email list is a great place to ask development questions
- How sign up for sakai-dev email list
- Use the mailman page here: http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
- Send email to the list at: sakai-dev@collab.sakaiproject.org (membership required)
- Sakai Confluence
- Sakai uses Confluence (an enterprise Wiki) to document projects and Sakai related activity
- Sakai JIRA
- Sakai uses JIRA (bug tracker) for issue and bug tracking related to Sakai development
- Sakai source repository (SVN)
- The Sakai source code is stored in a Subversion repository
- Main Sakai source
- Includes the entire Sakai source plus provisional tools
- Sakai Contrib (community contributions)
- Includes contributed source for various Sakai projects
- Sakai release documentation
- Javadocs for the Sakai API
- The Sakai API Javadocs are available with the release documents (current release javadocs (2.4.1))
- The link to the Javadocs is a little over halfway down (link named "JavaDocs")
- Javadocs for the trunk
- The Sakai API Javadocs are available with the release documents (current release javadocs (2.4.1))
- Javadocs for the Sakai API
- Eclipse Development Environment
- The vast majority of Sakai developers use Eclipse for development
- You can use other development environments but Eclipse has some advantages:
- Supported (eclipse files in the Sakai code base)
- Well understood (support docs and knowledge)
- Extended tools (appbuilder plugin)
- Can get commercial support if desired: http://www.myeclipseide.com/