Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Fluid IDE for Accela Civic PlatformNew to Visual Studio Code? Get it now.
Fluid IDE for Accela Civic Platform

Fluid IDE for Accela Civic Platform

Fluid Dynamics

|
12 installs
| (0) | Free
A full IDE for the Accela Civic Platform. Edit, diff, test, version, search and deploy EMSE scripts and expressions across every environment — with encrypted credentials, live server logs, and Accela records open right inside VS Code. An independent tool, not affiliated with Accela, Inc.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Fluid IDE for Accela

A full IDE for the Accela Civic Platform. Finally.

Stop editing EMSE scripts in a browser textarea.

Fluid IDE turns VS Code into a complete development environment for Accela: Create, edit and delete AA scripts & expressions in VSCode, with real diffs, real built-in version history on the server, and full-text search across every script and expression on the server, with the ability to run Script Tests & Commit code all right in the IDE. Create and edit pageflows, sync your changes right back to the server. You can also navigate the Database, with secure encrypted credentials, and utilize one-click deploys across dev, test, QA, UAT and production — and navigate through Accela records opening right inside your editor.

Everything you already love about VS Code. Pointed straight at your Accela environments.


Why it exists

Accela script development normally means a browser admin page: no diff, no history you can trust, no search across scripts, passwords in a text file, and a whole lot of copy-paste between environments. Fluid IDE replaces that entire loop with the editor you already use every day.

Without Fluid IDE With Fluid IDE
Edit in a browser textarea Full VS Code editing, IntelliSense, multi-cursor
No diff before you commit Side-by-side diff against the live server
"Who changed this and when?" Per-script and per-expression version history, with diffs
No source control on your scripts Real files on disk — Git, branches and PRs just work
Passwords sitting in plain text AES-256-GCM encrypted, bound to your machine
Copy-paste between environments Every environment in one project, one click apart
No cross-script search Full-text search across every script and expression
Test by deploying and praying Run tests in the IDE, with automatic rollback
Alt-tab to a browser to look at a record Open Accela records inside VS Code
Guess what the server is doing Live server log panel inside the editor
Click through ACA admin to find a page flow script The whole page flow, and its scripts, in the tree

Features

🔌 Multi-environment projects

Define every environment for an agency in a single project file and connect to any of them straight from the sidebar. Dev, test, QA, UAT, production — switch between them instantly, with nothing to reconfigure.

📜 AA Scripts, the way code should feel

Browse, filter and search every EMSE script on the server. Open one and it behaves like a normal file, because it is one.

  • Compare with server before you touch anything
  • Pull the server copy down, Push your copy up
  • Version history with a diff against any previous revision
  • Run test script — execute it and roll every change back automatically
  • Execute & commit — run it for real when you mean it
  • Live output in a dedicated AA Script Output panel

🧪 Test without fear

Run a script against a real record, right from the editor, and watch the output stream into the IDE. The rollback variant undoes everything it touched, so you can try the risky thing on a real environment and walk away clean. When it's right, Execute & Commit makes it stick.

🧮 Expressions, first class

The same full workflow for expressions — compare, pull, push, history, mark-as-merged — plus a docked Expression Properties panel and refreshable lookups. Create brand-new expressions directly from the Record Types tree.

🕓 Built-in version history for scripts and expressions on the server

Every push is captured, so there's a real trail of who changed what and when — for AA Scripts and Expressions alike. Open any past revision read-only, or diff it against the one before it, without cluttering your project with temp files.

🌿 Git-ready by design

Scripts and expressions are pulled down as ordinary files inside your project folder — so VS Code's built-in Source Control, Git branches, blame, pull requests and your CI pipeline all work on your Accela code exactly like any other repository. Your project's settings.fluid.conf is safe to commit too, because the passwords inside it are encrypted.

🔐 Your passwords, encrypted

Environment passwords are stored with AES-256-GCM authenticated encryption and a key derived from your own machine identity. A conf file that leaks, gets shared, or gets committed is useless to anyone else — and a tampered file fails loudly instead of quietly sending garbage at your login endpoint.

🗂️ Open Accela records inside VS Code

Search records from the dashboard and open the full Accela record view in an editor tab — your existing authenticated session carried across for you, no second sign-in, no alt-tabbing to a browser. Jump from a record straight into a runnable notebook wired to that record's own data.

🔄 Sync view

A source-control-style view of everything that differs between your working folder and the server. Review each change, compare it, then push or discard — individually, or all at once.

🚦 Page Flow — build your Citizen Access intake, from the editor ✨ New

The whole ACA page flow for a record type, live in the Record Types tree — steps, pages, components, and the scripts wired to each page.

  • See what actually runs. Every page's onLoad, beforeButton and afterButton events, with the script bound to each. Click one and it opens — same diff, history and sync as any other script.
  • Assign a script to any event from a dropdown of every script on the server, or clear it. A script that no longer exists is flagged, instead of failing silently at runtime.
  • Build the flow. Create a page flow and assign it to a record type, then add steps, pages and components — reorder anything with the arrows, delete with a confirmation that tells you exactly what goes with it.
  • Per-component options that adapt to the component: a Custom Fields component gets real ASI group and subgroup pickers; a Custom Component gets your registered controls; contact components keep their internal identifiers untouched.
  • Nothing gets orphaned. Deleting a component takes its Citizen Access contact-validation settings with it — configuration that no admin screen shows you.

Everything writes through Accela's own persistence layer and is read back to confirm it landed. Removing a page flow from a record type removes it from that record type — never from the 200 others sharing it.

🧭 Record Types explorer

Navigate record types, ASI groups, subgroups and custom fields — and jump straight from a field to the expression that drives it. Create expressions inline, and delete them safely — the final version is archived to expression history first, so a removal is always recoverable.

🔎 Search everything

Full-text search across every server-side script and every expression. Find the one place that sets that fee in seconds, instead of opening 400 files looking for it.

📊 Live server logs

Stream Accela server logs into a panel inside VS Code while your script runs, or open the raw log file in the editor.

🧭 Script Outline

A symbol outline for EMSE scripts, docked in the secondary side bar so it sits alongside your trees instead of replacing them.

🗄️ Database Explorer (read-only)

A filterable browser for tables, views, stored procedures and functions, with a re-runnable result grid. Every query is validated server-side and restricted to reads.

📓 Interactive scripting guide

A built-in notebook (.emse-notebook) that teaches EMSE scripting with runnable cells.


Getting started

  1. Install the extension.
  2. Click the Fluid IDE icon button in the left Sidebar.
  3. Click on Create a New Accela project folder.
  4. Follow the wizard to name your project and add your first environment. (Make sure to type in the AA Classic URL, not the AV url). The Wizard will verify the connection details and show a success message. Click Finish.
  5. Click on the new environment that was added to the 'Project Environments' panel to connect.

The extension activates only in a folder that contains a settings.fluid.conf file, so it stays completely out of your way in every other project.


Requirements

  • Visual Studio Code — see the Requirements section on this extension's Marketplace page for the exact minimum version.
  • Network access to your Accela Civic Platform environment.
  • An Accela user account with permission to view and modify EMSE scripts.

Self-signed certificates

Accela development, test and staging environments very often use self-signed TLS certificates. Fluid IDE can connect to these.

⚠️ Security notice Relaxing TLS certificate validation removes protection against interception and machine-in-the-middle attacks. Enable it only on trusted networks, and prefer keeping it off for production environments. You are responsible for this choice. See Section 6 of the license.


Your data

Fluid IDE is a local tool. Your credentials, scripts, expressions, configuration and log data are processed on your own machine and sent only to the Accela environments you configure.

Nothing about the contents of your scripts, your database queries or your server logs is sent anywhere else. No accounts, no cloud middleman, and no tracking of what you do inside the IDE.

When Fluid IDE starts, it records a brief check-in with Fluid Dynamics noting that the installation ran — the version in use and a basic device identifier, and nothing else. It tells us which builds are in the field so support and updates stay aimed at the right ones. If the machine is offline or behind a VPN the check-in is simply skipped, and everything carries on as normal.


Pricing

Fluid IDE is free through 1 October 2026. Everything is unlocked — no account, no sign-in, no activation step.

From 2 October 2026, actions that write to an Accela server need an activation code:

Needs a code Free, always
Push script / expression to server Connect and browse environments
Script Execute & Commit Pull from server
Mark as Merged Compare / diff against the server
Add or delete a script Search scripts and expressions
New expression Version history
Sync → Push, Push All Server logs, database explorer, notebooks

Nothing you have already written is ever locked away — your scripts stay on disk and stay readable.

Activation works offline

There is no licence server. An activation code is a signature your copy of Fluid IDE checks by itself, so it works on restricted and air-gapped networks with no outbound access.

  1. Run Accela IDE: Copy Machine ID from the Command Palette.
  2. Send that ID to us.
  3. Run Accela IDE: Enter Activation Code and paste the code you get back.

Run Accela IDE: License Status at any time to see what is active on the machine.


Known issues

  • Machine identity is derived from the VS Code installation, so reinstalling VS Code, or using a portable install, may register as a new machine — and saved passwords will need re-entering, since they are encrypted to that identity.
  • Remote-SSH, Dev Containers and GitHub Codespaces are not yet verified. Local workspaces are the supported configuration for now.
  • Very large log files can take a moment to load in the log panel.

Found something else? Please open an issue.


Support

  • 🐛 Bugs and feature requests: GitHub Issues
  • 📧 Email: hisham@fluid-dynamics.net
  • 📄 Changelog: CHANGELOG.md
  • Developed by: Hisham El Fangary

License

Commercial software. See LICENSE.txt for the full End User License Agreement.


Trademark notice

Fluid IDE for Accela is an independent third-party product. It is not affiliated with, endorsed by, sponsored by, or officially connected to Accela, Inc. or Microsoft Corporation.

"Accela" and "Accela Civic Platform" are trademarks or registered trademarks of Accela, Inc. "Visual Studio Code" is a trademark of Microsoft Corporation. These names are used solely to describe what this extension interoperates with.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft