Please note that Flux.io shut down on 31 March 2018 and is no longer available. However, this tutorial has been kept for legacy purposes.
Flux was started in late-2010 at Google[x], Google’s research lab, with the mission to address two global challenges: climate change and affordable housing for the urbanising population. Flux provides cloud-based collaboration tools for architects, engineers, and contractors to exchange data and streamline complex design workflows. In contrast, most design software today relies on manual file transfer, data conversion, and data-merge, which are tedious and error-prone tasks.
Flux plug-ins currently work with Grasshopper, Excel, Dynamo, AutoCAD, SketchUp, Revit and 3D max to automate data transfer to and from Flux.
Probably one of the best ways to describe Flux is that it is a mix of HumanUI, Freighter and Project Quantum. Like Human UI in that, you can build custom user interfaces. Like Freighter in that, it simplifies visualising the output without complicated software installs. And finally, like Project Quantum by Autodesk, which seeks to compile data from multiple authoring tools into a single, cloud-based platform.
One of the significant advantages that Flux affords us is the ability to break down silos within the AEC industry. It does this by allowing different team members to work in their preferred software, but still have synchronised and coordinated data. This achievement is not to be under-estimated and will likely be a game-changer in the AEC industry. Flux uses the *json file format and therefore is not locked down like other proprietary formats.
It is important to note that Flux is still a new company, and it is continually evolving. While evolution is a good thing, it does mean that it can be difficult to document or capture information as the frequency of updates is so rapid. One example of this is the branding. I did not become aware of Flux until September 2015. Since then, which is about 18 months, they have re-branded several times.
The first logo (as far as I’m aware), was the ‘sustainable architecture @ scale’ logo. This logo tends to relate to one of their earlier ambitions of automating project feasibility through the ‘Flux Metro’ app.
Next, came the hexagon, which I quite liked. Much of the branding you’ll see on the website still has this logo on it.
Feeling that hexagons were becoming a little too prevalent, Flux’s new logo more effectively communicates the connection of data. In a nod to the original logo, Flux retained a six-pointed shape. The new logo also tessellates, indicating extensibility and connectivity.
The other major issue that has fluctuated is pricing. In my RTC 2016 presentation, ‘Grasshopper to Dynamo: There and back again‘ I compared various interoperability tools and their associated costs. At the time, Flux was free. However, it was noted that Flux had recently secured US$29M in funding. It was prophesised that to satisfy investors, Flux would need to be commercialised by charging customers. Sure enough, this came to pass in November 2016. Possibly due to a backlash, Flux decided to introduce a free ‘Flux Evaluation’ plan in February 2017.
There is no time limit on the Evaluation plan. The only restriction is the user is limited to a maximum of two Flux projects. There is no credit card required to get access to an evaluation licence. Users just enter in their email address, click an email link, and they are good to go. All apps and plug-ins are included in the evaluation tier. As always, Flux is free for educational use and continues to be so. Furthermore, if you were lucky enough to be on of Flux’s original beta testers, then they continue to enjoy free access to the system.
Setting up a Flux project
A Flux project is used for data exchange and collaboration. You can invite teammates into your project to share data. Each user and application control when to synchronise data with the project, allowing users to work in isolation until they are ready to share their changes with the team. Since Flux was developed by Google[x], it will only work with Google Chrome. Here is how to set up your Flux project:
- First, you’ll need to set up and sign in to your Flux account.
- Once logged in, you will be re-directed to your home page, which puts ‘apps’ front and centre. This page uses a brand new user interface as of April 2017. Previously, you would be directed straight to your Flux Projects. The new arrangement seems a little counter-intuitive because most apps require a project to be already created before it can be used. You will have three apps by default – Data Explorer, Flow and Projects. These three go together.
- Click on the ‘Projects’ app and create a new project. I called my project ‘BILT Demo’.
- Double click on the newly created project to open it, which will take you to the Data Explorer app where you can view ‘keys’. Keys are geometry/data that will be transferred to/from Flux.
- Depending on how you want to use Flux, we can either create keys here manually or let certain apps do it for us automatically. To create the keys manually, simply hit the plus button in the data table on the left. Entre in the key name, such as ‘Columns’, and give it a description. These keys will be empty until we send data to Flux and write to that key.
You’ll notice on your home page a section featuring Flux Labs. These include Capacitor, Dashboard, Scheduler, Terra and Tracker.
- Capacitor enables you to view previous versions of your data and roll back in time. Never worry about that lost design iteration ever again.
- Dashboard allows you to create a beautiful and straightforward presentation of your Flux data. You can share your dashboard with any of your project collaborators – the only requirement is a web browser.
- Scheduler allows you to create, edit, and view Revit schedules on the web. Collaborating with Revit model data has never been easier. Instead of requiring everyone on a project who works with schedules to work within Revit, now all you need is a web browser.
- Terra allows you to place your 3D model at a precise location on Google Earth. No more fussing with export, scaling or coordinate alignment issues. The Terra web interface helps you quickly configure, generate and download a native *KMZ file which you can share or open in Google Earth.
- Tracker allows you to track your project activity on Slack and email. Want an easier way to stay up-to-date with project progress? Connect Flux Tracker to your project and get notifications in real-time (or in batches) as changes are made.
When launching an app, you may be prompted to verify your account details.
You will also need to grant the app authorisation to access your Flux account.
3rd party apps
In addition to the apps created by Flux, there is also a dedicated Flux Labs site which includes apps developed by the Flux community. The webpage is a little hard to navigate to as there is no link from within your home page. Presumably, this will be better integrated in the future. The site contains a mixture of apps, hacks and example workflows. It is somewhat messy – some are in their infancy, such as Siteline Analyser, which is a workflow, while others are fully developed apps, such as Site Extractor. Some of the apps have been open-sourced and can be found in the GitHub repository.
- Flux only works on stable releases of Dynamo. If you have a later daily build installed, you may be stuck as several users have reported not being able to uninstall Dynamo fully.
- Flux components require login authentication and thus will not work in clustered scripts.
Throughout Parametric Monkey, I have written about the interoperability tools available to Revit and Rhino users. Of all the plug-ins available, it would appear that Flux is the most promising. Overall, Flux is pretty unobtrusive, and only minimal modifications are required to your existing Grasshopper and Dynamo scripts. Yet the benefits it offers – interoperability, worksharing and cloud computing – are quite powerful. Moreover, it would appear Flux has the resources to become something exceptional in the AEC industry. While most of the interoperability plug-ins were developed solo during the developer’s spare-time, Flux currently has approximately 27 employees and has just secured US$29M in funding. The question then is, when will Flux be commercialised, and will it still have the same appeal if we have to pay for it?