Skip to main content

bee_rust/
lib.rs

1// Copyright (c) 2026 erik <erik@erik.xyz> — https://erik.xyz
2#[cfg(feature = "cache")]
3pub use bee_cache;
4#[cfg(feature = "config")]
5pub use bee_config;
6#[cfg(feature = "graph")]
7pub use bee_graph;
8#[cfg(feature = "kv")]
9pub use bee_kv;
10#[cfg(feature = "logs")]
11pub use bee_logs;
12#[cfg(feature = "orm")]
13pub use bee_orm;
14#[cfg(feature = "router")]
15pub use bee_router;
16#[cfg(feature = "search")]
17pub use bee_search;
18#[cfg(feature = "session")]
19pub use bee_session;
20#[cfg(feature = "template")]
21pub use bee_template;
22#[cfg(feature = "tsdb")]
23pub use bee_tsdb;
24
25pub mod prelude {
26    #[cfg(feature = "cache")]
27    pub use bee_cache::Cache;
28    #[cfg(feature = "config")]
29    pub use bee_config::{Config, ConfigSource};
30    #[cfg(feature = "logs")]
31    pub use bee_logs::{Logger, Output};
32    #[cfg(feature = "orm")]
33    pub use bee_orm::Model;
34    #[cfg(feature = "security")]
35    pub use bee_router::SecurityFilter;
36    #[cfg(feature = "router")]
37    pub use bee_router::{Context, Controller, Filter, Router};
38    #[cfg(feature = "session")]
39    pub use bee_session::Session;
40    #[cfg(feature = "template")]
41    pub use bee_template::context;
42}
43
44pub type Result<T> = std::result::Result<T, Box<dyn std::error::Error>>;
45
46/// One-click startup: initializes the logger and returns a handle.
47///
48/// Keep the returned `LogHandle` alive for the program lifetime.
49///
50/// Available only with the `logs` feature (included in the default `full`
51/// feature set).
52#[cfg(feature = "logs")]
53pub fn init() -> Result<bee_logs::LogHandle> {
54    bee_logs::Logger::new().init()
55}