All Projects → danielbuechele → Goofy

danielbuechele / Goofy

Licence: mit
Desktop client for Facebook Messenger

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Goofy

Chat app
A flutter chat app built with firestore. It is clone of messenger.User can create stories,chat and search in real time.
Stars: ✭ 493 (-50.3%)
Mutual labels:  messenger
Integrations
Connect your App to Multiple Messaging Channels with the W3C Open standard.
Stars: ✭ 721 (-27.32%)
Mutual labels:  messenger
Facebook Messenger
Definitely the best way to make Bots on Facebook Messenger with Ruby
Stars: ✭ 927 (-6.55%)
Mutual labels:  messenger
Pymessager
Python API to develop chatbot on Facebook Messenger Platform
Stars: ✭ 580 (-41.53%)
Mutual labels:  messenger
Deltachat Android
Email-based instant messaging for Android.
Stars: ✭ 705 (-28.93%)
Mutual labels:  messenger
Chat Sdk Ios
Chat SDK iOS - Open Source Mobile Messenger
Stars: ✭ 813 (-18.04%)
Mutual labels:  messenger
Messenger
iOS - Real-time messaging app 🎨
Stars: ✭ 491 (-50.5%)
Mutual labels:  messenger
Bootbot
Facebook Messenger Bot Framework for Node.js
Stars: ✭ 886 (-10.69%)
Mutual labels:  messenger
Caprine
Elegant Facebook Messenger desktop app
Stars: ✭ 6,170 (+521.98%)
Mutual labels:  messenger
Java Fbchatbot
Messenger webhook implementation in java with jetty, contracts of facebook messenger webhook
Stars: ✭ 24 (-97.58%)
Mutual labels:  messenger
Messenger
The Messenger component helps application send and receive messages to/from other applications or via message queues.
Stars: ✭ 603 (-39.21%)
Mutual labels:  messenger
Chat
Instant messaging platform. Backend in Go. Clients: Swift iOS, Java Android, JS webapp, scriptable command line; chatbots
Stars: ✭ 8,238 (+730.44%)
Mutual labels:  messenger
Utox
µTox the lightest and fluffiest Tox client
Stars: ✭ 820 (-17.34%)
Mutual labels:  messenger
Messagekit
A community-driven replacement for JSQMessagesViewController
Stars: ✭ 5,036 (+407.66%)
Mutual labels:  messenger
Skillbox Chat 08 19
Skillbox demo application for the Python course
Stars: ✭ 25 (-97.48%)
Mutual labels:  messenger
Kiwiirc
🥝 Next generation of the Kiwi IRC web client
Stars: ✭ 488 (-50.81%)
Mutual labels:  messenger
Threema Web
The Threema Web application.
Stars: ✭ 745 (-24.9%)
Mutual labels:  messenger
Wire Webapp
👽 Wire for web
Stars: ✭ 982 (-1.01%)
Mutual labels:  messenger
Spotify Bot
Spotify Messenger Bot
Stars: ✭ 12 (-98.79%)
Mutual labels:  messenger
Messenger
A Go (golang) package that allows you to interact with Facebook chat/Messenger using an unofficial API.
Stars: ✭ 7 (-99.29%)
Mutual labels:  messenger

⚠️ Goofy is not maintained anymore

Messenger offers a first party desktop now and I encourage all Goofy users to try it out.

Goofy

Goofy is a macOS client for Facebook Messenger. But unlike most other clients, it does not use any of Facebook's APIs, but is basically a single-site browser that injects a little CSS and JS into messenger.com to make it a little more app-like.

Feature requests and contributing

Feel free to create issues on this repo for feature requests of any kind. However, some features may not be possible due to the way this application is working. Also, I don't want this to be a feature bloated monster, but a slick and small app.

Depending on the number of contributors and the progress of this app, I will schedule releases from time to time, which will then be distributed on goofyapp.com.

Building and debugging

Install all dependencies and run the app:

~$ npm i
~$ node_modules/.bin/electron-builder install-app-deps  # Rebuild native modules
~$ npm start

Note, the postinstall hook hasn't been used in package.json to automatically build the native modules after an npm i, as there is a weird bug in Travis CI. I.e. When Travis CI receives a build, it runs an npm ci which (for whatever reason) doesn't install electron-builder (which builds the native modules) - so when postinstall runs it errors. So instead, we let npm ci run without rebuilding the native modules, and then manually add in the step to rebuild the native modules in the before_script. Consequently when developing, this step now needs to be run manually.

To debug, there's a VSCode launch.json that can be used to debug the Electron app. To debug the Facebook JavaScript changes you'll need to use the Chrome Web Inspector, which you can toggle from the menu View - Toggle Developer Tools or by using CMD + ALT + I.

Distribution

To create a distribution locally:

  1. Create an Apple developer account
  2. Create an app specific password on your developer account for Goofy https://support.apple.com/en-us/HT204397
  3. Run cp env-sample .env
  4. Edit .env and fill in your Apple ID and app specific password (this file is ignored in .gitignore)
  5. Run npm run dist - note this process might take awhile as it both signs and notarizes the built .app with Apple

In the ./dist directory will now be the notarized .app along with the packaged files (which are not notarized)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].