Fulcrum Desktop Introduction

Introduction to using the Fulcrum Desktop utility.

Fulcrum Desktop is an experimental command line tool for intelligently syncing your Fulcrum Organization data to an on-site database. The local database is a complete API representation with search indexes and query tables, making it ideal for integrating Fulcrum with data driven applications, such as Business Intelligence (BI) and Geographic Information Systems (GIS).

This application is still very much under active development and has been designed to support extensibility and customization via plugins, so expect changes, improvements, and additional functionality in the coming weeks and months. While we encourage developers to test out this experimental tool and provide feedback, it is not a first-class Fulcrum product and official support should not be expected.

How it works

You first run the setup command to authenticate to your Fulcrum account and setup the local Fulcrum SQLite database. Next you can run the sync command to sync with your Fulcrum organization. This will build all the necessary database tables, indexes, views, etc. and sync down all of your Fulcrum resources, including forms, records, choice lists, classification sets, projects, members, and roles.

The internal fulcrum.db SQLite database is not very user-friendly, so you will likely want to install one of the database plugins.


Fulcrum Desktop has installers for Windows (32-bit and 64-bit), macOS and Linux, which are available from the releases page on GitHub.

Linux (Ubuntu x64)

curl -o- -L https://raw.githubusercontent.com/fulcrumapp/fulcrum-desktop/master/install.sh | sudo bash

Command installation location: /opt/Fulcrum/scripts/fulcrum

Plugin installation directory: /home/username/.fulcrum/plugins

Internal SQLite database: /home/username/.config/Fulcrum/data/fulcrum.db

Daily log files: /home/username/.config/Fulcrum/log


Open the .dmg, drag the icon to Applications. That’s it! While running, the program will auto-update if there’s a new release available.

Command installation location: /usr/local/bin/fulcrum -> /Applications/Fulcrum.app/Contents/scripts/fulcrum

Plugin installation directory: /Users/username/.fulcrum/plugins

Internal SQLite database: /Users/username/Library/Application Support/Fulcrum/data/fulcrum.db

Daily log files: /Users/username/Library/Application Support/Fulcrum/log


Install from the Setup .exe and follow the instructions. This will create a shortcut icon on your desktop (and open up a GUI window - which is not currently functional - you can close this window). Double-clicking the shortcut icon will open the GUI again; doing this also triggers the auto-updater. If there is an updated release available, it will be downloaded and installed. Windows users on older operating systems may experience a TLS issue - please see this for a workaround to enable more modern versions of the protocol.

Command installation location: \Users\username\AppData\Local\Programs\Fulcrum\scripts\fulcrum.cmd

Plugin installation directory: \Users\username\.fulcrum\plugins

Internal SQLite database: \Users\username\AppData\Local\Fulcrum\data\fulcrum.db

Daily log files: \Users\username\AppData\Local\Fulcrum\log

Getting started

After installing the core command line tools, you should authenticate with your Fulcrum account to setup your local database, sync your Organization’s data down, install one of the database plugins, and then setup auto-syncing. You can authenticate to Fulcrum via username/password or API token.

Setup the local Fulcrum database

Note: --org is now required when running fulcrum setup so that the role can be verified.

OS Command
macOS / Linux (prompt) fulcrum setup --org 'Organization Name'
macOS / Linux fulcrum setup --org 'Organization Name' --email 'EMAIL' --password 'SECRET'
Windows .\fulcrum.cmd setup --org "Organization Name" --email "EMAIL" --password "SECRET"
All fulcrum setup --org 'Organization Name' --token '<token>'

Sync your Organization

OS Command
macOS / Linux fulcrum sync --org 'Organization Name'
Windows .\fulcrum.cmd sync --org "Organization Name"

Note: if you have already installed the PostgreSQL plugin (below), you will also need to pass any parameters that your connection requires.
Example: fulcrum sync --org 'Organization Name' --pg-user 'myuser' --pg-password 'mypassword' --pg-database 'mydatabase'

Install the PostgreSQL database plugin

By default, the PostgreSQL plugin expects a database named fulcrumapp with the PostGIS extension installed.

OS Command
macOS / Linux fulcrum install-plugin --name postgres
Windows .\fulcrum.cmd install-plugin --name postgres

Setup continuous sync

Continually sync the database to pull down changes from Fulcrum.

OS Command
macOS / Linux fulcrum sync --org 'Organization Name' --pg-user 'myuser' --pg-password 'mypassword' --forever
Windows .\fulcrum.cmd sync --org "Organization Name" --pg-user "myuser" --pg-password "mypassword" --forever

Windows seems to prefer double quotes with command parameters.

Next steps

Review the Fulcrum Desktop command reference.