π A comprehensive collection of Hubitat drivers, apps, and bridge integrations!
Extend your Hubitat hub's capabilities with custom drivers for various smart home devices and cloud service integrations.
| Project | Description | Status | Documentation |
|---|---|---|---|
| π HubSpace Integration | Bridge for HubSpace/Afero cloud devices | β Production | docs/Hubspace.md |
| π Generic Device Drivers | Collection of custom device drivers | π§ Development | Coming Soon |
| π€ Automation Apps | Smart home automation applications | π Planned | Coming Soon |
| π Cloud Bridges | Additional cloud service integrations | π Ideas | Coming Soon |
Connect HubSpace/Afero cloud devices to your Hubitat hub through a secure bridge server.
# Clone repository
git clone https://github.com/neerpatel/Hubitat.git
# Setup HubSpace bridge
cd Hubitat/bridge-node
npm install
npm startπ Full Setup Guide: docs/Hubspace.md
Install custom drivers for specific device types directly in Hubitat.
- Navigate to Drivers Code in Hubitat admin
- Click New Driver
- Copy/paste driver code from
Hubitat/drivers/ - Save and create virtual device
Hubitat/
βββ π bridge-node/ # Node.js bridge servers
β βββ hubspace-server.js # HubSpace OAuth bridge
β βββ package.json # Node.js dependencies
β βββ ecosystem.config.js # PM2 configuration
βββ π Hubitat/ # Hubitat Groovy files
β βββ π drivers/ # Device drivers
β βββ π apps/ # Automation apps
β βββ π Hubspace/ # HubSpace integration
βββ π docs/ # Documentation
β βββ Hubspace.md # HubSpace setup guide
βββ π .github/ # GitHub workflows & templates
βββ π README.md # This file
Status: β Production Ready
Connect your Hubitat hub to HubSpace cloud devices including:
- Smart lights with dimming and color control
- Ceiling fans with speed and direction control
- Smart switches and outlets
- Motion and contact sensors (coming soon)
Key Features:
- π Secure OAuth proxy with PKCE authentication
- β‘ Real-time device state synchronization
- π Easy deployment with PM2 process management
- π Full Hubitat dashboard compatibility
Get Started: docs/Hubspace.md
Status: π§ In Development
Custom Groovy drivers for various smart home devices:
- Generic Z-Wave/Zigbee device support
- Custom protocol implementations
- Enhanced capabilities for existing devices
- Community-contributed drivers
Status: π Planned
Smart home automation applications:
- Advanced scheduling and triggers
- Multi-device coordination
- Custom notification systems
- Integration helpers
Each project has its own development guidelines:
| Project | Language | Setup | Testing |
|---|---|---|---|
| HubSpace Bridge | TypeScript/Node.js | npm install |
npm test |
| Groovy Drivers | Groovy | Import to Hubitat | Test with devices |
| Apps | Groovy | Import to Hubitat | Integration testing |
- Create project directory under appropriate folder
- Add documentation in
docs/ProjectName.md - Update this README with project entry
- Follow coding standards for the platform
- Include setup instructions and examples
- Groovy Code: Follow Hubitat conventions and best practices
- TypeScript/Node.js: Use modern ES features and proper typing
- Documentation: Include comprehensive setup and usage guides
- Testing: Test thoroughly with actual devices when possible
- Version Control: Use meaningful commit messages and branch names
| Resource | Description |
|---|---|
| docs/Hubspace.md | Complete HubSpace integration guide |
| .github/instructions/ | Development guidelines and standards |
| Hubitat Documentation | Official Hubitat developer docs |
| GitHub Wiki | Community guides and examples |
π We welcome contributions to all projects! π
| Type | Description | How to Help |
|---|---|---|
| π Bug Reports | Found an issue? | Open an issue |
| β¨ New Features | Have an idea? | Request a feature |
| π§ Code Contributions | Want to code? | Fork, develop, and submit a PR |
| π Documentation | Improve guides | Help make setup even easier |
| π§ͺ Device Testing | Have compatible devices? | Test and report compatibility |
- HubSpace: Test with HubSpace devices, improve OAuth flow
- Drivers: Submit drivers for new device types
- Apps: Create automation apps for common use cases
- Documentation: Improve setup guides and troubleshooting
| Benefit | Description |
|---|---|
| π Local Control Focus | Keep automation local while integrating cloud services |
| οΏ½ Security First | Secure authentication patterns and best practices |
| β‘ Performance Optimized | Efficient code with minimal resource usage |
| π§ Extensible Architecture | Easy to modify and extend for new use cases |
| π Community Driven | Open source with active development |
| π Well Documented | Comprehensive guides and examples |
Questions? Ideas? Need help?
We'd love to hear from you!
- π Bug reports: GitHub Issues
- π¬ General discussion: GitHub Discussions
- π Documentation: Check our Wiki
- π§ Project-specific: Tag issues with project name (e.g.,
hubspace,drivers)
Made with β€οΈ for the Hubitat and Home Automation community
Empowering local smart home control with seamless cloud integrations.
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
β Hubitat Hub βββββΊβ Bridge Server βββββΊβ HubSpace Cloud β
β β β (Node.js) β β (OAuth API) β
β ββββββββββββββββ β β β β
β β Device ββ β ββββββββββββββββ β ββββββββββββββββ
β β Manager ββ β β Express ββ β β Devices ββ
β β ββ β β Server ββ β β & State ββ
β ββββββββββββββββ β ββββββββββββββββ β ββββββββββββββββ
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
Data Flow:
- Hubitat Device Manager authenticates with Bridge Server
- Bridge Server handles OAuth flow with HubSpace Cloud
- Real-time device state synchronization
- Secure command relay for device control
| Feature | Description |
|---|---|
| π Secure OAuth Proxy | PKCE-enabled authentication with HubSpace cloud |
| π RESTful API | Clean endpoints for authentication and device control |
| β‘ Real-time Sync | Live device state updates and command relay |
| π Native Hubitat Integration | Groovy drivers with full Hubitat ecosystem support |
| π Session Management | Automatic token refresh and session persistence |
| π Easy Deployment | One-command setup with PM2 process management |
| π‘οΈ Security First | No credential storage, secure token handling |
| π± Multi-Device Support | Lights, fans, switches, and more device types |
| π§ Extensible Architecture | Easy to add new device types and providers |
| π Dashboard Ready | Full compatibility with Hubitat dashboards |
| Step | Action | Command/Description |
|---|---|---|
| 1οΈβ£ | Clone Repository | git clone https://github.com/neerpatel/Hubitat.git |
| 2οΈβ£ | Install Dependencies | cd Hubitat/bridge-node && npm install |
| 3οΈβ£ | Start Bridge Server | npm start (dev) or pm2 start ecosystem.config.js (prod) |
| 4οΈβ£ | Install Hubitat Driver | Import Hubitat/Hubspace/HubspaceDeviceManager.groovy |
| 5οΈβ£ | Configure Bridge URL | Set bridge URL in device manager preferences |
| Environment Variable | Description | Default |
|---|---|---|
PORT |
Server listening port | 3000 |
NODE_ENV |
Environment mode | development |
| Setting | Description |
|---|---|
| HubSpace Username | Your HubSpace account email |
| HubSpace Password | Your HubSpace account password |
| Bridge Server URL | URL of your running bridge server |
| Polling Interval | Device state refresh frequency |
# Clone and setup
git clone https://github.com/neerpatel/Hubitat.git
cd Hubitat/bridge-node
# Install dependencies
npm install
# Development mode (with auto-reload)
npm run dev
# TypeScript compilation
npm run build
# Type checking
npm run type-checkHubitat/
βββ bridge-node/ # Node.js TypeScript bridge server
β βββ src/ # TypeScript source files
β βββ package.json # Node.js dependencies
β βββ ecosystem.config.js # PM2 configuration
βββ Hubitat/ # Hubitat Groovy files
β βββ Hubspace/ # HubSpace device drivers
β βββ HubspaceDeviceManager.groovy
βββ setup.sh # Automated deployment script
- Automatic Device Discovery - Scans HubSpace account for available devices
- Real-time State Updates - Keeps Hubitat in sync with cloud device states
- Secure Authentication - OAuth flow handled securely through bridge
- Dashboard Integration - Full compatibility with Hubitat dashboards
- Multi-Device Support - Supports lights, fans, switches, and more
| Device Type | Capabilities | Status |
|---|---|---|
| Smart Lights | On/Off, Dimming, Color | β Supported |
| Ceiling Fans | Speed Control, Direction | β Supported |
| Smart Switches | On/Off Control | β Supported |
| Plugs/Outlets | On/Off Control | β Supported |
π We welcome your contributions! π
| Type | Description | How to Help |
|---|---|---|
| π Bug Reports | Found an issue? | Open an issue |
| β¨ Feature Requests | Have an idea? | Request a feature |
| π§ Code Contributions | Want to code? | Fork, develop, and submit a PR |
| π Documentation | Improve docs | Help us make setup even easier |
- Follow TypeScript best practices for bridge server
- Use Groovy conventions for Hubitat drivers
- Test thoroughly with actual HubSpace devices
- Document any new features or device support
| Benefit | Description |
|---|---|
| π Local Control | Keep your home automation local while accessing cloud devices |
| π Security First | OAuth proxy ensures your credentials stay secure |
| β‘ Performance | Efficient bridge with minimal latency |
| π§ Flexibility | Extensible architecture for future device types |
| π Community | Open source with active development |
| π Reliable | Production-ready with PM2 process management |
Questions? Ideas? Need help?
We'd love to hear from you!
- π Bug reports: GitHub Issues
- π¬ General discussion: GitHub Discussions
- π Documentation: Check our Wiki
Made with β€οΈ for the Hubitat and Home Automation community
Bringing cloud devices to your local smart home hub, securely and efficiently.