Welcome to the Barracuda App Server (BAS) and the Barracuda Embedded Web Server (BWS) reference manual.
BAS and BWS are C code libraries designed for seamless OEM integration, making them ideal components for embedded applications, including firmware.
Note: To sync the left pane navigator with the content you're viewing, click the Sync button (
) at the top of the navigator after following links within the documentation.
With BWS, application development is primarily done in C or C++. With BAS, you have the option to leverage the built-in Lua engine and move application-level logic into a higher-level language. This allows you to separate low-level, performance-critical code from higher-level behavior, configuration, and integration logic, setting the stage for a more flexible and productive development workflow.
Lua is battle-tested in professional systems such as game engines, industrial automation, and networking. The consensus among developers? It's ideal for application logic (aka business logic), orchestration, and customization, pairing seamlessly with stricter languages like C, C++, or Rust for core performance and safety. Successful products thrive on this hybrid: Lua handles high-level behaviors, including (IoT) networking, while low-level code ensures performance.
This split is a smart evolution for embedded system development. Lua scripts handle high-level tasks such as configuration, web interfaces, MQTT integrations, and other IoT protocols, as well as custom embedded business logic. Benefits include rapid prototyping (days vs. weeks in C), cost savings, and accessibility for non-C experts.
Lua’s flexibility is a strength, and with a small amount of discipline it leads to robust, maintainable systems:
The Barracuda App Server includes an AGENTS.md file that can be used with AI tools like Codex to accelerate learning and prototyping. The AGENTS.md file provides project-specific guidance, directing the AI to use the official BAS documentation and follow correct APIs and design patterns. This makes the AI produce code that is more consistent with the Barracuda architecture instead of generic AI solutions. The AGENTS.md file is not required, but when used, it significantly improves the relevance and correctness of AI-generated code.
Supplier: Real Time Logic
Included Software Components
Supplier: Real Time Logic
Included Software Components
Optional Components (Not included by default; availability depends on configuration and deployment)
Notes