Environment 
Mantis provides type-safe environment variable handling through its env module.
Basic Usage 
Create a new environment instance by loading a .env file:
v
module main
import khalyomede.mantis.env { Env }
fn main() {
  mut environment := Env{
    file: $embed_file('.env')  // Embeds the file at compile time
  }
  app_name := environment.get('APP_NAME') or { 'My App' }
  println(app_name)
}Loading Environment Files 
The environment file follows the standard format:
dotenv
APP_NAME="My Application"
DB_HOST=localhost
DB_PORT=5432
# Comments are supported
AUTH_ENABLED=trueReading Values 
Use the get() method to read values. It returns an Option type, allowing safe handling of missing values:
v
module main
import khalyomede.mantis.env { Env }
fn main() {
  mut environment := Env{
    file: $embed_file('.env')
  }
  // Provide a default value if the key doesn't exist
  db_host := environment.get('DB_HOST') or { 'localhost' }
  // Handle missing values explicitly
  if port := environment.get('DB_PORT') {
    println('Port configured: ${port}')
  } else {
    println('No port configured')
  }
}Caching 
For performance, Mantis automatically caches environment values after the first read. This means subsequent reads of the same key are retrieved from memory rather than parsing the file again:
v
module main
import khalyomede.mantis.env { Env }
fn main() {
  mut environment := Env{
    file: $embed_file('.env')
  }
  // First read parses the file
  app_name := environment.get('APP_NAME') or { '' }
  // Second read uses cached value
  name := environment.get('APP_NAME') or { '' }
}