Getting Started Guide
FarCry Getting Started Guide
Documentation is often the achiles heel of any open source project; FarCry is no exception. That said, there's a plethora of documentation available to the would-be FarCry developer if they know where to look.
FarCry is an application framework that's very good at dealing with content rich web applications. Certainly it can and has been used to build all kinds of things but if you need content management FarCry comes into its own.
This is a quick overview of the great resources currently available.
What is FarCry? Give me the helicopter view.
There are two documents that go a long way to explaining the FarCry way, located on the FarCry Documentation landing page.
Technology Whitepaper
The Technology Overview is best seen as a helicopter view of the entire FarCry application framework. It's targeted at developers and evaluators trying to get a grip on the concepts, approaches and vocabulary used within FarCry CMS. It should not be viewed as a definite explanation of all features and services rather this document aims to deliver an overall vision of FarCry capabilities and strengths, and is an ideal primer for developers looking to get involved with the code base.
Although written in 2004, it's still extremely relevant in terms of getting the gist of the FarCry framework.
FarCry CMS Features
Getting a bit long in the tooth now (circa DEC 2003) but FarCry CMS Features covers a comprehensive list of features available within FarCry, both as solution and as framework. Importantly, the document attempts to explain all this in terms of the business user.
Originally written in an attempt to give non-technical evaluators an idea of the breadth of features available. It's ideal in helping you fillout those noxious tender matrices.
Note it does need to be updated to incorporate the raft of new features released in the 2.1, 2.2 , 2.3 and 3.0 releases.
Alright, how do I get the thing installed?
Ok so don't go racing in where angels fear to tread. FarCry is relatively large and sophisticated application framework. You can't just throw it under the webroot and get it to run.
Make sure you get the latest stable milestone that supports your environment. There is a ZIP file available for each major release on the FarCry Community Downloads page.
Make sure you get your hands on the Installation Guide (available on the downloads page). It's got detailed instructions for both IIS and Apache installations. And make doubly sure you read the Known Installation Issues.
Warning: Known Installation Issues
The FarCry installer and installation guide are slightly out of date. Be aware of the following:
- The install guide may refer to farcry_aura as the webskin; farcry_pliant (or farcry_mollio) is required for 3.0
- After installation, you must run the FarCry updaters for b300 and b301 independently, ignore any errors. You can reach the updater at /farcry/updates/index.cfm on your installation
- If you load the FarCry webtop and can't see any tabs, restart ColdFusion service (this is an intermittent and known permissions caching bug)
There's also a special Installation Troubleshooting page on the developer WIKI about potential installation issues and their possible resolution.
If you hate manuals and you're a visual sort of person you might like to try watching Jeff Coughlin's installation and upgrading video for IIS.
Ok. Now I want to actually start building stuff!
First of all you really need to login and try publishing some content. Get a handle on how things work for the user. Get some content into the system so you actually have something to work with.
Have a quick read of the FarCry Users WIKI. Publish a few News articles. Add some content to the site tree. Maybe take a quick look at one of Jeff Coughlin's introduction videos or even Geoff Bowers' Breezo (that's me by the way).
There are also a series of Daily Use Guides available for FarCry 2.3. The screenshots are obviously out of date but by and large the content is still accurate.
I want it to look like my site.. Webskin development
One of the first things you might want to tackle is changing the look and feel of the website. We call this the "webskinning".
Web skinning is the art of implementing styles and layouts to templates within a farcry project. These templates are found under the webskin directory of the farcry project architecture. Note that we are talking about the "project" architecture not the "core" architecture. The rule of developing a successful farcry website is not to modify the farcry_core code but only the farcry project code. Think of the core as an engine in the car, which makes the car function, and the project is the body of the car where you can modify the look and feel. You can also extend the functionality of farcry core but this is all done within the project architecture.
Gavin Stewart (yet another Daemonite) has put together a comprehensive guide to webskinning including code examples, tips and tricks for beginners and a solid starting point for redeveloping the presentation tier in FarCry. Read more in Webskin Template Authoring
How can I make this puppy my own?
Well there are lots of different integration points in FarCry. One of the best places to look is the code itself. Start with the sample project files, and progress to the core libraries. To get you started you might try:
- Customising the Webtop
Tyler Ham has a great piece on adding additional sections, subsections and menus to the FarCry webtop, see Custom Admin. - Included Objects
Rachel Maxim put together a quick page on these in the WIKI on Included Objects. TODO: need to add link to this - Custom Content Types
Blair McKenzie, and Geoff Bowers have made a start on documenting how you might build a custom content type. TODO: need to add link to this - Building Wizards
Beenish whipped up some quick notes on building wizards for your edit handlers. TODO: need to add link to this - External Authentication
Matt Williams has some great notes on integrating external user directories with FarCry. TODO: need to add link to this
So these are really just some cherries from the FarCry Developer WIKI. On top of this is the Developer Community which you can get in touch with through the FarCry forums and mailing lists.
If you're really serious and you have a team to train, don't forget Daemon offers Instructor Based FarCry Developer and Contributor Training. We also offer a variety of FarCry Support Options for teams getting into FarCry from annual support to webTeam.