FileMaker DevCon 2019 is done, over, kaput. The FileMaker & JavaScript training session we led during the conference brought over 100 people together to learn the basics of JavaScript inside of FIleMaker. It was a long day of learning and stumbling and success, and many of the attendees found a lot of value in it.

But it was only six hours. It went fast–probably three hours in total. Also a lot of people couldn’t attend. That was too bad.

Never fear: We’ve spent the last month redoing the entire session. We’ve put together countless videos that walk through almost every part of the session (I did skip some of the mistakes I made during the actual training session 🙂 I did make some new ones. Don’t worry. ). Anyone now can ‘attend’ the session by reviewing the following pages and information and following the videos and downloading the playground file.. This is good. There are videos that describe what we did in the session (sans the mistakes).

You can now watch the FileMaker and JavaScript training session at your leisure. You can rewind, fast forward, skip, and pause the videos as you work through the examples. Isn’t that awesome?

You can view the entire syllabus here as well as get the training session files. And here’s the details about each of the groups of videos.

The Basics of JavaScript (inside FileMaker)

There are 27 different exercises in the JSPlayground file to learn some JavaScript. This wasn’t a masters course in JavaScript, but the exercises that we went through represent the type of JavaScript that we might use in FileMaker.

Go through the exercises, follow along with us as we explore some JavaScript.

Oh, and there’s plenty of resources available in the file. Review this video to learn more about the JS Playground file.

Setting up an Integration

In the next section of the training session we worked on integrations. We explored how to take a JavaScript library and set it up to work with FileMaker data. We also customized the Integrations.

We spent our time on C3 JS and the DataTables library. It was a good time, and we walked away with some good sense of how to work with any JavaScript library.

Work with the FM WebViewer Bridge

In the final hours of the session (we were pretty brain-shot), we took a look at how to work with the FileMaker WebViewer Bridge. We saved the best for last. The functionality of this API works like magic and solves a lot of web viewer problems.

We spent our time working with DataTables and the C3 Charting library (yes, the same ones as before).

We did, however, start by looking at a cool progress bar.

In these videos we explored how to write FileMaker scripts that trigger JavaScript functions which call the library’s API methods to change the web viewer’s state without the refresh.

You can also get to the DataTables and the C3 examples we used with the Bridge

A Few More Notes

  • You need to download the FileMaker and JavaScript Training Session materials. You can find those here.
  • As you work through the videos you might have questions. Please reach out at and we’ll be glad to help you through what you need.
  • We are thinking of offering a webinar where we can work together on some of the items from the training session. Please let us know if that would be useful to you.

Virtual FileMaker and JavaScript Training Session

Have fun. Let these videos help you pretend you attended the FileMaker and JavaScript training session. Explore FileMaker and JavaScript. Explore and see the power of JS in FileMaker (JavaScript is, of course, native to FileMaker). It is completely possible for you to learn and use JavaScript. So come along with us, will yah?

There’s a lot to talk about in the FileMaker world. And coming soon, the list of topics will explode as we welcome Claris Connect into the fold. Luckily there’s another avenue to discuss all things related to FileMaker: The Context Podcast.

We at Geist Interactive are excited to launch a weekly podcast in which we talk about all things FileMaker and the context of those things in FileMaker. We will discuss the context in which we use certain techniques or functions such as While(), Virtual Lists, ExecuteSQL, and others. Topics will also include bigger discussions about workplace innovation through the technology we have at our fingertips.

Jeremy (sometimes Jeremy and Todd) will talk with folks to get their take on the context of technology in the innovative workplace. We will ask people their thoughts on the context of problems we’re trying to solve and which techniques are good for a particular context. We might have agreements all around, but we also hope for some spirited debate and discussion.

Context is more than just the right layout in FileMaker. It’s meant to expand out to cover anything that the workplace innovation platform is designed to solve. And we will spend each episode trying to flesh out exactly what the context is and those best practices that fit the context.

Join us each week for a new episode. We’ve got some great guests lined up and some great topics ready to be given a complete review.

Check us out here. And we’re coming soon to all the major podcast-getting apps/sites. Stay tuned for more info on where The Context Podcast is available.

At FileMaker DevCon 2019, I led over one hundred FileMaker developers in six hours of learning and working with JavaScript. It was a good day. We learned a lot. We made lots of mistakes. We fixed those mistakes. We felt pangs of frustration with the web viewer object. And we shouted with satisfaction when we got the web viewer to render our chart or datatable. In those six hours, however, we had to gloss over a few things. I intend to double back and talk in detail that which I blew right by to give all attendees the fullest experience. So here I’ll discuss how to extract and use the FM Web Viewer Bridge code and scripts from the JSPlayground file to your own.

One note: If you didn’t attend the session, feel free to participate in this post and video. There’s a lot in this video I’ve skipped over. But never fear: through future videos and webinars, I’ll retread what we did in the DevCon session.

Extracting the FM Web Viewer Bridge code

Working with the FileMaker Web Viewer Bridge was sort of the culmination of the JS training session. We were able to integrate the C3 Charting library and cause it to change without the web viewer flashing as the code reloads and without the rendered chart losing its state. (Again, we’ll come back to this later in another video.)

But we worked with the Bridge API within the context of the JSPlayground2019 file. Which is fun to play in, but hardly useful for production custom apps. So here’s how to extract the FM Web Viewer Bridge code into your own file. Follow along in the video. I’ve also written down the steps below. It’s pretty simple to do, and once you’ve done so you can use that first extraction in all your projects going forward. Let’s dive in.

Video Explanation

(15 minutes)

Written Explanation

Okay. Here are the steps you need to follow to extract the C3 chart with the bridge functionality out of your Playground file.

Export the Code

Export the code we wrote using the red Export button on the top right of the JSPlayground.fmp12 file. This exports this single record and all its code into a .fmp12 file to your desktop.

In this file, there’s an HTML_Calc field, but it is a text field. You can update it to be a calc field so that you can continue to tweak the JS code and have the web viewer grab the latest code. Here’s the code for the HTML_Calc field:

Substitute ( Code_HTML ; 
 ["__Script__" ; Code_Script];
 ["__CSS__" ; Code_CSS];
 ["__Data__" ; Code_Data] ; 
 ["__Library__" ; Code_Library] ; 
 ["__Extension__" ; Code_Extension1] ; 
 ["__D3__" ; Code_D3] ; 
 ["__FileName__" ; Get(FileName)] 

Set up the Web Viewer

Set up a web viewer object on any layout. It really doesn’t matter the layout since you’re going to use a script to load the code into the web viewer. In the example, I just use the base table. Clear out all the checkboxes of the web viewer object set up except the “Allow Interaction . . . ” one (the first one). And finally name the object in the inspector. I called mine “BridgeWeb”. But that can be changed and updated in the scripting.

Custom Function

There is one small custom function, RandomNumber, that I used in the CreateColors script to pick two random colors from a list. Use it or not.

Windows Users Only

If you’re on Windows, or if any of your clients that will use this chart are on Windows, you need to add one more field to the table of the context that the web viewer object is on. Add any text field–I call mine ‘CopyPasteTarget’– and set the field to the right off the layout. Name it “CopyPasteField”. This will only be used when the FM WebViewer Bridge API is working with a hash (the URL) that is more than 2000 characters. It’s just necessary. :/

Copy / Paste Scripts

The next step is to copy and paste the necessary scripts into your file. If you wrote the C3 chart scripts, then you’ll copy those along with the scripts that runs the FM Web Viewer Bridge API. Select each of these, then copy them. Finally paste them into your file. If you do it that way, you’ll get no broken script references.

Here’s the full list:

  1. Load Bridge Example: this is the script that loads the code from the HTML_Calc field into the web viewer. Adjust this as you deem necessary, changing contexts to get to the layout with the web viewer. Here’s one place you need to update the web viewer’s name if you changed it.
  2. C3 Chart Folder: These are the scripts we wrote in the session. Copy the entire.
  3. FM WebViewer Bridge folder: Some of these scripts we’ll keep and some we’ll delete once the folder is in our file.

Copy all of these scripts/folders at one time and paste them into your file at one time. That will prevent any broken script references from showing up.

There will be a few errors; most of these are just broken field references. As you paste the scripts in, each script with an error will open in the Script Workspace. Go through each of these and fix what’s highlighted in red.

Delete Some Scripts

We don’t need all the scripts in the FM Web Viewer Bridge folder. Here’s a list of the scripts you can delete.

  1. ClickOn
  2. Inlined
  3. All the “Set ENV” scripts
  4. Compile URL Copy
  5. IsWebViewer Loading
  6. Close Web
  7. Generate JSON object

As you delete them, test to make sure you haven’t broken anything. To be super-sure, use FMPerception to find unreferenced Scripts.


After the above steps, you should be complete. You’ve successfully extracted the FM Web Viewer Bridge Code. The scripts and the functionality is copied from the JSPlayground file to your own custom app. From here you can use your file as a template.

If you do implement more than one bridge set up in your app, simply copy over that integration’s scripts. You shouldn’t have to recopy the Bridge scripts. It should be ready to go.

On Going

In the near future, we will continue our study of FileMaker & JavaScript. If you attended the session, I’ll have more videos and posts regarding stuff I had to gloss over. If you didn’t attend, I can lead you on from the beginning. Stay tuned for the plans we have.

Okay. Here’s the file

I planned on not uploading the file that I demoed here, but decided to reverse course. The more people that see and experience JavaScript in FileMaker, the better. So here’s the file. Pick it apart. And feel free to let me know if you have questions about it!

We are very proud to announce that the Geist Interactive team won not one but two FBA Excellence Awards at FileMaker DevCon 2019. These mark our 4th and 5th awards in the last 6 years. Since next years event will has been renamed “Claris Engage”, these also mark the very last award given at a “FileMaker DevCon”.

Community Leader Award

Geist Interactive’s Evangelist, Jeremy Brown won the award for Community Leader for his tireless work helping build Claris’ online community. The community is a critical part of the Workplace Innovation Platform. Jeremy spends a lot of time helping people get answers to their questions, and he helps to ensure that the community continues to provide a positive experience for everyone looking for help with the platform.

Innovation Award

The innovation award is given to companies who create innovative solutions or tools, extensions or plugins that add innovative features to custom applications or make them better. In our case the award was given for our extensions and tools. Our three most innovative tools are likely the ones that got us the award. Remember they are on sale through the 16th of this month.

Here is quick look at three of the products that were entered and the developers who created them.


FMPerception is our realtime developer analytics tool. It is huge favorite in the developer community. Its blazing fast progressive search approach means you can get the information you need about your solution now, not later. You do not need to wait for long imports or parsing steps. You just ask a question and you get an answer. Access to this much information in realtime will make you a better developer.

FMPerception is a creation of Dave Ramsey and Hierarch LLC. Dave can be found each year at our booth with a huge crowd around as he waxes philosophical on the power of real time analytics


WidgetStudio is our vision for what we hope for the future of the Claris Workplace Innovation Platform. It helps you create, customize and deploy FileMaker WebViewer Widgets. Widgets are highly interactive user interface elements, that break free of traditions FileMaker user limitations. You can pick from the constantly growing set of included widgets or build your own and deploy it quickly.

WidgetStudio is the brain child of Cason Lind of Eagle Optimizations. This year he used FileMaker to control an industrial robot as it poured a cup of coffee. Amazing stuff from an amazing developer.

Otto and Otto Migrator

Otto is our FileMaker Server developer operations and data migration tool. You can turn tedious, error prone, slow manual data migrations into full automatic processes that you can kick off with the click of a button or at a particular time. You will not believe how good it feels. If you have a vertical market solution Otto will save you countless hours, when you push out new versions to your customers.

Otto can also send backups to amazon S3 for offsite backups. With just a few clicks you set up Otto to send a backup to S3 running in your own AWS account. Since Amazon doesn’t charge for uploads, your costs are really low.

The Last FileMaker DevCon

Although we didn’t know it when we arrived, this was to be the last FileMaker DevCon. In a surprise move FileMaker renamed itself Claris and changed the name of DevCon to Claris Engage. Although we are totally and completely psyched by these changes, it is a little bittersweet. Many of us have been to more than 20 DevCons. That chapter is now closed and new one begins.

Thank You

We get the trophy, but really we couldn’t do it with out you, our customers in over 50 countries around the world. Your dedication to the platform and your enthusiasm for our products is what made this happen. We thank you and we promise to keep innovating.

We are excited to announce that our Automated data migration and developer operations utility, Otto now includes an App Store. You can instantly install 3rd Party applications on your Otto powered FileMaker Server with a single click, making it super easy to demo interesting applications. Now Otto can migrate, backup, AND install FileMaker Applications.

It is available now. Existing users can download the latest version from their account on our website.

App Store

Available Applications

We are starting with a small list of applications from Geist Interactive and Seedcode. We expect this list to grow and are actively looking for apps from other developers to add to the list. If you are a developer with a server based application, that you would like to get into the app store please get in touch.

Pricing and Availablilty

Otto has a free version with some features limited. The App Store doesn’t require the full license. So you can enjoy the benefits of the App store without purchasing a full license. We hope you do purchase a full license though. Pricing starts at $400/year for a 3 server license.

Let’s just keep this short and sweet. 🙂 Geist Interactive’s DevCon 2019 Sale is back and better than ever. Get 20% off products in our store. If your order total is $3000 or more you’ll get an additional 10% off. That adds up to 30% off. Implementation Packages are 10% off. The discount will be automatically applied when you check out.


Q. Will the discount apply to renewals of licenses FMPerception?
A. Yes but the usual 50% renewal discount will be 40% for the duration of the Sale. That 40% will get added to the 20% or 30%, you get from the DevCon sale. Making it a 60 or 70% discount if you renew during the sale. This is the first year we have included renewals in our DevCon special.

Q. Will the discount apply to upgrades?

Q. When does the promo end?
A. August 16th, 2019


DevCon is just about the BEST TIME EVER. Even if you aren’t here at the show, you can still celebrate with us by taking advantage of this awesome sale!

In about a week, I’ll be presenting at FileMaker DevCon on two topics related to the Workplace Innovation Platform. As part of those talks I am going to be talking about Custom Application Networks. In this post, I’m going to introduce Custom Application Networks and talk a little bit about what makes the FileMaker Workplace Innovation Platform so good at building them.

Bridging the Gap

In FileMaker’s recently released white paper on the Workplace Innovation Platform, the authors list five reasons you should invest in a Workplace Innovation Platform; number two is: “Bridge the gap between appliance apps and enterprise systems.” If you look around you’ll see it isn’t just enterprise applications that need bridging—it’s the dozen SaaS applications that most business now use as well.

Companies today have a mishmash of apps and services that they try to string together into some kind of cohesive whole, but duplicate data exists in many apps. Information needs to move from one application to another with custom transformations unique to business processes, and somehow they need to extract valuable business intelligence.

Who designed this mess? How did we get here? Wouldn’t it be better just to build a big monolithic application so we could avoid the chaos?

It’s the Economy, Silly

Well, it’s the API Economy to be specific. As more and more applications and services get added to the network through APIs, they all get more powerful. They get cheaper to build and maintain, they get easier to sell, and they generate more revenue. This is a classic example of the network effect.

It didn’t start out this way. When the first SaaS apps where released 10 years ago, they weren’t very good, but they were affordable. I used to joke that SaaS applications were the fast food of the software industry. They were cheap, satisfied a craving, and were available everywhere, but if you lived on them they would kill you. That said, over time these apps improved substantially.

Just getting better wouldn’t have been enough fo them for them to transcend the fast food category—the internet as a whole got better too. Internet Explorer was killed off. JavaScript become the dominant programming language, and developers settled on REST or REST-like APIs with JSON as the payload. Suddenly these applications could talk to each other. Platforms like Zapier were born which focused solely on connecting SaaS applications.

Now we have applications that are improving at an ever-quickening pace, they can interoperate efficiently, are drop-dead simple to try out, and relatively inexpensive if you consider all the costs of building the functionality on your own. Add this up and you have an economic incentive so compelling that companies start using more and more of these apps without even really knowing that they are doing so. At first slowly, and then quickly, companies begin to assemble custom application networks.

Custom Application Networks and Innovation

Now, many companies have many SaaS applications that they rely on. They are maybe partially integrated using Zapier or other custom code. Each company has a different set of applications that are connected in different ways. The “Custom” part of the solution has moved partially out of the custom application and into the network layer. It is the unique collection of apps, connected in a unique way that defines a “Business System.” This a Custom Application Network.

Look closely at what this Custom Application Network does—it runs a business. If it isn’t working well, the business isn’t working well. If it’s too rigid, the business can’t adapt. If you can’t change, you can’t try new ideas. If you can’t try new ideas, you can’t innovate. Suddenly, the health of this Custom Application seems pretty important.

Custom Application Networks
Custom Application Networks mimic the organization of human brains and neural networks

Build vs Buy

As a brief aside, I want to make it clear that custom software development isn’t going away. We still need to build things that are unique for our businesses. There will be apps to build, dashboards to build, custom integrations to build, and APIs to build. The incredible opportunity is that now we get to build more of what really matters to our businesses—or for our clients—and less that doesn’t. Anything that is essential but provides no competitive advantage can be purchased and integrated. So the answer to the old question of “should we build it or buy it?” is “both.” You’ll buy and you’ll build, but you’ll just get to build more of what matters. Almost everything you do will be connecting in some way to a Custom Application Network.

Back to the Future

If you’ve been paying attention, you will note that there are some problems with this arrangement. The Custom Application Network was probably designed over time, and without a game plan. Data is spread across many applications, and the flow between the applications is not great. You can’t see the data you need to see when you need to see it. This feels remarkably like the beginning of my career.

Back in the 90’s and early 2000’s, building business software often meant translating paper-based systems into databases. Collecting and organizing everything, creating reports, crafting finds, and writing scripts to get these data to flow from form to form or table to table. Now we have a similar situation, but instead of data existing in a bunch of filing cabinets on paper or maybe excel spreadsheets, we have it in separate applications. Fundamentally the goal is the same: organize these data, get it to flow where it needs to be, make reports and charts, and design data in/out forms. How we do it is different, but the end goal is the same. Back then, we were creating databases that were shared over the LAN. Now, we are creating Custom Application Networks that might reach around the world.

Workplace Innovation Platform

Let’s consider the basic set of capabilities you need to keep your Custom Application Network going. Whatever tool you use, it will require the use of REST APIs to create custom data flows between SaaS applications. It will need to be able to create web, mobile, and desktop apps. It will need to have a database component. It will need to be easy to get started with, and powerful enough to build pro-level applications. It would be great if it offered escape hatches through a plugin API and integration with JavaScript. Where can we find such a tool?

If you accept the premise that healthy innovation in a business is tied to the business’s Custom Application Network, it’s really no surprise that a Workplace Innovation Platform tool like FileMaker would provide these capabilities. Business Innovation is managing, building and maintaining the Custom Application Network. Even if you are only building a small custom application for your company, it is almost certainly going to need to plug into the network at some point, and so your custom app will be improving the health of that network.

FileMaker has all of the capabilities I outlined above. I am not aware of any other tools out there that have the full stack that FileMaker has, making it the perfect platform for building part, or all, of your Custom Application Network.

It’s Not That Hard, but it is Different and it’s Getting Easier. Oh, and it’s Worth it.

Many of you are probably thinking, “Ok sure, but integration is not easy. The Custom Application Networks that you advocate are a sort of distributed database system and that is more complicated than building everything in one system.” This is true to a degree. It was certainly true in years past, but I don’t think it as true today. The tools for integration are getting better, and best practices and patterns are emerging that will help us reason about these problems.

Also, it is undeniably worth it to make the effort. Once you begin to build systems in this way, you will begin to feel how much more robust, more flexible, and less risky your system is.

The Opportunity

It’s hard to overstate the opportunity presented by the Custom Application Network. Every business of any size is creating one, whether they know it or not. If you’re a business owner, understanding your network will help you decide what to build and what to buy. If you’re a custom app developer, every company has technical challenges, which you have skills to solve. If you’re a vertical market developer, understanding how to fit your app into your customers’ custom application networks will help you decide what features to build and what to leave to the network.

The Geist in your Business Innovation Machine

At Geist Interactive, we have a methodology we use to work through the Custom Application Network’s opportunity. We call custom application networks that are built with intent “Business Innovation Machines,” for what I hope by now are obvious reasons. If you’re curious about this, and wonder how it might help you, please reach out. We’d love to be the Geist in your Business Innovation Machine.

More at DevCon

Custom Application Networks aren’t the only thing I’ll be covering at my two talks at DevCon, although it will make up a substantial part of my first talk. The other presentation will be about where I think we’re headed in the next few years. I hope to see you there.

My username on the FileMaker community is “jeremy_fm_js”, and I’ve been known to advocate using JavaScript in FileMaker for a few years now. It might be interesting to be typecast into ‘the guy that always talks JavaScript’ (I don’t always recommend JS in my posts in the community), but I advocate for many good reasons. Some of them are reasons I’ve stated before, but also, there’s a few new ones I’ve thought of in the past year 🙂 If you need an escape hatch–this is, if you need to build an interface that is more interactive than we can do using ‘idiomatic‘ FileMaker–we can consider JavaScript, and we can consider learning the language. To help you learn JavaScript, JavaScript is part of FileMaker DevCon.

Why JavaScript?

The answer to this question is: why not JavaScript? There’s a lot of innovation we can bring to custom apps using the language native to FileMaker. JavaScript and JavaScript libraries brings thousands of testers to its foundation. I’ve written about all this before.

More reasons

FileMaker itself seems to be giving some weight to JavaScript in the platform (the entire platform, of course). There are two pieces of evidence. First, exploring JavaScript, for the third consecutive year, is part of FileMaker DevCon, the FileMaker conference. Along with APIs and Zapier and microservices, attendees will have the chance to see and experience what JavaScript can do in our apps.

Secondly, JavaScript is specifically mentioned in the product roadmap. In the past it’s been rare to see something so ‘outside’ of FileMaker be mentioned in the FileMaker plans, but there it is. So FileMaker, Inc, and my friends in the product-development team, must have some special plans for it.

The roadmap states: “Within a web viewer, directly call JavaScript from FileMaker scripts and vice versa.” That’s a very amazing idea. We will be able to solve certain web viewer problems with this functionality and give more control to FileMaker interacting with the JavaScript code.

JavaScript at DevCon

All day pre-conference training

This year I have the honor of leading folks in a full-day training of FileMaker & JavaScript. We will work together for six hours to talk about the following objectives and concrete activities.

Learn the basics of the JavaScript language

We’ll work together on exercises that teach us the basics of the language. We’ll talk about JavaScript concepts, and we’ll connect what’s true about JavaScript with what we already know in FileMaker.

Each exercise comes with one or more extra practices. We’ll do those to drive the point home.

Identify the peculiarities of the web viewer object on different devices

The web viewer object in FileMaker is powerful, but it is quirky. We have to understand its needs for each device, so as we practice and exercise, we’ll talk about how the web viewer works differently in different operating systems.

Integrate JavaScript libraries into any custom app

The fun of this day will be to spend time putting charts or data tables or any number of other libraries into our apps. We’ll learn how to do this from scratch. We’ll also review the tools out there that make this part very easy.

Just so you know: In order to work with libraries, we need to know a little JavaScript. We can’t run until we learn to walk.

Learn to communicate between JavaScript and FileMaker easily

The FM WebViewer Bridge framework is an important last-piece of the puzzle. It solves quite a few problems when working with the web viewer, and it provides a less jarring experience for your users. We’ll examine how this framework works.

We will work through examples and practices to learn more about how we can use JavaScript, and it will be a productive day. Attendees will learn a lot about how to use the language. We won’t be JS experts, but we will at least know a bit more of our way around its use in FileMaker. I have two ultimate soft goals:

To be comfortable enough with JavaScript we can look a JavaScript library in the face and not run away screaming in terror.


To expand our horizons of what is possible with FileMaker and JavaScript.

The six hours will be more than enough time to get our feet wet. If you haven’t signed up yet for this training time, I encourage you to give it a consideration. JavaScript brings to our fingers much power, and this session can help you see how to harness that power.

Discussions throughout the week

I wish to continue the JavaScript discussion well after the training session ends (after we’ve had a chance to recover from the workshop). Last year I was available to talk shop and sat with a few folks to talk one-on-one about how to integrate a chart or a data table into their in-production apps. That was a blast. So this year I wish to continue that. While at the booth or at food time or in the hallway, I’ll be available to talk with folks about their use of JS in their apps. So feel free to find some time with me and we can continue to discuss this innovative tool.

JavaScript after DevCon

The fun doesn’t end when FileMaker DevCon 2019 ends. Oh no. Energized from that experience, I’ll continue to talk about JavaScript and FileMaker. I’d love to do a follow up training session with interested folks to continue to learn more about the language and how to use it in FileMaker. So stay tuned to this blog and our Twitter page for more information.

Preparing for DevCon

If you do plan (or are thinking about) on joining me for FileMaker & JavaScript, please take a moment to download the file (below) and test your setup (computer, browser security settings, FileMaker version etc) to see if all will go well with your time. Basically click some buttons and confirm you see the web viewer user interface and interactions. Those running macOS will be fine. Windows users should really test it out.

I want you to be successful in the session. The file here contains a small sample of what we will do; all the items you’ll test here we want to make sure work. If you download the file and run thru the tests and all is good, you’ll have no issues with the work we do during the training. If you do have issues, please reach out to me at and we can work on finding a solution so that you can attend and learn and exercise your innovative spirit.

Don’t worry if your copy ‘fails’. I have a plan in case you can’t view the C3Chart or the DataTables or the PivotTable. The only extremely-vital one is the Code Editor test.

See yah in just a month! And get ready for JavaScript at FileMaker DevCon.


The following list of downloads reflects what we did during the FileMaker & JavaScript session. More is coming soon.

JS Test File: test your machine to be ready for the training

Session Slides: The slides we used to talk about JavaScript and FileMaker and the web viewer.

To view all the resources we used and to view tutorial videos walking through each exercise we did during the session, go to this page.

WidgetStudio, the best tool out there to create and customize and deploy FileMaker web viewer widgets, is only a few months old. Yet its creator, Carson Lind of Eagle Optimizations, has added many new features to the dev tool. His goal was to make it easier to create and customize widgets. And he did so with the three big new features: Using an External Editor, Offline Compiler, and Easy Access to Variables.

Using an External Editor

The biggest feature–and the one we enjoy the most–is that WidgetStudio will now work with an external code editor. Though WidgetStudio provides a great basic editor for some widgets, most widgets we’ve built recently can get complex with many lines of code and many separate parts (HTML and some CSS and some JavaScript). WidgetStudio can now both sync a new or existing widget’s code from the files on the machine and ‘watch’ for any changes made to those files. A FileMaker developer can now use the editor outside of WidgetStudio, writing and organizing her code there, and then use WidgetStudio’s tools to customize and deploy that widget.

This is incredibly handy. Editors such as Visual Studio Code are commonplace among HTML / JavaScript developers. There are a lot of features built into these apps that make writing code efficient. And these developers can write code faster in an editor and in a more organized fashion.

Web Viewer widgets can get complex, having many different files. An external code editor helps organize. WidgetStudio can work with all of these.

Compile for offline use

Many widgets tap into additional JavaScript or CSS libraries that are found online somewhere. If this is the case, the widget must be able to reach that library, so the device must be able to access the internet.

WidgetStudio 2.0 now can compile for offline use. This means that any online resources such as JQuery or BootStrap that are available online will ‘sucked’ into the Widget at compile-time. WidgetStudio is clever in that it brings these online resources into a FileMaker table. And the widget then has all the libraries it requires without the need for being online.

WidgetStudio grabs the libraries that are hosted online and makes them available to your widgets.

Access to Variables

In WidgetStudio 2.0, widget creators can now access the variable settings much easier. While working in an external editor, the creator places variables to represent the customizable items. She needs to add additional settings to each variable to make it easy for a user to understand the value. WidgetStudio presents those settings with fewer clicks.

WidgetStudio truly gives us easier access to innovative web viewer widgets that enhance our user’s work and experience. And developers of widgets now have more tools to create and organize web viewer widgets. Check out the new features and download the demo. If you’ve already purchased WidgetStudio, you can get the update through your account here at or through the tool itself.

Today our FileMaker DevOps tool, Otto, gets a big upgrade; automated offsite backups to any S3 compatible storage service. Otto the only product that automates data migration, solution upgrades and offsite backups for on premises FileMaker servers. Otto 2.0 is now compatible with FileMaker 18 server.

Once Otto is installed on your server you can configure it to move a folder full of backups offsite. You can use S3’s storage retention policies to keep backups on S3 for as long or as short a time as you want. S3 is so cheap though, that you might just decide to keep daily backups stored there indefinitely.

Otto transfers Backups to S3

If your Workplace Innovation Platform Servers run on premises, then you need to make sure that you have a reliable backup method to make sure your valuable data is backed up offsite. Otto now has you covered.

Otto 2.0 is available today on our website. There is a free limited demo version available. Prices for the full version start at $400 for a 3-server pack. If you already have an Otto License, you can download this new version from your account on our website for free.