Try It -> Kromo the ultimate iShell plugin!
register | login
  • Information
    • iShell crash course
    • FAQ
    • Showcase
    • User testimonials
    • System requirements
  • Purchasing
    • Buying Options
    • Education
    • Store
  • Extras
    • iShell Plugins!
    • iShell books
    • Product sheet
  • Glossary
iShell Crash Course

See also the iShell Crash Course Video.

You're a media developer hoping to offer your clients DVD-ROMS and other interactive services in addition to your existing services.

You're an in-house developer trying to create a promotional CD-ROM for your company, school, or organization.

You're a graphic designer, animator, or other digital artist looking for a fun, interactive, secure way to distribute demos of your work.

You're a multimedia developer frustrated by the awkwardness of many authoring tools on the market.

If any of these could apply to you, you've come to the right place!

In short, iShell is a tool for displaying, playing and adding interactivity to your media. You bring the graphics, movies, and any other media imaginable, and iShell is the final tool for assembling all of these pieces into a single interactive, easy to navigate, customizable application.

This page is not a tutorial, per se, as much as a crash course in the ideas behind iShell. Once you have a basic overview of how iShell works, and what makes it different from other software you may be familiar with, you can get into the nuts and bolts of building a project much more quickly.


What makes iShell unique

The iShell metaphor

iShell represents a shift in philosophy for organizing a multimedia project. Whereas Director and Flash use a Timeline-based model, and Hypercard and web browsers use a page/stack metaphor, iShell uses a building block metaphor. In the same way that you can rearrange blocks to create a new building and switch one block for another to create a new form and function, parts of an iShell page can switch while the page is being displayed, rather than jumping or browsing to a separate page.

This concept is essential for visualizing how your iShell project will fit together. If you want the user to be able to switch between two different movies, there is no need to create two separate pages to play the movies in. You only need to use a Switch command to insert the second movie where the first one was previously playing. When you want to replace all of the blocks (i.e., move to a new page), that's the time to use the Browse command.

Handling of media

An iShell project works independently of the media that's being presented in it. iShell Runtime will load a media file when it is needed, and not before. This means that in iShell you never import your media into the project. The media files still exist as individual files, in their original formats, rather than being co-opted by the iShell project.

To return to the building block metaphor, your media files are the smallest blocks in your iShell project. Put most simply, your iShell project is a set of rules for when, where, and how to display your media.

When you make changes in your pictures, movies, etc., you'll immediately see how they look in the Runtime, no importing. This is especially useful if there are multiple people working on different aspects of a project. If your designer changes some of your graphics in Photoshop, those changes will be reflected next time you open the complete project in iShell.

iShell's structure also makes it very easy to replace your media. You can use the same logic over and over, completely changing the look and feel with new media files.


Importing your media

If you're looking to build a CD-ROM in iShell, the first step is to have your media ready that you want to present in your CD-ROM. This includes graphics, movies, QuickTime VR, etc. Using Finder or Windows Explorer, put all of these files into the Media folder corresponding to your project. You can create folder hierarchies within the Media folder as well.


Projects and documents

Every iShell project (.xp file) contains at least one iShell document (.xd file). Most iShell projects will contain several .xd files, for browsing between documents. By default, Main.xd in the Media folder is the first document to open when iShell Runtime loads a project.

The Project window contains some basic settings that will be universal for every page in the project. To begin inserting your media, you'll need to open the document file.

There are four ways to view a document in the iShell Editor: Outline, Layout, Test, and Timeline.

The outline will be visible when you open a document. This is where you build the framework of the project, using elements, events, and commands.

The layout is where you can visually move and resize your elements. To open the layout, click on the small white square in the upper right hand corner of the document window, or click Window/Layout.

Test is where you can preview the project or document as the user will see it in Runtime. To begin the test, click Window/Test.

The timeline is not necessary for learning beginning iShell concepts, but is useful to dabble with after you have a grasp of the basics. The timeline can be viewed by clicking the clock tab in the outline window.

The timeline is where time-based behavior in iShell is controlled. This includes things like slideshows, moving elements, and volume fading. See the Samples page for demonstrations of how the Timeline is used.


Elements, Events, and Commands

The three most important keywords in the iShell outline are Element, Event, and Command.

Elements are the building blocks of iShell, which contain your media. Elements can also hold other elements, and are therefore a great way to group media together. Pictures, Movies, Fields, Boxes, and Sounds are all examples of elements in iShell. The document itself is also an element, sometimes referred to as the Root element.

Events are the triggers of activity in the iShell Runtime. The event is any behavior that triggers some type of response from Runtime. Examples of events are Mouse Click, Mouse Enter, Mouse Idle, Time, and Finished. An event is always attached to an Element.

Commands are how actions are executed in iShell. Commands are triggered by Events. These include such things as Run, Switch, Browse, Quit, etc. A command is always attached to an event.

As a simple example, let's say we wanted to have a movie play when the user clicks on it (this example is the basis of Tutorial 2). In this scenario, you have a Movie element. A Mouse Click event is attached to the Movie element. A Run command is attached to the Mouse Click event. When you understand these three simple concepts, you can start to create many things in iShell.

Just because the way iShell is easy to understand, this does not mean that the functionality is limited or lacking. iShell can geek you out when it needs to. And after that you can start to write plugins to make it even more amazing.

Now that you're familiar with the ideas behind iShell, go download it.