Project Description
Jetfire (jetfire.ca) is an open source, object oriented ecosystem which makes it very easy to develop business rules (Business Rule Engine), persistent programs and workflows. The dynamic Jetfire language extends C# with rules, roles, data flow, persistence, versioning, security and dynamic typing.

Version 1.4 (Road Map)
  • Web based structured IDE
    • Built using JQuery/Asp.net
    • Can be integrated into solutions
  • Merge Jetfire and Jazz projects
  • Looking for C# only workflows
    • see Jazz.Codeplex.Com
      • supports all Jetfire features including persistence, db searching, roles and rules
      • allows development and debugging using visual studio
Version 1.3 (Version 1.3 Updates) New in Version 1.2 -
Jetfire is designed to be simple enough for power users, but capable enough for programmers to develop and maintain applications.

Jetfire is a .net open source, object oriented ecosystem designed to make writing persistent programs, workflows and policy management rules, very easy. The Jetfire language extends the C# programming model with integrated object oriented database functions (ORM), roles (integrated security), integrated source control, states (workflow) and dynamic typing. For more details see Jetfire first class constructs.

Jetfire supports:
  • compact, easy to write code,
  • code that is understandable by anyone who has basic programming skills and
  • success path coding, also known as happy path coding.
jetfire system.png
Jetfire is a dynamic, domain specific language (DSL) that derives its syntax from C# and Java. Jetfire code is complied yet supports dynamic types and host of dynamic features by compiling (if required) dynamic segments of code on the fly. Code can be written and compiled on the fly. The Jetfire API allows .net code to directly call Jetfire methods and properties (see code examples).

Jetfire is unique in that all code and objects are automatically saved in a server (the client and server by default are the on same system). The server storage is configurable to be the file system, an SQL database or system RAM (useful for creating sandboxes). Jetfire blends the functionality of source code management and an object oriented database. In Jetfire objects are bound to immutable source code which is also represented as an object.

Jetfire objects, once created, exist until they are explicitly deleted (or they become unreferenced). This feature allows workflows (objects) to be created that have a lifetime of days, weeks, months or even years. These objects will survive machine crashes, computer reboots and program reloads.

Jetfire is written in C# using Linq. Jetfire is a client-server architecture supporting multiple servers. The client footprint is small with future releases supporting a client running in a Silverlight browser.


Code Examples using C-Sharp

Web Parts
To use Jetfire workflows in a ASP application Jetfire Web Parts can used. Jetfire ASP Web parts employing Microsoft's SQL database is available as a separate CodePlex project (http://www.codeplex.com/JetfireWebParts). Jetfire Web Parts gives Sharepoint like functionality operating on any Windows XP or Vista platform with IIS.

Last edited May 4, 2012 at 12:06 AM by JohnHansen, version 145