Giter Site home page Giter Site logo

milkshiift / goofcord Goto Github PK

View Code? Open in Web Editor NEW
124.0 4.0 5.0 6.24 MB

:shield: Take control of your Discord experience with GoofCord – the highly configurable and privacy minded discord client.

License: Open Software License 3.0

NSIS 0.33% CSS 37.49% HTML 1.27% TypeScript 55.74% JavaScript 5.17%
armcord configurable discord open-source privacy goofcord electron nodejs discord-client discord-client-mod

goofcord's Introduction

GoofCord logo

Take control of your Discord experience with GoofCord – the highly configurable and privacy-focused Discord client.
Based on ArmCord.


Screenshot of GoofCord

Features ✨

  • 🔒 With Privacy in mind: GoofCord blocks all tracking and uses multiple techniques like message encryption to improve your privacy and security. Learn more
  • ⚙️ Your Way, Your Client: Set up GoofCord to your liking with an array of customization options.
  • 📈 Fast and Performant: Glide through your chats with GoofCord's superior speed and responsiveness compared to the official client.
  • 🔖 Standalone: GoofCord is a standalone client, not reliant on the original Discord client in any way.
  • 🔌 Plugins & Themes support: Easily use client mods like Vencord or Shelter for a world of plugins and themes.
  • 🐧 Linux support: Seamless screensharing with audio and native Wayland support on Linux. See FAQ for details.

Ready to Dive In?

Windows 🪟

  • Windows 7/8: Use this fork.
  • Install with prebuilt binaries from the releases page.
    Choose GoofCord-Setup-<YOUR ARCHITECTURE>.exe for an installer, or
    GoofCord-<VERSION>-win-<YOUR ARCHITECTURE>.zip to manually unpack into a directory of your choice.
  • Install using winget: winget install GoofCord

Linux 🐧

  • Install with prebuilt binaries from the releases page.
  • Install from Flathub
  • Install from AUR if you run an Arch-based OS. Here's an example using pacman:
    sudo pacman -S goofcord-bin
    Keep in mind that the AUR package is not maintained by the developers of GoofCord.
  • Install in NixOS system-wide by adding pkgs.goofcord to environment.systemPackages
    Testing in a temporary shell can also be done using nix shell nixpkgs#goofcord

macOS 🍏

  • Install with prebuilt binaries from the releases page.
    Choose the file ending with mac-arm64.dmg if your computer uses an Apple Silicon processor. Mac computers with Apple Silicon
    Otherwise, choose the file that ends with mac-x64.dmg
  • If you get an error like "GoofCord is damaged and can't be opened" see this issue

See FAQ for ways to open GoofCord's settings.
To explore plugins and themes, head over to the Vencord category in the Discord settings.
Have fun!

And if you want to compile it yourself, here's how:

  1. Install Node.js and pnpm
  2. Grab the source code from the latest release. Getting it from the main branch is not recommended for a stable experience.
  3. Open a command line in the directory of the source code
  4. Install the dependencies with pnpm install
  5. Package GoofCord with pnpm run packageWindows or pnpm run packageLinux
  6. Find your freshly compiled app in the dist folder.

Short FAQ

Where is the long FAQ?

Need Support? Join Our Discord!

Can I get banned from using GoofCord? 🤔

  • While using GoofCord goes against Discord ToS, no one has ever been banned from using it or any client mods.

How can I access the settings? ⚙️

  • Multiple ways:
    • Right-click on the tray icon and click Open Settings
    • Click the "Settings" button in the "GoofCord" category in the Discord settings
    • Press Ctrl+Shift+' shortcut.

How do I run GoofCord natively on Wayland?

  • GoofCord should run natively out of the box, but if it doesn't, run with these flags:
    --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform-hint=auto
    If GoofCord shows a black screen, also include this flag: --disable-gpu-sandbox

How do I stream with audio on Linux?

  • If you use PulseAudio it should work out of the box. For PipeWire you will need to install pipewire-pulse if it's not already installed

Seeking the Source Code? 🕵️‍♂️

  • You can find our source code on GitHub.

Check out our wiki if you've got questions left

Credits 🙌

ArmCord
Discord Sandboxed
Vencord
Vesktop
WebCord

goofcord's People

Contributors

alex313031 avatar milkshiift avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

goofcord's Issues

[REQUEST] Add GoofCord to winget and scoop

Description

This feature request proposes adding GoofCord to the package managers winget and scoop.

Use Case

Including GoofCord in winget and scoop would benefit users in several ways:

  • Simplified Installation: Through winget and scoop, users would enjoy a streamlined installation process for GoofCord. These package managers handle dependencies and ensure compatibility, making installation smoother than manual compilation or downloading from unknown sources.
  • Accessibility: Having GoofCord in these repositories would increase its accessibility for Windows users, especially those unfamiliar with manual installation methods. Users could easily discover and install GoofCord through familiar package management tools.
  • Security: Package managers like winget and scoop often implement security measures to verify package integrity. This can help mitigate risks associated with downloading from untrusted sources.

Describe alternatives you've considered

None. Users who seek to only use package managers on windows won't be able to install GoofCord.

Additional context

By adding GoofCord to these repositories, winget and scoop can expand their offerings to cater to users who prioritize privacy-focused alternatives to mainstream applications.

[BUG] Launch Goofcord on Startup starts electron app instead of goofcord when installed from AUR

Description

When enabling the start goofcord on startup option, it will start the electron development app instead of goofcord.

Steps to Reproduce

  1. Go to Goofcord settings
  2. scroll to the bottom
  3. enable the Launch on Startup option
  4. restart

Expected Behavior

Upon enabling the start on startup option and restarting, goofcord should launch.

Actual Behavior

upon enabling the start on startup option and restarting, the electron app launches and goofcord doesnt

Environment

  • Operating System: EndeavourOS (Arch-Linux) Kernel 6.8.5-zen
  • Version: 1.3.2 (aur package)

[BUG] Invidious replacement iframe overshooting frame

Description

It seems that the Invidious instance that replaces the YouTube player extends past the frame of the existing video player. This makes the fullscreen button hidden.

Guessing some additional css props might need to be added here: https://github.com/Milkshiift/GoofCord-Scripts/blob/main/patches/BL12_invidiousEmbeds.js

Steps to Reproduce

Play a video with Invidious replaced.

Expected Behavior

Replacement video player should fit the same player size.

Actual Behavior

Frame is underfitted.

Screenshots

image

Environment

  • Operating System: macOS 13.5
  • Version: 1.2.0

[REQUEST] Equicord support

Description

Instead of just offering Vencord support, offer Equicord support as well.

Use Case

Equicord is a fork of Vencord with more features and plugins

Describe alternatives you've considered

Continue using Vencord.

Consider crediting the original work

You have licensed your work under the terms of the OSL. This states the following:

3) Grant of Source Code License. The term "Source Code" means the preferred
form of the Original Work for making modifications to it and all available
documentation describing how to modify the Original Work. Licensor agrees to
provide a machine-readable copy of the Source Code of the Original Work along
with each copy of the Original Work that Licensor distributes. Licensor
reserves the right to satisfy this obligation by placing a machine-readable
copy of the Source Code in an information repository reasonably calculated to
permit inexpensive and convenient access by You for as long as Licensor
continues to distribute the Original Work.

as well as:

6) Attribution Rights. You must retain, in the Source Code of any Derivative
Works that You create, all copyright, patent, or trademark notices from the
Source Code of the Original Work, as well as any notices of licensing and any
descriptive text identified therein as an "Attribution Notice." You must cause
the Source Code for any Derivative Works that You create to carry a prominent
Attribution Notice reasonably calculated to inform recipients that You have
modified the Original Work.

Your work is clearly a derivate of ArmCord, proven by both the fact this repository used to be a fork (see image) and the fact that the source code is identical.
image

Currently, you are failing to comply with the license terms. We as ArmCord have all rights to take action if you fail to comply with the terms of the license.

I recommend following the terms.

[BUG] MacOS arm-64 .dmg repported as "damaged"

Description

When trying to open, getting error "GoofCord is damaged and can't be opened" on MacOS running on Apple's M2 Chip

Steps to Reproduce

Try to install on MacOS running on Apple's M2 Chip

Expected Behavior

Opens normally

Actual Behavior

Shows error "GoofCord is damaged and can't be opened"

Screenshots

image

Environment

  • Operating System: macOS 14.2 (Sonoma)
  • Version: 1.1.0
  • Chip: Apple M2

Additional info

This is strictly an issue with the arm-64 .dmg, the x64 .dmg is fine

[BUG] Screen Share resolution selection not working

Description

Goofcord can't share screen with 1080p or 480p

Steps to Reproduce

Try share screen with less than 720p(or more)

Expected Behavior

Share screen with chosen resolution

Actual Behavior

Screen share is limited to 720p 30fps

Screenshots

image-23.png

image-18.png

Environment

  • Operating System:
    ArchLinux
    Gnome
    Wayland

[REQUEST] Option or ability to keep its last window size adjustment

Description

App appears to be defaulted in the maximized window setting at every start-up - and each start-up I constantly have to adjust the window to a certain size of my preference. Was wondering if Goofcord can get the option (or default) to keep the last resize adjustment in every session.

Use Case

It being able to keep the last resize adjustment to a user's preference would save time.

Describe alternatives you've considered

Additional context

[REQUEST] Add native keybind support

Description

Currently the client thinks it's ran in a browser and doesn't allow the use of keybinds.

Use Case

I use keybinds on the daily for muting/unmuting myself while in-game and it's the sole thing that prevents my switch from discord.

Describe alternatives you've considered

Additional context

[BUG] GoofCord immediately closing on Linux

Because of an Electron bug in the versions >30.x.x, which is what 1.4.0 uses, Linux installs may crash on startup. I will release a new version with a fix as soon as Electron fixes the bug. I don't consider downgrading to Electron 29 because Windows installs are not impacted, screensharing with audio depends on the newer version and the fix hopefully shouldn't take that long.

Workarounds

  1. install electron29 and run GoofCord with electron29 <path to the GoofCord's asar file>. You can download the .asar from the releases page
  2. In the config file which is located in ~/.config/goofcord/storage/settings.json change the value of "customTitlebar" to the opposite one. This only seems to work until a restart

[REQUEST] Flatpak?

Description

[Please provide a clear and concise description of the feature you'd like to request.]
I'd like a Flatpak.

Use Case

[Explain how this feature would be useful to you or your project.]
For OS's like SteamOS, Fedora Silver blue and such.

Describe alternatives you've considered

[A clear and concise description of any alternative solutions or features you've considered.]

Additional context

[Add any other context or screenshots about the feature request here.]

[BUG] Goofcord doesn't properly focus window when clicking on a notification (GNOME 46)

Description

Clicking on notifications doesn't focus the Goofcord window.

Steps to Reproduce

[List the steps to reproduce the bug]
Be on GNOME 46 (Wayland), click a notification, see that it doesn't focus Goofcord.

Expected Behavior

That it does focus Goofcord.

Actual Behavior

It doesn't focus Goofcord (another notification pops up and which is then clicked on to focus the windows, this makes focusing the windows take clicking on 2 separate notifications.)

Screenshots

image 2nd notification that pops up (and actually does focus the screen)

Environment

  • Operating System: NixOS 24.11
  • Version: 1.4.3

Additional Information

[Provide any additional information that might be useful in solving the problem, such as error messages or relevant logs]

[BUG] Screen Sharing window is appearing out of bounds of the monitor screen

Description

I am trying to use screen sharing and when I click on the screen share icon and select the application from the portal window, the screen sharing window which allows me to select resolution is appearing on the bottom right corner of the monitor and it is out of bounds of the monitor. I have to use my keyboard shortcuts to drag it into the main screen again.

Steps to Reproduce

log into discord, join a server and start screen sharing. The screen sharing window is appearing on the bottom right corner and mostly out of the screen bounds.

Expected Behavior

The window for screen sharing menu should appear fully within the monitor boundaries.

Actual Behavior

The screen sharing window is appearing in the bottom right corner of the screen and is mostly out of bounds of the monitor.

Screenshots

Attaching the screenshot. Please look at the bottom right corner of the screen and you will see what I am talking about.

sc

Environment

  • Operating System: Fedora Workstation 40, gnome DE on Wayland.
  • Version: 1.4.2 (flatpak)

[REQUEST] Benchmarks

Description

Would be cool to see how it compares against other clients. Some benchmarks might include:

  • time to start
  • time to switch/load a server/channel
  • time to connect to voice chat
  • memory usage
  • CPU usage
  • time to close

Use Case

This would help recommend GoofCord to others.

[BUG] Not logging in.

Description

[Provide a brief description of the bug you encountered]
GoofCord is not logging me in.

Steps to Reproduce

I run the installed app and it opens the discord login screen. I enter my email and password, and click login. it shows the 3-dot loading symbol, then goes back to 'Log In', doing nothing. When I scan the QR code using the mobile app, it shows my discord user info on GoofCord: 'Logging in as User...'. On the android app, I select log in as desctop. On GoofCord, my user icon changes to a three-dot loading symbol, before reverting back to the default QR code, not logging me in. On my android, discord shows 'You're in!'.

Expected Behavior

[Provide a clear and concise description of what you expected to happen]
I expected to be logged in to discord (goofcord), either with email/password, or with qr code scanning.

Actual Behavior

[Describe what actually happened]
While it looked like the app was loading when i initiated login, it would then revert back to the standard login screen.

Screenshots

[If applicable, add screenshots that help illustrate the problem]

Environment

I installed it on Windows 10 Pro 22H2 19045.3208

Additional Information

[Provide any additional information that might be useful in solving the problem, such as error messages or relevant logs]
I have installed version 0.7.1

Add a way to have lossless stereo like abaddon has

Add a way to have lossless stereo like abaddon has so that people can have perfect stereo quality on discord and make it as lossless as opus can be so have raw mic input/allow for full 16bit gain which is what discord uses and no processing of mic for it to be as lossless as discord can get

[BUG] Segfaults When Closing To Tray

Description

[Provide a brief description of the bug you encountered]
Goofcord crashes and loses login

Steps to Reproduce

[List the steps to reproduce the bug]
Open goofcord
log back in because it keeps logging me out after every crash
close goofcord

Expected Behavior

[Provide a clear and concise description of what you expected to happen]
goofcord stays running in system tray

Actual Behavior

[Describe what actually happened]
goofcord segfaults

Screenshots

[If applicable, add screenshots that help illustrate the problem]

Environment

  • Operating System: [e.g. Windows 10, macOS 10.14.6]
  • Version: [e.g. 1.0.0]
    Arch Linux with Plasma 6

Additional Information

[Provide any additional information that might be useful in solving the problem, such as error messages or relevant logs]
Happens with or without gpu assist (prime run) and with the wayland workaround vars set

GDK_BACKEND=x11
export XDG_SESSION_TYPE=x11
env -u WAYLAND_DISPLAY

All it says right before crashing:
Missing config parameter: minimizeToTraySetting

[BUG] Missing ibus input capability in the Flatpak distribution

Description

While using an ibus input method such as an IME - in my case, Anthy for typing Japanese characters - the actual character transformation functionality is completely non-functional under the Flatpak distribution.

Steps to Reproduce

Simply adding an IME Input Source in GNOME Settings' 'Keyboard' section should reproduce this issue - they're the ones featuring the little cog icon. While I'm using Anthy due to personal preference(though it is also the one that's shipped with upstream Fedora), Mozc is generally more popular - and also has an ibus package available. Change the Input Source through the panel menu, or press Super + Space.

Expected Behavior

While using an Anthy, the Latin characters you'll be typing are the transliterated equivalent of the actual characters/words you are trying to write(for example, you may type 'ko' for the Japanese character 'こ'). You might attempt to convert further this current underlined portion by pressing Space, which will open up a list of conversion options - something like a smartphone keyboard's word suggestions. You can always press Enter to move on to the next word, and Ctrl + Space to toggle between direct Latin character input and IME behavior.

Actual Behavior

The program completely ignores ibus input - meaning only direct Latin input works, regardless of input source.

Environment

  • Operating System: Bazzite (GNOME 46.2 - OCI image based on Fedora Silverblue)
  • Version: 1.4.3 (Flatpak)

Additional Information

I've observed the same behavior under every Electron-based Discord client I've tried, including Armcord, so it is likely an issue with an incompatibility and/or misconfiguration of Flatpak sandboxing.

[BUG] goofcord killed by SIGSEGV

Description

goofcord killed by SIGSEGV

Steps to Reproduce

just using

Expected Behavior

normal operation of the program

Actual Behavior

goofcord killed by SIGSEGV

Environment

  • Operating System: Fedora Workstation 40
  • Version: 1.4.3 (flatpak)

Additional Information

https://pastebin.com/A9VzDHYR

[BUG] Minimize to tray not working

Description

[No matter what OS, Linux or Windows, the minimize to tray setting doesn't work. And yes, it's enabled in the settings.]

Steps to Reproduce

[1) Open Goofcord. 2) Make sure minimize to tray is enabled in settings. 3) Close GoofCord by clicking the X button. 4) Notice that it disappears from system tray, and when you reopen it, the window scaling is back to fullscreen.]

Expected Behavior

[I expected clicking the X button to minimize GoofCord like the official client, and to open it exactly how it was before I 'minimized' it.]

Actual Behavior

[GoofCord completely closed and did not minimize.]

Environment

  • Operating System: [Windows 11, Linux Mint 21.3]
  • Version: [1.4.2]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.