Login
Changes To home
Login

Changes to "home" between 2022-02-21 13:43:52 and 2022-03-24 00:13:26

1

2
3
4
5
6
7
8
9

10
11
12
13
14
15
16

1
2
3
4
5
6
7
8

9
10
11
12
13
14
15
16
-
+







-
+







# libfossil: Fossil SCM Library API
# libfossil: The (Unofficial) Fossil SCM Library API

(If you are reading this via [fossil-scm.org](https://fossil-scm.org/), be aware that that's a read-only mirror. The canonical home is [](https://fossil.wanderinghorse.net/r/libfossil).)

See also: [](TODOs), [](download), [](building), [f-apps][],
[DB functions](/doc/ckout/doc/db-udf.md), [](SQLSnippets), [](HackersGuide),
[doxygen docs][doxygen-docs] (refreshed from current sources relatively frequently)

This source code repository houses an in-development C99-compliant library API for the [Fossil SCM][home-fossil]. The primary goal is to port existing behaviour into a library form (the fossil app is extremely monolithic in nature). This effort, officially called "libfossil", intends to provide an alternative interface into fossil repositories, as opposed to a replacement for the core fossil application. It does not aim to provide 100% feature-parity with the main app - see [](TODOs) for details about features which are considered out of scope or otherwise unlikely. It's instead intended to enhance one's ability to access and manipulate fossil repositories. The [f-apps][] page demonstrates what features are currently ported over.
This source code repository houses an in-development C99-compliant library API for the [Fossil SCM][home-fossil]. The primary goal of this project (which is not part of the main Fossil SCM project) is to port existing behaviour into a library form (the fossil app is extremely monolithic in nature). This effort intends to provide an alternative interface into fossil repositories, as opposed to a replacement for the core fossil application. It does not aim to provide 100% feature-parity with the main app - see [](TODOs) for details about features which are considered out of scope or otherwise unlikely. It's instead intended to support the creation of new ways to access and manipulate fossil repositories. The [f-apps][] page demonstrates what features are currently ported over.

The library has reached feature parity with Fossil's core-most SCM features, and can already be used to create a wide range of custom mini-applications, e.g. custom reporting apps or custom timeline apps are trivial to create using the "fcli" API: see the [f-apps][] for numerous examples.

**[The fnc project][fnc] offers an ncurses-based front-end to browsing fossil repositories**, powered by libfossil. fnc is developed closely with this project and a copy of fnc is included in this source tree (and vice versa: the [libfossil amalgamation](AmalgamationBuild) is included in that tree), but that remote one is the canonical version.

**License:** same as Fossil: the "2-Clause BSD" a.k.a. "FreeBSD License".