You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add a Using the library section to README and list the ESP-IDF build's dependencies in NOTICES.md #40
README has no snippet showing start, a listener, open_input() and a write loop, and no CMake consumption snippet; the only example is the 2.5k-line server_cli. NOTICES.md omits the ESP-IDF build's dependencies (the esphome/noise-c component, libsodium, esp-dsp, mbedTLS) and gives no upstream URL for micro-resampler.
README.md has 111 lines and no code snippet showing start/provider/listener/open_input plus a write loop, and no CMake consumption (add_subdirectory or FetchContent) snippet. The only build commands are for the library's own build, at lines 28-46.
ESP-IDF gets one line (README.md:46): 'The library also builds as an ESP-IDF component (cmake/esp_idf.cmake).'
Line counts match. examples/server_cli totals 7474 lines, main.cpp has 2496, web_assets/dashboard.html has 738, and run() starts at line 1987 and runs to the end of the file, about 500 lines.
NOTICES.md omits the ESP build's dependencies. cmake/esp_idf.cmake:7-15 requires esphome__noise-c, esphome__libsodium, espressif__esp-dsp and mbedtls, and NOTICES.md lists libsodium, esp-dsp and mbedTLS nowhere. noise-c is listed only as the host's fetched esphome-libs fork, with no note on the ESP component.
NOTICES.md's micro-resampler entry has no upstream URL. It gives Location, Version, License and Copyright, whereas the stb entry has a 'Source:' URL. third_party/micro-resampler/VENDORED.md has none either.
Checked and not part of this issue
docs/conventions.md:66 says server_cli 'uses only the public API' and that is true. Every sendspin include in examples/server_cli is <sendspin/server/{server,config,types,discovery}.h>, and none reaches into src/. Linking sendspin_server_cpp_beast (examples/CMakeLists.txt:30) is for server_cli's own --web dashboard (web_ui.cpp on Beast, per the comment at lines 28-29). It is a third-party dependency of the example, not a use of a non-public library API. The convention is not misleading, so this sub-claim should be dropped.
'Relies on the archive's Asio definitions' is a build-linkage detail. The beast target is an INTERFACE target carrying the compile definitions (cmake/dependencies.cmake:34-45) that any consumer including Beast needs. It is not an API-boundary violation.
The 'a first user must read 2.5k lines' framing is overstated. include/sendspin/server/server.h carries the threading contract and doc comments, and README.md:66-108 documents server_cli's commands and options. A snippet would still help, but the header docs are a partial substitute.
Direction
Add the section with both snippets, and complete NOTICES.md.
Done when
README shows the minimal use; NOTICES.md lists every ESP-IDF dependency.
Activity
kahrendt commentedon Oct 15, 2026
Claimed 6bd991cb; branch issue-40-readme-notices
kahrendt commentedon Oct 15, 2026
Draft PR: #90
Show how to use the library in README and list the ESP-IDF build's de…