git_pincer/lib.rs
1//! git-pincer: a Git conflict-resolution tool that lives in your terminal.
2//!
3//! Provides an IDEA-style three-pane conflict resolution TUI (local | result | remote),
4//! and can also launch `merge / rebase / pull / cherry-pick / revert` directly,
5//! taking over the whole conflict-resolution flow that follows.
6//!
7//! # Stability
8//!
9//! The product of this crate is the `git-pincer` **CLI**; semantic versioning
10//! applies to the command-line interface and its behavior. The library
11//! modules below are exposed for internal organization and testing — their
12//! APIs may change between minor versions without notice.
13//!
14//! Module overview:
15//! - [`merge`][] — diff3 three-way merge core and conflict-marker parsing (pure logic, ported from toolkit-rs)
16//! - [`git`][] — thin wrapper around the native git CLI (shell out; inherits all user config)
17//! - [`i18n`][] — runtime language detection and message catalogs (locales/*.conf)
18//! - [`config`][] — user configuration file (theme / key bindings / CLI-option defaults)
19//! - [`app`][] — state machine of a conflict-resolution session (pure logic, terminal-free)
20//! - [`ui`][] — ratatui three-pane rendering and the key-event loop
21//! - [`cli`][] / [`commands`][] — clap subcommand definitions and orchestration
22
23pub mod app;
24pub mod cli;
25pub mod commands;
26pub mod config;
27pub mod git;
28pub mod i18n;
29pub mod merge;
30pub mod ui;