# Learn More

# What is CirculateJS?

CirculateJS is an application scaffolding framework built on top of Hapi and Vue to help craft for the web, written for Node.

It is a customizable application framework for building API's and CMS's, meaning that it tries not to make assumptions about what you're creating and leave the configuration and layout up to you. This gives you the power the craft whatever web API, CMS or site you want, while still making it your own.

# Why was CirculateJS created?

We were finding that when developing web things, either for personal use, or for clients, the the requirements were different between all the project. And yet, we were pretty much creating close to the same software. The goal of CirculateJS was to create an application scaffolding framework that was very fluid. We wanted to create the base functionality (an Admin interface, User creation, etc.), but leave everything up to the developer in how they wanted to implement everything else. We also have a goal of being able to extend and upgrade the existing things in the framework, so you can truly make a custom application for personal use or clients that may have different requirements, and allow you to create something that you will be proud to be apart of.

With that being said, there are a number of products on the market that can accomplish all the things that CirculateJS can do, but I would like to call out a few of the differences between some popular CMS and blog software to point out the differences.

# Comparisons to other applications

It's hard to compare CirculateJS to other things, since its sort of in a class of it's own. It's not a true CMS, but it's not exactly a full fledged framework either. I'll try to compare a few other applications:

# Wordpress

The defacto standard for a number of sites and CMS's out there, and they have been around for a long time. However, it's written in PHP, and they tend to support a lot of older PHP versions. It was meant to be a blog only platform, but moved to more of a general use web CMS. By comparison, CirculateJS was created to be a general purpose API generator based on plugins. This makes it a little harder to get started (especially because there is no community yet), but CirculateJS is much more flexible in terms of what you can create with it.

# Ghost

This application was developed as a direct competitor to Wordpress. It runs on Node, and its admin interface is very good. But, it was created for publications (blogs) But the Admin in Ghost can't be easily extended, and they have a very limited plugin system. By comparison, CirculateJS also has a fantastic Admin and a beautiful interface. Plugins are at the heart of CirculateJS, and you can generate whatever API you need.

# Strapi

This is an amazing headless CMS, and the closest comparison to CirculateJS. There are a few key differences however. Their admin is not mobile friendly in any way, and CirculateJS is. It's a little more difficult to create admin related plugins, where plugins are at the heart of CirculateJS, making it more extendable.

# Where to go from here?

If CirculateJS sounds appealing to you in any way, feel free to continue on. If you would like to contribute to the project, please go to the the Github Page and follow the contributing guide. We look for forward to seeing what the community will do with this.