Hi,

I just wanted to introduce myself and a project I've been working on (with 
a few collaborators) called KeystoneJS.

It's an open source cms / web app framework built on express and mongoose.

The idea is to make setting up node.js content managed websites easier, and 
provide a beautiful admin system out of the box.

I use the term "cms" loosely, because it's more of a content management 
framework (unlike Ghost, which is a specifically blogging platform), and I 
use the term "framework" loosely because we don't want it to be a 
traditional framework, and because really, express is the framework. 
Keystone is a collection of patterns on top of it that make it simpler to 
set up for common uses.

Many other languages have systems and frameworks that help developers get 
productive (django for python, rails for ruby, etc). Node.js has a lot of 
incredibly good packages thanks to npm and the community, but little to 
help people get started or bring it all together. I'm not saying that this 
is "django / rails for node", just that there's the potential for a 
platform here that will hopefully help a lot of people, and we're hoping to 
get it right.

Node.js is a brilliant platform to work on, made even more so by the 
incredible packages that have been published. If we can build something 
that lets developers choose to start a project in node where they otherwise 
might have used wordpress, drupal or django because they needed a cms, 
that's the core of our vision.

It's early days for Keystone. There's a lot to do to add documentation / 
examples, make it modular and extensible, improve the Admin UI and build 
all the features we've got in mind. But it's a start.

Late last year I presented Keystone at SydJS (the Sydney Javascript meet 
up) and as part of it, built a new site (http://www.sydjs.com) which is 
currently the best demo of it in action (although my company has used it 
for a number of larger commercial projects too).

We'd really appreciate feedback and suggestions on where we're heading with 
this. We'd also love to have people to start using it and providing 
feedback, and contributing if you are able / interested in our vision.

If you're interested, check out:

http://keystonejs.com - KeystoneJS website and docs
https://github.com/JedWatson/keystone - KeystoneJS GitHub repo
http://demo.keystonejs.com - Demo website
http://www.sydjs.com - SydJS website
https://github.com/JedWatson/sydjs-site - SydJS GitHub repo

... and you can follow us on twitter for updates: 
@keystonejs<https://twitter.com/KeystoneJS>

Thanks,
Jed.

p.s. some notes:

   - There are already a few Admin UIs out there that are created based on 
   your data models, for node.js and other platforms. Keystone's different 
   because it doesn't just understand the *structure* of your data; through 
   the rich field types and options, it also understands the *intention* of 
   your data. Because of this we can create a truly beautiful, usable 
   generated UI.
   - Keystone plays nicely with Heroku and nodejitsu because it doesn't 
   rely on the local filesystem. To work around this we've integrated services 
   like S3 and cloudinary for file and image uploading.
   - We don't want this to become a monolithic package, and are starting to 
   look at how to break it into modules, and allow people to plug in their own 
   field types / admin UI screens / etc.
   - At the moment, Keystone is quite tied to Express and Mongoose. But Koa 
   and Sails look great, and MongoDB isn't suitable for every application. 
   Down the track it might be more decoupled, for now we've picked something 
   that works and gone with it :)
   - There are quite a few features (Views, Emails, the UpdateHandler) that 
   aren't documented yet, but are used in the sample projects.
   - We launched Keystone before Kraken was released. I doubt they stole 
   our logo, but we didn't steal theirs!
   - Positioning Keystone has been challenging, because it's more than a 
   cms, but not a framework like express. Maybe it's a content management 
   framework, but it's been used for a data-analysis application, and as the 
   backend for a mobile app. Any suggestions?


-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to