Automatic dependency-resolving build tool for modern Fortran projects — no makefiles, no boilerplate. Package manger highly integrated with GitHub, install and fetch project dependencies. Add instrospective doctests to your Fortran project and exploit AI-powered programmatic buildings with the provided AI skill.
| ⚡ Zero-configuration builds Drop FoBiS into any Fortran project and run fobis build. It scans sources, resolves all use, include, and module dependencies automatically, and compiles in the correct order — no makefiles, no boilerplate. Quick start |
📄 fobos — the FoBiS makefile A concise INI-style configuration file replaces makefiles entirely. Define multiple build modes, templates, variables, and custom rules — all in one readable file. fobos reference |
| 🌐 GitHub integration Declare dependencies in a [dependencies] fobos section — fobis fetch clones, pins to branch/tag/rev, and pre-builds them; fobis build picks them up automatically. Install any GitHub-hosted FoBiS project directly with fobis install user/repo. Fetch deps · GitHub install |
🔬 Introspective doctests Embed micro-unit-tests directly inside Fortran comment docstrings. FoBiS generates, compiles, and runs volatile test programs automatically — inspired by Python's doctest module, no test harness needed. Doctests |
| 🤖 JSON output & Claude Code skill Pass --json to fobis build, fobis clean, or fobis fetch for machine-readable structured output — ideal for CI and AI agent workflows. Install the bundled /fobis Claude Code skill for expert AI assistance right in your editor. JSON output · Claude skill |
🆓 Free and open source Released under the GNU GPL v3 license. Free to use, study, modify, and distribute. Contributions welcome — see the contributing guidelines |
Modern Fortran's module system is powerful — but tracking inter-module compilation order by hand in a makefile quickly becomes a nightmare as project size grows. Every time you add a module, rename a file, or restructure directories, the makefile needs manual updates.
FoBiS solves this completely. It parses source files on every invocation, rebuilds the dependency graph from scratch, and compiles in the correct order — with no configuration required for simple projects.
# That's it. FoBiS finds all programs, resolves all dependencies, compiles.
fobis buildFor complex projects, a single fobos file in the project root replaces makefiles entirely:
[modes]
modes = debug release
[debug]
compiler = gnu
cflags = -c -O0 -g -Wall
build_dir = ./build/debug/
[release]
compiler = gnu
cflags = -c -O3
build_dir = ./build/release/fobis build -mode release| zero-configuration build | simplify complex dependency |
|---|---|
![]() |
![]() |
| GH integration, project install | GH integration, dependancies fetch |
![]() |
![]() |
Projects using FoBiS:
- ADAM — Accelerated fluid Dynamics on Adaptive Mesh refinement grids | GitHub
- BeFoR64 — Base64 encoding/decoding library for Fortran | GitHub
- FACE — Fortran ANSI Colors and Escape sequences | GitHub
- FiNeR — Fortran INI ParseR and generator | GitHub
- FLAP — Fortran command Line Arguments Parser | GitHub
- FUNDAL — Fortran UNified Device Acceleration Library | GitHub
- FOSSIL — FOrtran Stereo (si) Litography parser | GitHub
- MORTIF — MORTon Indexer (Z-order) Fortran environment | GitHub
- MOTIOn — Modular (HPC) Optimized Toolkit (for) IO (in fortra)n | GitHub
- PENF — Portability Environment for Fortran | GitHub
- StringiFor — Strings Fortran Manipulator with steroids | GitHub
- VecFor — Vector algebra class for Fortran | GitHub
- VTKFortran — pure Fortran VTK (XML) API | GitHub
Stefano Zaghi — stefano.zaghi@gmail.com · GitHub
FoBiS is an open source project distributed under the GPL v3 license. Anyone interested in using, developing, or contributing to FoBiS is welcome — see the contributing guidelines.



