https://github.com/disgoorg/godave
Go Binding for libdave
https://github.com/disgoorg/godave
dave discord-dave e2ee go golang
Last synced: 5 months ago
JSON representation
Go Binding for libdave
- Host: GitHub
- URL: https://github.com/disgoorg/godave
- Owner: disgoorg
- License: apache-2.0
- Created: 2025-12-31T12:33:47.000Z (6 months ago)
- Default Branch: master
- Last Pushed: 2026-01-03T14:16:12.000Z (6 months ago)
- Last Synced: 2026-01-06T19:23:01.896Z (6 months ago)
- Topics: dave, discord-dave, e2ee, go, golang
- Language: Go
- Homepage:
- Size: 67.4 KB
- Stars: 6
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://pkg.go.dev/github.com/disgoorg/godave)
[](https://goreportcard.com/report/github.com/disgoorg/godave)
[](https://golang.org/doc/devel/release.html)
[](LICENSE)
[](https://github.com/disgoorg/godave/releases/latest)
[](https://discord.gg/TewhTfDpvW)

# GoDave
GoDave is a library that provides Go bindings for [libdave](https://github.com/discord/libdave) and provides a generic DAVE interface allowing for different implementations in the future.
## Summary
1. [Libdave Installation](#libdave-installation)
2. [Installation Script (Recommended)](#installation-script-recommended)
3. [Manual Build](#manual-build)
4. [Example Usage](#example-usage)
5. [License](#license)
## Libdave Installation
This library uses CGO and dynamic linking to use libdave. As such, it needs to be installed in the system beforehand
to build this library.
> [!NOTE]
> Due to the nature of this project, it might be necessary to re-install libdave when updating to a new GoDave version.
>
> Versions requiring this will be denoted with a bump in the major version (for reference: major.minor.patch).
### Installation Script (Recommended)
We provide helpful scripts in [scripts/](https://github.com/disgoorg/godave/tree/master/scripts) to simplify installing
a compatible libdave version. Grab whichever one is applicable to your OS (`.sh` for Linux and MacOS; `ps1` for
Windows PowerShell) and (after auditing its contents) run it and follow any instructions it might output.
Once that step is complete, you can continue with the installation of GoDave.
### Manual Build
For a manual build, please clone https://github.com/discord/libdave and use revision
`74979cb33febf4ddef0c2b66e57520b339550c17`.
> [!NOTE]
> We provide no guarantees for this version of GoDave to run for other revisions other than that the one mentioned above.
>
> As the library evolves and new versions of libdave are released, the above revision will be updated to match the
> GoDave version
Once checked out, please follow the
[build instructions](https://github.com/discord/libdave/tree/74979cb33febf4ddef0c2b66e57520b339550c17/cpp#building) and
setup the appropriate `pkg-config` file and configuration to allow for discovery at compilation time.
## Example Usage
For an example of how to use GoDave, please see [here](https://github.com/disgoorg/disgo/tree/feature/dave/_examples/voice)
## License
Distributed under the [](LICENSE). See LICENSE for more information.