Introduction
The Genesis Smart Client Framework was developed by Blue Marble, a South African software development house. The framework was developed as the means of distributing an application to a large wide-spread audience over the internet.
By providing a Dynamic Application Workspace, the framework allowed the development team to focus on developing task specific modules, while the framework dealt with keeping client software up to date with the latest version of the modules, and provided users access to modules they were allowed to work with.
This series of articles will expose the entire code base of the Genesis Smart Client Framework. Each article will cover one aspect of the framework, and will be accompanied by its source code.
Please refer to our web site www.bluemarble.co.za for the most up to date information about the Genesis Smart Client Framework or any of our newsfeeds.
In order to pursue our active interest in releasing this version of the Genesis Smart Client Framework as an open source product, we've created a profile on www.codeplex.com where we maintain the most recent copy of the source code. If you want the latest version of the Genesis Smart Client Framework source code, go to our CodePlex profile or download the latest release from CodePlex.
What is the Genesis Smart Client Framework
The Genesis Smart Client Framework is a development framework that allows developers the freedom to focus on the functional requirement of the code instead of the mechanics of how to deliver a consistent enjoyable user experience. It consists of a server component which hosts Web Services providing a central business layer and access to the databases, a Web Site which is consumed while displaying web pages inside the Windows Client and of course the Windows Client that consumes all of the services to provide a rich user experience.
Because of the sheer number of topics to cover in an article describing the Genesis Smart Client Framework, the articles will be broken into multiple parts. Each part will cover a specific functional area. Some parts won't make sense on their own, and will have to be read in conjunction with other parts. I will however try to keep things grouped together as much as possible to reduce confusion, and most importantly... boredom!
Part II - What is the Genesis Smart Client Framework
This article will introduce the developer to the Genesis Smart Client Framework. It will include some diagrams to explain how everything works together and some screenshots of the application. GOTO Part II.
Part III - The Back-end
This article will focus on the back-end of the Genesis Smart Client Framework. It will explain the database structure and system Web Services that are available. It might be unclear about how everything hangs together at this point in time. GOTO Part III.
Part IV - The Client
This article covers the Windows Client application that connects to the Web Services and consumes the services offered by the Genesis Smart Client Framework. GOTO Part IV.
Part V - Programming Concepts
This article will introduce the developer to programming concepts in the Genesis Smart Client Framework such as XML scripting and integrating the Web Forms experience with the Windows Forms experience. GOTO Part V.
Part VI - Managing the Genesis Smart Client Framework
Managing the applications hosted by the Genesis Smart Client Framework and the users and their access to the modules is an important part in ensuring a consistent experience for your users. This article will teach the operator how to manage the Genesis Smart Client Framework. GOTO Part VI.
Part VII - The Complete Source
After working through all of the articles and getting portions of source code, this article will shine a light on the big picture. In this article, you will find a complete set of all of the source code with detailed instructions on how to get it functional on your computer. GOTO Part VII.
Important Notes
- Since I am using these articles to enter the Smart Client competition hosted by Code Project, it really does not help my goal of winning the competition if votes are distributed amongst my articles. If I can be so bold as to ask you, please return to this article (part I) to cast your votes and provide the rating.
Other Information
Blue Marble is proud to be a Microsoft BizSpark startup company.
DISCLAIMER
The Genesis Smart Client Framework is a commercial closed source application. It is being provided on CodeProject with all of the benefits that articles on CodeProject grant its users (i.e. Free and Fair use), however it must be noted that some modules contain a 3rd party control that we are unable to license via CodeProject. Once all of the articles are uploaded, the code will be extracted to a separate obfuscated library to protect our vendor's Intellectual Property. The full source code will be provided for this library, excluding the few lines that could compromise our License. An alternative will also be provided for developers who wish to use a completely free version.
DISCLAIMER UPDATE
An implementation of a standard Microsoft.NET controls user interface has been created and is available on CodePlex as of release 1.30.1024.0. This release complies with all of the CodeProject article publishing terms and conditions.