Skip to content

EclipseMenu/discord-presence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Discord RPC

A simple Discord Rich Presence library for C++ made from scratch.

Note: Project is still in development. Please report any issues you find.

Checklist:

  • Handshake
  • Update presence with custom data
  • Buttons support
  • Linux support
  • MacOS support
  • Windows support
  • Out-of-the-box Wine support
  • Events (join, spectate, etc.)
  • Auto register (for steam games)
  • Documentation
  • Examples

What's new?

In spite of the deprecation of the original library, many people still want to use it. This library is a complete rewrite of the original library that uses a modern C++ style and has more features.

Features

  • Modern C++: This library is written in C++23 and follows builder patterns as much as possible.
  • Buttons: Undocumented/unimplemented feature in discord, that allows you to add custom links to your presence.
  • Project integration: Say goodbye to copying library files or dealing with RapidJSON errors. This library can be easily integrated into your project without any hassle.
  • Cross-platform: This library is designed to work on all supported platforms, including Linux, macOS, and Windows.
  • Wine support: Library provides internal layer to support Wine, no extra configuration needed.

Prerequisites

  • CMake: This project uses CMake to build the library. Make sure you have CMake installed on your system.
  • C++23: Required for Glaze, a fast JSON library used in this project.
  • Discord Developer Portal: You need to create an application on the Discord Developer Portal to use this library. You can create an application here.

Credits

  • Discord: For creating the original library.
  • Glaze: JSON library
  • fmtlib: Formatting library

License

This project is licensed under the MIT License. See the LICENSE.md file for details.