Skip to content

Getting Started#

This section takes you from a fresh clone to a complete loop: a procedure defined in Python, executed on a phone, and analyzed back on your computer.

The Minimal Path#

You do not need a server to use CaptureGraph. The minimal setup is two pieces:

  1. The Python library (capturegraph-lib) — defines procedures and analyzes captured data, all under import capturegraph as cg.
  2. The iOS app — executes procedures and stores the results on the device.

Data moves between them as plain files: you drag a procedure JSON onto the phone, and you drag the captured target folder back off. The procedure's schema travels with it, so the folder is self-describing — there is no manifest to maintain. The server, scheduler, and sync tool become relevant only when multiple people capture into a shared target — see Running a Server when you get there.

What's in This Section#

Page What you'll do
Installation Clone the repo and install the Python library into a virtual environment
The iOS App Build and run the CaptureGraph app on your device with Xcode
Your First Capture Capture a session using a bundled procedure — no Python required
Your First Procedure Write a procedure in Python, deploy it to the phone, and run it
Analyzing Your Data Copy the captured target off the phone and load it with cg.load

Prerequisites#

What you need (and what you don't)

  • Python 3.12 or newer for the library — Linux, macOS, and Windows all work.
  • macOS with Xcode is required only to build the iOS app, and an iPhone or iPad running iOS 18+ to capture with real sensors. There is currently no App Store or TestFlight distribution — you build the app from source.
  • If someone else builds and installs the app on your device for you, everything else in this documentation works from any platform.

Next#

Start with Installation.