Complete Platform & Stack
Read more about the Epicenter stack in our documentation.
Mathematical Modeling Tools
The core of most Forio Epicenter projects is a model, which encapsulates the business logic of the project. It might be a system dynamics model, a Monte Carlo simulation, a linear optimization, a machine learning algorithm, or something else.
You can create your Forio Epicenter models in several common languages:
- Python: a powerful, fast, and flexible general-purpose programming language.
- R: a programming language for statistical computing and data analysis.
- Vensim: a commercial simulation package for developing models.
- Powersim: a commercial simulation package for developing models.
- Stella: a commercial simulation package for developing models.
- Forio SimLang: a specialized simulation language developed at Forio and familiar to users of the previous generation of our platform, Forio Simulate.
- Julia: a high performance technical computing language.
Models of all types integrate automatically with Epicenter’s Interface Builder and complete stack of APIs. You can set parameters, perform calculations, run scenarios, and retrieve results directly from a web browser or mobile client. Model results are automatically saved to a server-side database allowing model interactions to be compared, shared, and archived.
Read more about writing your model in our documentation.
Epicenter’s Interface Builder is an amazingly fast and simple way to create beautiful modern interfaces for your model.
Select from a library of templates and themes to customize your interface for your project and audience. Add charts, graphs, tables, and images to visually illustrate your model, then publish it to the world. Projects created with the Interface Builder are viewable on multiple screen sizes making them even easier to share.
Read more about how to use the Interface Builder in our documentation.
Web Components for Linking Model and UI
<label for="revenue">Revenue</label> <input data-f-bind="revenue" type="text"> <label for="cost">Cost</label> <input data-f-bind="cost" type="text"> <label>Profit</label><div data-f-bind="profit"></div> <button data-f-on-click="calculate_profit">Calculate</button> <button data-f-on-click="reset">Reset</button>
Decoupling your model from your user interface in this way is beneficial as a general design principle, and can be especially helpful for larger development teams where the UI developers and the modelers are different people.
Get the Flow Inspector
Flow Inspector is an add-on component of Flow.js that allows you to easily determine which model variables are being used where and in which Flow.js (`data-f-`) attributes in your user interface.
It's a great way to help you understand the connection between your UI and your model. It can also help to debug problems in your UI, whether you're a front-end developer or a modeler.
Learn about the Flow Inspector and Flow.js in our documentation.
Read more about Epicenter.js in our documentation.
Many projects require end users to work together — either collaboratively, competitively, or both.
For these multiplayer games, you typically want multiple end users to share the same set of interactions and work within a common state. Epicenter allows you to create 'worlds' to handle such cases. Support for this is built in to Epicenter, accessible with a few clicks: everything from creating groups, end users, and facilitators, to automatically assigning users to roles within their worlds, to separately tracking the state of each world.
And unlike elaborate, one-off custom development, Epicenter is a platform — so all these features are built in, ready for immediate use in any or all of your projects.
Collaborative Development & Role-Based Security
Team members each have an Epicenter account (so can create their own personal projects), and can collaborate on projects based on the subscription plan selected. During collaboration on these team projects, each team member can be restricted to particular roles as needed — so everyone can stay focused on their work, with access to view or edit only relevant parts of the project.
End users can play with projects through the user interfaces created by team members, but do not have project authoring privileges. End users are organized into groups, for example based on a seminar, class, or department. Facilitators, a special class of end users, have access to all data for the group.
Enterprise Security & Support
If using the Forio Epicenter platform from our cloud-based hosting is not for you, we can help you run Epicenter specifically for your organization. Forio’s experts in scalable, distributed systems work closely with your IT team throughout the entire lifecycle of your enterprise apps. Enterprise solutions may be hosted by Forio or installed in your local, on premise, environment.
Whether on premise or in the cloud, Epicenter secures your requests and data by using authentication with industry-standard OAuth 2.0 — giving you a fast, secure way of creating and managing your users while you focus on your features.