Installation Guide

This guide explains how to install FLYNC and its SDK in different environments. FLYNC is a Python-based tool distributed as a package and built using Poetry.


Prerequisites

Before installing FLYNC, ensure your system meets the following requirements.

System Requirements

  • Python – 3.11 or newer

Check your Python version:

python --version

Hint

If Python 3.11+ is not installed, download it from the official Python website or use your system package manager.


Installation Options

FLYNC can be installed in different ways depending on whether you are a user, contributor, or documentation builder.

All installation methods use Poetry as the dependency and environment manager.

Warning

The FLYNC model depends on pydantic v2, which is not compatible with code written for pydantic v1. Make sure all your Pydantic-based code is version 2-compliant.


Option 2 — Full Developer Installation

Use this if: You plan to contribute to FLYNC, modify the SDK, or run tests and linters.

What it installs: Runtime + development + testing + documentation + static analysis tools.

# You should have forked the repo on github first.
# Let's assume it is at github.com:insert-your-name-here/FLYNC

git clone git@github.com:insert-your-name-here/FLYNC.git
cd flync-library
poetry install --with dev,test,docs,static-analysis

Optional but recommended:

poetry run pre-commit install

Option 3 — Documentation-Only Environment

Use this if: You only want to build or edit the documentation.

What it installs: FLYNC + Sphinx + themes + diagram and documentation tooling.

git clone https://github.com/Technica-Engineering/FLYNC.git
cd flync-library
poetry install --with docs

Build docs — Linux and macOS users:

cd docs
make html

Build docs — Windows users:

cd docs
make.bat html

Option 4 — Testing Environment

Use this if: You only want to run the test suite.

What it installs: FLYNC + pytest + coverage tools.

git clone https://github.com/Technica-Engineering/FLYNC.git
cd flync-library
poetry install --with test

Run tests:

pytest

Python Compatibility

Important

flync requires Python 3.11+ due to newer typing features and package requirements.

If you have multiple Python versions, use python3.11 or create a virtual environment with:

For Linux and macOSx

python3.11 -m venv .venv
source .venv/bin/activate

For Windows

python -m venv .venv
.\.venv\Scripts\Activate.ps1

Happy coding! For issues, contributions, or questions, reach out to the authors listed in the project metadata.