diff --git a/README.md b/README.md index 25a9393..66a9925 100644 --- a/README.md +++ b/README.md @@ -1,43 +1,47 @@ # Discordgo -Discord API for Golang +A Discord API for Golang -This is my first Golang project and it is ~~probably~~ ~~not~~ ~~maybe even~~ -barely suitable for use :) +Discordgo provides an almost complete low-level Golang interface to the Discord +REST and Websocket API layers. The majority of both of these interfaces are +complete and I should have the remaining functions finished soon. -Everything here so far is likely to change as I learn Golang better and refine -the API names and such. Because of that I do not yet recommend this for use -with anything super important :) +At this point Discordgo is suitable for use with most projects including bots +or clients. The function naming conventions and usage style should not change +in the future. Function names are based primarily on the naming used by Discord +within their API calls. Should Discord change their naming then Discordgo will +be updated to match it. -Initially my goal was to write a chatbot and I started working with -https://github.com/Xackery/discord as my API. But that code didn't work 100% -at the time. So I started slowly making changes to it and eventually ended up -with something entirely different. Anyhow, credit goes to -https://github.com/Xackery/discord for getting me started. +Special thanks goes to both the below projects who helped me get started with +this project. If you're looking for alternative Golang interfaces to Discord +please check both of these out. -If you're looking for a more functional Discord API for Golang check out -https://github.com/gdraynz/go-discord which I recently found. It's much more -complete and will likely help me learn how to improve what I have here. +* https://github.com/gdraynz/go-discord +* https://github.com/Xackery/discord # What Works -Low level functions exist for the core REST API and Websocket API. +Low level functions exist for the majority of the REST and Websocket API. -* Login to Discord -* Get User information for a given user. -* Get Private Channels (used for Private Messages) for a given user. -* Get Servers for a given user. -* Get Members of a given Server -* Get Channels for a given Server -* Get Messages for a given Channel -* Send Messages to a given Channel -* Start a Websocket connection and listen for and handle events. -* Logout from Discord. +* Login/Logout +* Open/Close Websocket and listen for events. +* Accept/Create/Delete Invites +* Get User details (Name, ID, Settings, etc) +* List/Create User Channels (Private Message Channels) +* List/Create Guilds +* List/Create Guild Channels +* List Guild Members +* Receive/Send Messages to Channels +# What's Left + +* Permissions related functions. +* Editing User Profile settings +* Voice Channel support. +* Functions for Maintenance Status # Other Discord APIs -- [go-discord](https://github.com/gdraynz/go-discord) -- [discord-go](https://github.com/Xackery/discord) + - [discord.py](https://github.com/Rapptz/discord.py) - [discord.js](https://github.com/discord-js/discord.js) - [discord.io](https://github.com/izy521/discord.io)