1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
//! WiseGate - A wise guardian for your network gates
//!
//! An efficient, secure reverse proxy with built-in rate limiting and IP filtering.
//!
//! # Overview
//!
//! WiseGate is a high-performance reverse proxy written in Rust that provides:
//! - Rate limiting with sliding window algorithm
//! - IP filtering and blocking
//! - HTTP method and URL pattern filtering
//! - Trusted proxy validation (RFC 7239 compliant)
//! - Structured logging with JSON support
//!
//! # Example
//!
//! ```rust,no_run
//! use wisegate::{config, RateLimiter};
//!
//! // Get configuration from environment
//! let rate_config = config::get_rate_limit_config();
//! let proxy_config = config::get_proxy_config();
//!
//! // Create a rate limiter
//! let limiter = RateLimiter::new();
//! ```
//!
//! # Modules
//!
//! - [`config`] - Configuration management from environment variables
//! - [`env_vars`] - Environment variable constants
//! - [`server`] - Server utilities and startup info
//! - [`args`] - Command line argument parsing
//!
//! # Re-exports from wisegate-core
//!
//! Core functionality is provided by the `wisegate-core` crate:
//! - [`ip_filter`] - IP validation, extraction, and filtering
//! - [`rate_limiter`] - Rate limiting implementation
//! - [`request_handler`] - HTTP request processing and forwarding
// Re-export wisegate-core modules
pub use ip_filter;
pub use rate_limiter;
pub use request_handler;
pub use types;
// Re-export commonly used items at crate root
pub use ;
pub use ;