Skip to content

Build a real public API and installable package surface #13

Description

@audexdev

Summary

The repository has include/lac/lac.hpp and include/lac/version.hpp, but they are currently empty. Consumers must include headers from src/, which makes internal implementation files the de facto public API.

Affected areas

  • include/lac/lac.hpp
  • include/lac/version.hpp
  • CMakeLists.txt
  • README usage examples

Work items

  • Define the intended public API surface.
  • Export stable encoder/decoder entry points from include/lac/lac.hpp.
  • Add version constants or macros to include/lac/version.hpp.
  • Avoid requiring consumers to include src/ headers directly.
  • Add CMake install/export rules and package config if the library is meant to be consumed externally.

Acceptance criteria

  • A small external example can include only public headers and link against lac.
  • Public headers document ownership, error behavior, supported formats, and experimental status.
  • CMake exposes a coherent installable target or clearly documents that install support is not yet available.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiPublic API, packaging, and consumer-facing interfacesdocumentationImprovements or additions to documentationenhancementNew feature or request

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions