Treeline Wants To Take The Coding Out Of Building A Backend

Treeline

Building the backend to power your dream app is one of the walls that stops front-end developers from even attempting to prototype their own app designs.

It’s got to run fast but efficiently on whatever infrastructure you decide to use. It has to work with any platform you might build a client for. If something goes wrong, it undermines all of the other work you’ve done to make your customers happy.

Y Combinator-backed Treeline is trying to break down that intimidation by stripping the job of building a backend down to its essence: building the pipelines data flows through in an application or service.

“Building the front end of an application is like putting together a house of cards,” Treeline co-founder and CEO Mike McNeil told me during an interview today. “You have to keep track of a bunch of parts and make a series of precise moves in order to build something that actually looks like a structure. It’s difficult to set up, but if you mess up, the fallout isn’t that bad. Building the backend, however, is like stacking wine glasses: it’s not that hard, but if you make a mistake it’s a bigger issue to deal with.”

Treeline’s approach to backend development might look familiar to those who’ve played with visual scripting tools. Instead of coding out everything yourself (or, more likely, coding out what you have to and piecing together bits from Google and Stack Overflow for the rest), Treeline lets you create “Machines” by inserting pre-made logical bits and filling in what data is needed and what should be done with it.

The startup builds on two open-source projects McNeil also founded. Sails.js is a framework that makes it easier to create applications using JavaScript and Node.js, while the Node-Machine Project is an open standard for JavaScript functions that lets developers “know exactly which actions are available, what to provide as input values, and what you’re going to get back” when they include a machine in their code. There are currently 46 “machinepacks” on the Node Machine public repository, giving access to APIs for Windows Azure, Facebook, and Stripe, among others.

The Treeline editor simply gives you a visual interface for piecing these standardized machines together. That means that behind the scenes, it’s really just cranking out JavaScript code that’s going to do what you expect. If there’s something you’d like to implement that isn’t available through Treeline or the Node Machine repository, you can simply code a machine yourself and drop it into your work in Treeline.

For now, McNeil says Treeline is primarily for indie developers comfortable building the user-facing side of an app themselves, but who would need assistance to build out a scalable backend. To simplify things for that kind of user even further, the team just rolled out free app hosting, so you don’t need to worry about deploying early builds over to a hosting platform. McNeil himself admits that the new feature is a bit slow at launch, but in the long term he says the plan is to provide app hosting to even the largest users (for a fair fee, of course).

Given the company’s open-source roots, the product is free for those who don’t mind making the machines they build open source as well. Those who want to keep their work private will have to pay for the privilege, though you could theoretically skip the fee by getting the JavaScript code from Treeline and then hosting on Heroku or any other server that supports Node.

NcNeil says the next big step for Treeline is to build out collaboration functions so that teams can begin to take advantage of the platform — after all, the only way for the company to make money is to bring in startups that end up building successful apps. In the mean time, Treeline is working with the Sails.js community to bring in JavaScript developers who could use the editor to be more productive.