DISCLAIMER: My JBase project is in no way related to or in competition with a commercial relational database product called jBASE. Though my project remotely resembles jBASE only in that both perform data storage and retrieval, my project does so in a COMPLETELY different and very specific-context: ColdFusion. My product cannot and never will be able to compete with jBASE for market share. End of disclaimer.
My little pet project JBase is at a point now where I feel *okay* about letting people play with it, so I thought I'd let y'all know. For clarification's sake, JBase = Json Database, though the name is a bit misleading as the JSON portion of the code really plays a semi-minor role. In a nutshell, JBase allows you to define an entire database structure using CF's structure notation, including tables, fields, field metadata, and table relationships, and then work with that database via the JBase component as if it were an actual backend database. Since most apps these days sport a service layer between the backend database and the consuming application, you can think of JBase as a service layer object that accesses a database that lives entirely in RAM.
A few things about JBase that I think make it cool to work with (I built a sample app with it, and it was fun!):
- JBase utilizes an ORM-like API that most users will be familiar with;
- JBase's virtual database schema is configured by the developer using a Coldfusion configuration Component, making schema designs extremely dynamic and versatile (no XML!);
- JBase is a Coldfusion Component, making it able to be used in the same way as any other CFC (controlled with IOC mechanisms, usable within caching schemes, injectable and accessible by other model components)
- Although JBase exists as an instance residing in server RAM, it persists its data to disk and optionally reloads it from disk on instantiation, enabling data preservation across application restarts;
- JBase is ideal for use within test-driven projects;
- No DSNs to mess with!
- JBase has built in data validation and formatting, both of which are easily customized;
- JBase's API is robust, offering a lot of flexibility with implementation
- JBase's child component JTable can be used standalone for smaller projects or to create your own virtual database manually!
If it pique's your interest and you've got a few minutes, you can access all of the docs (which I worked REALLY hard on!) and can download the project and a sample app at JBase.masonclaims.com
Let me know what you think!
If you don't feel like parsing through the docs right now, here's a presentation I did for my local CFUG
You are not logged in, so your subscription status for this entry is unknown. You can login or register here.
No comments found.
