Yesterday afternoon, I announced a project that I've been working on with Hal Gumbert and Joe Fino called FMEasyWeb. It's an interesting and challenging project, and I'm really excited to be working on it.
Here is some background on the project, and information about what we are hoping to achieve with it.
I originally started working on EasyWeb more than four years ago. The goal was to provide a lightweight, minimalist, extremely fast and extremely reliable browser-based tool for accessing FileMaker databases. I wanted EasyWeb to work in both desktop and mobile browsers -- which, back then, was a somewhat challenging goal to achieve.
And then, seemingly out of nowhere, FileMaker Go was released. FileMaker Go provided us a feature-rich, beautiful, elegant FileMaker client for iOS devices. And best of all, it was a true, native app, so it not only felt like a "real" app, but it also was a true FileMaker client. Suddenly, there didn't seem to be a need for EasyWeb, so I shelved the project.
Is There A Need?
However, lately I've been thinking about what EasyWeb could have been, what's possible based on today's technology, and wondering if there is a need for EasyWeb.
With all of the advancements that we've seen on the Web development front in recent years (including HTML5, improvements in CSS, better compatibility between browsers and the proliferation of frameworks and libraries such as jQuery), it seems that developing something like EasyWeb and achieving that original goal of getting it to run everywhere is much more realistic. Combine all of that with the rock solid reliability of FileMaker Server, the powerful and flexible FileMaker API for PHP, and my experience developing FMWebFrame, and the goal of developing EasyWeb seems much more attainable.
But the bigger question is, is there a need for EasyWeb? Does it make sense to develop it?
I think the answer to both of those questions is "yes." From what I'm seeing, there is a lot of pent-up demand for Custom Web Publishing (CWP) solutions - solutions that can be developed quickly, that scale easily, that are affordable, reliable, and secure. However, there a lot of FileMaker developers out there that simply don't have the experience or skill set to develop CWP solutions.
Our goal with EasyWeb is to have it do the work involved in developing basic CWP solutions. With EasyWeb, all of the PHP that is needed to bring a CWP solution online has already been developed, and it's abstracted to the point that it works with just about any FileMaker database that you throw at it. It works "out of the box," providing key database functions that include list and form views, finds, adding, changing, and deleting records, and more. It takes the FileMaker API for PHP and pushes it to the limit to make all of that happen. And it makes use of the advancements that we've seen in HTML5 and CSS, making it as easy as possible to customize the look and feel.
A Collaborative Effort
Developing EasyWeb is not an easy task. It's a big project that requires a wide range of skill sets and experience. And that's why we're tackling this project as a team.
Fellow FileMaker developer Hal Gumbert of Camp Software has been tasked with developing a method for replicating, as close as possible, the look and feel of a FileMaker layout in EasyWeb. He's made remarkable progress on this front, and has been able to take the XML representation of a layout and essentially convert it into a combination of HTML and CSS that EasyWeb can integrate with. So the goal of being able to replicate, to a large degree, FileMaker layouts in EasyWeb seems to be within reach.
I've joked in the past about how terrible I am at CSS. Sadly, it's really no joke. If you could see EasyWeb at the moment, you'd quickly realize what a mess it is. (And if you're really brave, take a peek at the source of this page, and you'll see that I'm still stuck in the good old days of table-based design.)
So we've asked Joe Fino, a talented Web developer and designer, to help with the user interface side of the project. Joe is a co-founder of Ingenium I/O, a Baltimore-based agency that focuses on branding, design, digital, and public relations. He also served as the Technical Editor on the Absolute Beginner's Guide to FileMaker Pro. He's a perfect fit for this project, and I'm grateful that he's agreed to work on it with us.
Our work on EasyWeb is off to a great start. We've got the foundation in place, and quite a bit of the core functionality built out. It's being built on a highly-optimized, streamlined version of FMWebFrame (an open source extension to the FileMaker API for PHP), so we've got a solid, reliable framework to build on and borrow from. And, like many of the other "Easy" solutions that I've released, EasyWeb is very easy to setup. In the current build, all that's required to wire up EasyWeb to a database is to point EasyWeb at the database (provide EasyWeb with the server address and the name of the database), add a few layouts to the database, and you're ready to go.
On the UI front, we're considering using Bootstrap, a popular framework that is used to develop responsive "mobile-first" solutions. Our goal is to make it as easy as possible to customize EasyWeb using standard CSS, while also providing a responsive, modern, and mobile-friendly interface.
In any case, there is also quite a bit of development work to do. The current build supports what can be best described as "read only" mode. The foundation for handling new records, updating existing records, and deletions is in place, but needs work. And we've got a few "wish list" items that we're hoping to tackle, including support for two-factor authentication, exporting, support for caching, and conflict resolution options (which will be similar to those available in EasySync).
We're hoping to release a beta of EasyWeb before the end of the year. Until then, if you have any questions about the project, please feel free to drop me a line. And be sure to look for updates here on my blog, over on Twitter, or on the new EasyWeb Web Site.