Yesterday I took some personal time to start a web project I’ve been itching to do for years.
I focus on WordPress development because it is so flexible and simple as a content management system. It’s just so easy for it to store a lot of ‘stuff’ through it’s custom post type API.
I have wanted to build a powerful and flexible front end interface for interacting with all that data. Something simple and extendible; approachable but sophisticated.
The ideal in my mind is a 3 column UI similar to those found on many desktop applications. It displays a top-middle-bottom hierarchy by moving left to right. Sample applications are Airmail, Evernote, Finder and even Slack.
In this way, the UI application workflow works as a ‘prism’, dividing a dense amount of information into it’s component parts. You can easily drill down to more granular information, and bounce back up to the top. It’s very intuitive. (I’m betting there is a lot of research out there on this workflow, perhaps I can dig into that later.)
Prism is a React (and potentially Backbone) based plugin for quickly getting and putting data through the new WordPress REST API. It’s being designed as a platform to start all sorts of application projects, for when you need to build something quickly.
It isn’t built for any one project (though I have some in mind), but should be a toolkit to build any number of robust applications.
This is one of those ideas that I’ve been gripping onto tightly, rethinking it in my head for years. Typically, I want to get a lot of work into a project before sharing it.
This time I decided to get it out there before writing any code. It’s scary, but very freeing.
— Casey Driscoll (@caseydriscoll) October 9, 2015
The project will be stored on Github here: https://github.com/patchdotworks/prism
There will be a test/staging server updated periodically here: http://prism.patch.party/
How it went
I took the Friday to commit myself fully to starting the project. I worked until 2am, getting in 23 commits over 13 hours of work.
It felt great. Sometimes there is a lot of frustration in working for client projects, as a lot of things are out of your control. (This of course is why they pay you, to solve difficult problems).
Even though I was tired putting in so many hours, it felt really great feeling so productive. I was refueled and hope to put a few hours in per week consistently.