Treeline allows you to build the back end of a web or mobile application by combining components (aka “machines”) in a visual environment. Your app is then compiled into a Sails.js project that can be downloaded and deployed anywhere. In short, Treeline eliminates the need for specialized knowledge to create back-end apps.
There are no limitations on what you can build with Treeline. For examples you can follow along on our blog or see a YouTube Playlist of screencasts.
Private apps will be available soon. During the developer preview all apps are open-source (aka “Public”). These are available for anyone to see and clone
We are currently working on template apps. Please send us a request here for templates you’d like us to produce.
Treeline currently supports single developers, but support for teams/organizations is very high on our roadmap.
Treeline allows you to design and build apps in a visual interface. These apps are then compiled into full Sails.js projects, including all the code. So using Treeline doesn’t replace Sails—what it does is make it easier to create Sails apps.
Treeline doesn’t support importing existing backend code. However, your front-end assets and views are fully compatible with Treeline.
You can download the generated code for a Treeline app by linking it to a project on your local machine with our command-line tool. Instructions are available on the Overview page of each app you create in Treeline. While you have your local project linked to Treeline, it will automatically keep in sync with any changes you make online.
When you build an app with Treeline, the system generates a fully functional Sails.js app for you—code and all—that you can then download with a simple tool and deploy anywhere that supports Node apps. Additionally, Treeline provides a free preview server for your app that you can use for testing
SDKs for all of your favorite front-end frameworks like Angular, Ember and Backbone are coming soon, as well as iOS and Android SDKs. In the meantime, interacting with Treeline on the front-end is as simple as making an AJAX request to any of the routes that you’ve set up in your app (for example by using $.get in jQuery or $http in Angular).
Absolutely. A local Treeline project is a Sails app and therefore can be used to deliver front-end assets or used solely as an API.
Currently Treeline only compiles Node.js (Javascript) applications using the Sails.js framework.
A machine is a small component in Treeline intended to perform a single, simple task. Machines exist for a huge range of applications—everything from compressing files, to sending a Tweet, to low-level application logic—and because Treeline is built on top of the open-source Sails.js framework, there is a huge community of developers contributing new machines every day. If a machine doesn’t exist for a particular application you need, you can build one right from within Treeline.
You can create machinepacks right from withing Treeline by clicking on “Packages” in your account overview and then clicking the “New Machinepack” button. You can also create machinepacks offline and upload them to NPM—these packs are imported into Treeline hourly. Node-machine.org has a tutorial about creating your own machinepacks this way.
All public machinepacks are made available to other users via the “Browse More” button in the circuit editor or the “Import New Machinepack” button on the Dependencies page.
Treeline doesn’t currently support associations between models natively—it’s high up on our road map for the full launch. In the meantime you can add the foreign keys (and “join models” for many-to-many relationships) yourself as attributes in the Treeline model builder.
Currently models use integer IDs, but they will work with any adapter supported by Sails.
Validationa are not currently supported directly in the model builder, but you can create a machine to do validations in your routes.