Welcome Guest, you are in: Namespace

Sueetie Developer Package: Atomo

RSS
Modified on 2011/01/14 15:32 by daveburke Categorized as Atomo, Developer Resources
Details on using Atomo Version 3.0, the Sueetie Developer Package. Atomo contains all Sueetie Framework source code so you can customize your community and add new services. If you need information on getting started with Atomo, see Using Atomo. The most recent release of Atomo is Version 3.0 and is available for download free to all Community Members in the Sueetie Marketplace. Atomo 3.0 runs in .NET 4.0, which is required.

Introducing Atomo, The Sueetie Developer Package

Item #3 in the Sueetie Manifesto is that no Community Framework meets everyone's needs, even one as full-featured as Sueetie. With full framework source code and essential application source libraries, Atomo gives you the ability to meet those unique needs.

The Atomo Solution

Let's look at the Atomo Solution. It includes the entire Sueetie Framework source code base, which you are free to customize as needed. Each application's WebApplication project (or Website project in the case of BlogEngine.NET) is included with source code and each of the application's core libraries to facilitate development and debugging. Remaining application libraries are in compiled form, with full source available. See application source code links below.

Image

Color Coded Atomo

The following screenshots provide a description of the Atomo Solution contents. (While Atomo 2.0 used in the screenshots, the same structure exists in Atomo 3.0.)

Web application/website projects of the Sueetie and its applications.

Image

The supporting application Core project libraries to facilitate development and debugging.

Image

Saltie is the complimentary project new in Sueetie v2.0 designed especially to support customization. Read more about Saltie here.

Image

And of course, the Sueetie Framework class libraries.

Image

Sueetie Application Web Locations

If you look at the Root WebApplication in Atomo, you'll notice that the physical locations of each of the application web apps is in folders under the root.

Image

A Single Development Solution

To understand and appreciate the economy of the Atomo Solution, let's look at a typical Sueetie Solution used in creating the framework itself. The Sueetie Communiity Framework is a collection of several Visual Studio Solutions, one VS Solution for each application with references to the Sueetie Framework class projects. Here's what a typical Sueetie Solution looks like, using Gallery Server Pro as an example. All GSP souce projects are included as well as Sueetie Framework class projects of Sueetie.Core, Sueetie.Controls and Sueetie.Media. Similar solutions exist for ScrewTurn Wiki, BlogEngine.NET, YetAnotherForum.NET and the Root WebApplication.

Image

If we were to extend that structure across all applications and include all application projects, our Sueetie Solution would have over fifty class projects and be completely unworkable. We approached Atomo instead as a lightweight Solution that gives you all of the source you will need to full customize any of your community applications.

What If I Need To Change Application Source Code?

All Sueetie Applications are Open Source as you well know and freely available at each application's home community site. Sueetie's philosophy is to promote the open source apps that make Sueetie so great and push value to the home communities. Below are descriptions and links to the specific version of the source library used in the current Sueetie Atomo Release, Version 3.0.

If you wanted to modify code in, say, a Gallery Server Pro Project Library, you would obtain the Gallery Server Pro 2.4.4 source and add it to your Atomo solution. You would then add a reference to that project from GSP rather than the /media/bin/GSP.Whatever.DLL.

If you need to walk through the source code of individual applications you don't even need to go through the process of downloading the source package. Instead you can use a tool like Red Gate's Reflector which gives you full debugging support on all Sueetie Application assemblies.

How To Determine Sueetie-Modified Application Source

Sueetie makes far less changes to application source libraries than you'd expect. Nearly all libraries touched by Sueetie are included with modifications. To find all instances of code changes made to the source libraries do a search for

// Sueetie Modified

in Visual Studio. You can also, of course, obtain the source libraries from the Application home community site and perform a comparison of project libraries in a tool like WinMerge to determine any changes. See the DIFFs.txt in the Atomo Package root directory for any additional notes.

Application Source Versions and Locations for Sueetie Release Version 3.0

  1. YetAnotherForum.NET Version: 1.9.5 RTM. Available in the YetAnotherForum.NET repository on CodePlex. Filename: YAF v1.9.5 RTM (Date: 11/16/2010 Rev: 4140)
  2. BlogEngine.NET Version 2.0.0.36. Available on BlogEngine.NET's CodePlex Downloads Page. BlogEngine.NET 2.0 (Source)
  3. ScrewTurn Wiki Version 3.0.4.560. ScrewTurn Wiki Downloads page.
  4. Gallery Server Pro Version 2.4.4 on Roger Martin's GSP Download page. Roger doesn't keep #.#.x versions online, so the latest 2.4.x version available for download is 2.4.5.

A Working Atomo Solution

Below you see a screenshot of an Atomo 1.3 solution for one of my clients. As you can see I've added source library class libraries of Sueetie applications. In each case I simply removed the .DLL from the web application's \bin folder, referenced the added class library, and applied the Atomo DIFF file for that class project if necessary.

You'll notice I didn't need to add every class library for the application, only the code I needed to change or study. I added the BlogEngine.Core library, the ScrewTurn Wiki "Core" class library, and several YetAnotherForum.NET core class libraries.

Image

One more thing, what's the deal with "Atomo?"

Members of the Sueetie Community agreed with me that the Sueetie Developer Package should have a name, like Gummy Bear for our Web Package. In thinking about something sweet I thought about the candy I ate more than any other throughout the decades. The Atomic Fire Ball. It conveyed the hotness of the developer package and contrasted Gummy Bear nicely, but "Atomic Fire Ball" or just "Fire Ball" or "Atomic" didn't do it.

There's a wonderful 1999 animated movie named Iron Giant set in the late 50's. In one scene, Hogarth Hughes and the Iron Giant were reading comic books when the Iron Giant spotted a metal robot on the cover. Hogarth said, "Oh, that's Atomo, the metal menace. He's not a hero, he's a villain. But you're not like him. You're a good guy, like Superman."

It would have been nice if Atomo were one of the good guys, but he's still a fun character and ties nicely with Atomic Fire Balls on the sweet side. So there it is.

ScrewTurn Wiki version 3.0.4.560.

Get in Touch

Dave Burke

Don't hesitate to contact Dave Burke with any questions about Sueetie or to consult with you about Sueetie Custom Community Development.

phone: (802) 343-1111
Copyright © 2008-2011 Sueetie LLC. All rights reserved.