forked from OpenGamers/abaddon
update readme + screenshot
This commit is contained in:
parent
35473b3baf
commit
f35dea89f9
BIN
.readme/s3.png
BIN
.readme/s3.png
Binary file not shown.
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 321 KiB |
89
README.md
89
README.md
@ -1,16 +1,28 @@
|
|||||||
#### Screenshots
|
### Abaddon
|
||||||
<table>
|
---
|
||||||
<tr>
|
Alternative Discord client made in C++ with GTK
|
||||||
<td><img src="/.readme/s1.png"></td>
|
|
||||||
<td><img src="/.readme/s2.png"></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><img src="/.readme/s3.png"></td>
|
|
||||||
<td><img src="/.readme/s4.png"></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
### Building:
|
<img src="/.readme/s3.png">
|
||||||
|
|
||||||
|
Current features:
|
||||||
|
* Not Electron
|
||||||
|
* Handles most types of chat messages including embeds, images, and replies
|
||||||
|
* Completely styleable/customizable with CSS (if you have a system GTK theme it won't really use it though)
|
||||||
|
* Identifies to gateway as the web client unlike other clients so less likely to be falsely flagged as spam<sup>1</sup>
|
||||||
|
* Set status
|
||||||
|
* Start new DMs and group DMs
|
||||||
|
* View user profiles (notes, mutual servers, mutual friends)
|
||||||
|
* Kick, ban, and unban members
|
||||||
|
* Modify roles and modify members' roles
|
||||||
|
* Manage invites
|
||||||
|
* View audit log
|
||||||
|
* Emojis<sup>2</sup>
|
||||||
|
* Animated avatars, server icons, emojis (can be turned off)
|
||||||
|
|
||||||
|
1 - Other third-party clients send the IDENTIFY message that bots use which makes Discord more likely to think you are selfbotting or spamming. However, Discord still loves to ban people's accounts for no good reason, even users of the official clients. If you want to be really careful avoid joining servers really fast or cold DMing people.
|
||||||
|
2 - Getting emojis to function properly on GTK is still something I've yet to figure out ([#5](../../issues/5)). Unicode emojis are manually searched for and replaced in several places as opposed to allowing GTK to figure it out since GTK's way of doing it doesn't work very well.
|
||||||
|
|
||||||
|
### Building manually (recommended if not on Windows):
|
||||||
#### Windows:
|
#### Windows:
|
||||||
1. `git clone https://github.com/uowuo/abaddon && cd abaddon`
|
1. `git clone https://github.com/uowuo/abaddon && cd abaddon`
|
||||||
2. `vcpkg install gtkmm:x64-windows nlohmann-json:x64-windows ixwebsocket:x64-windows zlib:x64-windows simpleini:x64-windows sqlite3:x64-windows openssl:x64-windows curl:x64-windows`
|
2. `vcpkg install gtkmm:x64-windows nlohmann-json:x64-windows ixwebsocket:x64-windows zlib:x64-windows simpleini:x64-windows sqlite3:x64-windows openssl:x64-windows curl:x64-windows`
|
||||||
@ -39,7 +51,7 @@ Or, do steps 1 and 2, and open CMakeLists.txt in Visual Studio if `vcpkg integra
|
|||||||
- MacOS: [here](https://nightly.link/uowuo/abaddon/workflows/ci/master/build-macos-RelWithDebInfo.zip) unsigned, unpackaged, requires gtkmm3 (e.g. from homebrew)
|
- MacOS: [here](https://nightly.link/uowuo/abaddon/workflows/ci/master/build-macos-RelWithDebInfo.zip) unsigned, unpackaged, requires gtkmm3 (e.g. from homebrew)
|
||||||
- Linux: [here](https://nightly.link/uowuo/abaddon/workflows/ci/master/build-linux-MinSizeRel.zip) unpackaged (for now), requires gtkmm3. built on Ubuntu 18.04 + gcc9
|
- Linux: [here](https://nightly.link/uowuo/abaddon/workflows/ci/master/build-linux-MinSizeRel.zip) unpackaged (for now), requires gtkmm3. built on Ubuntu 18.04 + gcc9
|
||||||
|
|
||||||
Make sure you start from the directory where `css` and `res` are
|
⚠️ Make sure you start from the directory where `css` and `res` are or else stuff will be broken
|
||||||
|
|
||||||
#### Dependencies:
|
#### Dependencies:
|
||||||
* [gtkmm](https://www.gtkmm.org/en/)
|
* [gtkmm](https://www.gtkmm.org/en/)
|
||||||
@ -53,29 +65,35 @@ Make sure you start from the directory where `css` and `res` are
|
|||||||
### TODO:
|
### TODO:
|
||||||
* Voice support
|
* Voice support
|
||||||
* Unread indicators
|
* Unread indicators
|
||||||
* User status
|
* User activities
|
||||||
* Nicknames
|
* Nicknames
|
||||||
* Server/user management
|
* More server management stuff
|
||||||
|
* Manage friends
|
||||||
* A bunch of other stuff
|
* A bunch of other stuff
|
||||||
|
|
||||||
### Styling
|
### Styling
|
||||||
#### CSS selectors
|
#### CSS selectors
|
||||||
|
.app-window - Applied to all windows. This means the main window and all popups
|
||||||
|
.app-popup - Additional class for `.app-window`s when the window is not the main window
|
||||||
|
|
||||||
.channel-list - Container of the channel list
|
.channel-list - Container of the channel list
|
||||||
.channel-row - All rows within the channel container
|
.channel-row - All rows within the channel container
|
||||||
.channel-row-channel - Only rows containing a channel
|
.channel-row-channel - Only rows containing a channel
|
||||||
.channel-row-category - Only rows containing a category
|
.channel-row-category - Only rows containing a category
|
||||||
.channel-row-guild - Only rows containing a guild
|
.channel-row-guild - Only rows containing a guild
|
||||||
.channel-row-label - All labels within the channel container
|
.channel-row-label - All labels within the channel container
|
||||||
.nsfw - Applied to channel row label's and their container for NSFW channels
|
.nsfw - Applied to channel row labels and their container for NSFW channels
|
||||||
|
|
||||||
.messages - Container of user messages
|
.messages - Container of user messages
|
||||||
.message-container - The container which holds a user's messages
|
.message-container - The container which holds a user's messages
|
||||||
.message-container-author - The author label for a message container
|
.message-container-author - The author label for a message container
|
||||||
.message-container-timestamp - The timestamp label for a message container
|
.message-container-timestamp - The timestamp label for a message container
|
||||||
|
.message-container-avatar - Avatar for a user in a message
|
||||||
.message-container-extra - Label containing BOT/Webhook
|
.message-container-extra - Label containing BOT/Webhook
|
||||||
.message-text - The text of a user message
|
.message-text - The text of a user message
|
||||||
.message-attachment-box - Contains attachment info
|
.message-attachment-box - Contains attachment info
|
||||||
.message-reply - Container for the replied-to message in a reply (these elements will also have .message-text set)
|
.message-reply - Container for the replied-to message in a reply (these elements will also have .message-text set)
|
||||||
|
.message-input - Applied to the chat input container
|
||||||
.reaction-box - Contains a reaction image and the count
|
.reaction-box - Contains a reaction image and the count
|
||||||
.reacted - Additional class for reaction-box when the user has reacted with a particular reaction
|
.reacted - Additional class for reaction-box when the user has reacted with a particular reaction
|
||||||
.reaction-count - Contains the count for reaction
|
.reaction-count - Contains the count for reaction
|
||||||
@ -106,9 +124,48 @@ Make sure you start from the directory where `css` and `res` are
|
|||||||
.dnd - Applied to status indicators when the associated user is on do not disturb
|
.dnd - Applied to status indicators when the associated user is on do not disturb
|
||||||
.offline - Applied to status indicators when the associated user is offline
|
.offline - Applied to status indicators when the associated user is offline
|
||||||
|
|
||||||
|
.typing-indicator - The typing indicator
|
||||||
|
|
||||||
|
Used in reorderable list implementation:
|
||||||
|
.drag-icon
|
||||||
|
.drag-hover-top
|
||||||
|
.drag-hover-bottom
|
||||||
|
|
||||||
|
Used in guild settings popup:
|
||||||
|
.guild-settings-window
|
||||||
|
.guild-members-pane-list - Container for list of members in the members pane
|
||||||
|
.guild-members-pane-info - Container for member info
|
||||||
|
.guild-roles-pane-list - Container for list of roles in the roles pane
|
||||||
|
|
||||||
|
Used in profile popup:
|
||||||
|
.mutual-friend-item - Applied to every item in the mutual friends list
|
||||||
|
.mutual-friend-item-name - Name in mutual friend item
|
||||||
|
.mutual-friend-item-avatar - Avatar in mutual friend item
|
||||||
|
.mutual-guild-item - Applied to every item in the mutual guilds list
|
||||||
|
.mutual-guild-item-name - Name in mutual guild item
|
||||||
|
.mutual-guild-item-icon - Icon in mutual guild item
|
||||||
|
.mutual-guild-item-nick - User nickname in mutual guild item
|
||||||
|
.profile-connection - Applied to every item in the user connections list
|
||||||
|
.profile-connection-label - Label in profile connection item
|
||||||
|
.profile-connection-check - Checkmark in verified profile connection items
|
||||||
|
.profile-connections - Container for profile connections
|
||||||
|
.profile-notes - Container for notes in profile window
|
||||||
|
.profile-notes-label - Label that says "NOTE"
|
||||||
|
.profile-notes-text - Actual note text
|
||||||
|
.profile-info-pane - Applied to container for info section of profile popup
|
||||||
|
.profile-info-created - Label for creation date of profile
|
||||||
|
.user-profile-window
|
||||||
|
.profile-main-container - Inner container for profile
|
||||||
|
.profile-avatar
|
||||||
|
.profile-username
|
||||||
|
.profile-switcher - Buttons used to switch viewed section of profile
|
||||||
|
.profile-stack - Container for profile info that can be switched between
|
||||||
|
.profile-badges - Container for badges
|
||||||
|
.profile-badge
|
||||||
|
|
||||||
### Settings
|
### Settings
|
||||||
Settings are configured (for now) by editing abaddon.ini
|
Settings are configured (for now) by editing abaddon.ini
|
||||||
|
You should edit these while the client is closed even though there's an option to reload while running
|
||||||
This listing is organized by section.
|
This listing is organized by section.
|
||||||
For example, memory_db would be set by adding `memory_db = true` under the line `[discord]`
|
For example, memory_db would be set by adding `memory_db = true` under the line `[discord]`
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user