BCUtils (bc_utils v0.10.0)

BCUtils (BEAM Campus Utilities) - A comprehensive collection of utilities for Elixir projects.

This library provides a set of commonly needed utilities for BEAM applications:

Modules

Display & Formatting

Data Manipulation

System & Infrastructure

Quick Start

Add to your mix.exs:

def deps do
  [
    {:bc_utils, "~> 0.10.0"}
  ]
end

Common Usage Patterns

Display a startup banner:

BCUtils.Banner.display_banner(
  "My Service",
  "A great Elixir application", 
  "🚀 Powered by BEAM Campus"
)

Manage bit flags:

# Define your flags
flags = %{
  1 => "Ready",
  2 => "Processing", 
  4 => "Complete"
}

# Set flags
state = BCUtils.BitFlags.set(0, 1)  # Set "Ready"
state = BCUtils.BitFlags.set(state, 4)  # Add "Complete"

# Check state
BCUtils.BitFlags.to_string(state, flags)  # "Ready, Complete"

Manage PubSub gracefully:

# In your supervision tree
children = [
  BCUtils.PubSubManager.maybe_child_spec(:my_pubsub),
  # other children...
]
|> Enum.filter(& &1)  # Remove nil entries

@doc""" Returns the current version of BCUtils.

Summary

Functions

Lists all available modules in BCUtils.

Functions

modules()

@spec modules() :: [module()]

Lists all available modules in BCUtils.

version()

@spec version() :: String.t()