1pub mod app;
45pub mod auth;
46pub mod banner;
47pub mod cache;
48pub mod checks;
49pub mod cli;
50pub mod commands;
51pub mod config;
52pub mod discovery;
53pub mod domain;
54pub mod errors;
55pub mod git;
56pub mod infra;
57pub mod operations;
58pub mod output;
59pub mod provider;
60#[cfg(feature = "tui")]
61pub mod setup;
62#[cfg(feature = "tui")]
63pub mod tui;
64pub mod types;
65pub mod workflows;
66
67pub mod prelude {
69 pub use crate::auth::{get_auth, get_auth_for_provider, AuthResult};
70 pub use crate::cache::{CacheManager, DiscoveryCache, CACHE_VERSION};
71 pub use crate::cli::{Cli, Command, InitArgs, ResetArgs, StatusArgs, SyncCmdArgs};
72 pub use crate::config::{
73 Config, ConfigCloneOptions, FilterOptions, SyncMode as ConfigSyncMode, WorkspaceConfig,
74 WorkspaceProvider,
75 };
76 pub use crate::discovery::DiscoveryOrchestrator;
77 pub use crate::domain::RepoPathTemplate;
78 pub use crate::errors::{AppError, GitError, ProviderError, Result};
79 pub use crate::git::{
80 CloneOptions, FetchResult, GitOperations, PullResult, RepoStatus, ShellGit,
81 };
82 pub use crate::operations::clone::{
83 CloneManager, CloneManagerOptions, CloneProgress, CloneResult,
84 };
85 pub use crate::operations::sync::{
86 LocalRepo, SyncManager, SyncManagerOptions, SyncMode, SyncResult,
87 };
88 pub use crate::output::{
89 CloneProgressBar, DiscoveryProgressBar, Output, SyncProgressBar, Verbosity,
90 };
91 pub use crate::provider::{
92 create_provider, Credentials, DiscoveryOptions, DiscoveryProgress, NoProgress, Provider,
93 RateLimitInfo,
94 };
95 pub use crate::types::{ActionPlan, OpResult, OpSummary, Org, OwnedRepo, ProviderKind, Repo};
96}
97
98#[cfg(test)]
99#[path = "lib_tests.rs"]
100mod tests;