Skip to main content

apiplant_core/
lib.rs

1//! # apiplant-core
2//!
3//! Configuration, error handling, and the declarative resource model that the
4//! rest of apiplant is built on. This crate has no async, no database and no
5//! HTTP — it only knows how to turn an *app directory* on disk into typed
6//! [`App`] data other crates act on.
7
8pub mod agent;
9pub mod app;
10pub mod config;
11pub mod defaults;
12pub mod env;
13pub mod error;
14pub mod schema;
15
16pub use agent::{Agent, AgentAiOverride, AgentMeta, AgentPermissions, AgentStorage, AgentTool};
17pub use app::{App, TlsPaths};
18pub use config::{
19    AiConfig, CacheConfig, Config, EmailConfig, PaymentsConfig, QueuesConfig, SmtpConfig,
20    StorageConfig,
21};
22pub use env::{expand_document, parse_toml};
23pub use error::{Error, Result};
24pub use schema::{
25    relation_name, Access, AuthEvent, Field, FieldType, HookEvent, Hooks, OnDelete, Permissions,
26    Publishes, Reference, Resource, Scope,
27};