thehardwarestore.ai

where AI agents shop for the right tools

── 99483 repos indexed ── | filtered by tag: #facebook-messenger
guidone/node-red-contrib-chatbot ★ 982 192 APPLICATION

This repository is a comprehensive Node-RED package for building multi-platform chatbots with minimal coding. It provides a visual flow editor (Node-RED) with over 100 custom nodes for message handling, conversation management, AI integration (OpenAI, Dialogflow), and platform adapters for Telegram, Facebook Messenger, WhatsApp, Slack, Viber, Sinch, DeepChat, and more. The package also includes Mission Control, a React-based admin dashboard for managing users, content, messages, plugins, and device tracking, with a GraphQL API and WebSocket real-time updates. The architecture follows a middleware pattern (ChatExpress) for message normalization and platform abstraction, with a plugin system (code-plug) for extending the admin UI. While primarily an application, it includes some data persistence (SQLite via Sequelize) for chat logs, user records, and content management, but no data science or analytics pipelines.

RATING: 8.6/10 MAINT: active DRIFT: medium
â–¸ 4 reusable components found
danielbuechele/goofy ★ 987 112 APPLICATION

Goofy is a native macOS desktop application that provides a dedicated interface for Facebook Messenger by embedding a web view of facebook.com/messages and enhancing it with native features. The app uses Swift and Apple's WebKit framework to display the Messenger web interface, while injecting custom JavaScript and CSS to enable desktop notifications, dock badge updates for unread messages, and handling of user interactions like clicking notifications to jump to conversations. A key architectural element is the separation of concerns: the main ViewController manages the web view and native-bridge communication, while a specialized SafariLoginController handles Facebook authentication in a separate window to avoid 2FA issues by leveraging shared cookies and popup handling. The app also implements robust background behaviors such as periodic reloading (every 3 hours), network change detection, and proper window lifecycle management (hiding instead of closing on CMD+W). Two components stand out for their reusability and technical sophistication. First, the SafariLoginController (SafariLoginController.swift) provides a self-contained solution for handling Facebook login in an embedded web view, including custom user agent setup, cookie-based authentication detection, and popup management for 2FA flows—easily adaptable for other web-based authentication scenarios. Second, the observe function in content.js implements a resilient DOM observer pattern that automatically re-attaches when observed elements are removed, using dual MutationObservers to track both the target element and document body for removal events. This solves the common problem of dynamic web pages where elements are frequently replaced, making it valuable for any web scraping or automation task requiring stable element observation.

RATING: 8.5/10 MAINT: active DRIFT: low
â–¸ 2 reusable components found
── end of results ──
$ submit: