Neptune 1.0 Beta 3 Documentation: Installation

Neptune Information

Download from RIA Forge

Installation

Based on Dan Wilson's "So you want to build a ModelGlue:Unity application (Part 1)" (and the CFWheels version).

Before we can build anything with Neptune, we need to first install it. Get Neptune from the GitHub repository into the root of new web site. Neptune will currently not work if run in a subfolder of a site. This means that if you are running the site locally you may need to use host-headers to make sure that the folder for the Neptune site is in the root of the web site being served up.

Note: Makes sure "Disable access to internal ColdFusion Java components" is unchecked. Neptune does use internal ColdFusion Java components. The ColdFusion service will need to be restarted for a change to this setting to take effect.

We will get the following directory structure:

_config
Required. All site-wide configurations go here.
_framework
The framework files go here. This file can be in the site or in CustomTags or under a _framework mapping.
_instructions
If the folder exists, it will hold instructions created by installed programs.
admin
Exists by default, but not required - can be renamed or removed.
f
The default location for uploaded files (Used by FileMgr - configurable). (see File Uploads)
layouts
The folder for Layout Components.
lib
Client-side code for sebtags (should be possible to use a virtual directory - configurable).
CustomTags
The location for custom tags. These can optionally be placed in your global custom tags directory instead (see Custom Tags for details).

You should be able to move "_framework" and "CustomTags" to your custom tags folder or a mapping and the "_instructions" folder can be created if needed on any system with folder creation permissions, leaving an effective folder structure of the following.:

Sample of Recommended Installation

Here is the recommended configuration, using example.com as the domain name:

This configuration would require moving custom tags into the server-wide custom tags path. This isn't required, but is helpful both for security and maintenance. See Custom Tags for more information.

It would also require changing the "UploadPath" configuration. This configuration is not to imply that you should have a files.example.com, but rather that files should be stored outside the web root if possible. See our file uploads page for more information.

Next: Hello World

The Framework Perspective

(Where we see how this compares to other ColdFusion frameworks)

If this is an MVC framework, then why aren't there separate folders for model, view, and controller?

The framework is an MVC framework inasmuch as functionality is divided into models, views, and controllers, but it is not in the way of some frameworks such that the model, views, and controllers must each be in separate folders. In our opinion this is not necessary for good MVC separation (nor helpful for useful architecture).

Watch for Changes!

Things that are likely to change:

  • The name of the "_framework" folder.
  • The "lib" folder needs to be tested to see if it can be used as a virtual directory.