Convert Figma logo to code with AI

evancohen logosmart-mirror

The fairest of them all. A DIY voice controlled smart mirror with IoT integration.

2,796
694
2,796
19

Top Related Projects

MagicMirror² is an open source modular smart mirror platform. With a growing list of installable modules, the MagicMirror² allows you to convert your hallway or bathroom mirror into your personal assistant.

Quick Overview

Smart Mirror is an open-source project that turns a two-way mirror into an interactive display. It provides a customizable interface for displaying information such as weather, calendar events, news, and more, creating a futuristic and functional mirror experience.

Pros

  • Highly customizable with various modules and themes
  • Active community support and regular updates
  • Compatible with Raspberry Pi and other low-cost hardware
  • Voice control capabilities for hands-free interaction

Cons

  • Requires some technical knowledge for setup and customization
  • Hardware costs can add up (mirror, display, Raspberry Pi, etc.)
  • May require periodic maintenance and updates
  • Limited to indoor use due to hardware constraints

Code Examples

// Example of adding a custom module
(function() {
    'use strict';

    Module.register("mymodule", {
        defaults: {
            text: "Hello World!"
        },
        
        getDom: function() {
            var wrapper = document.createElement("div");
            wrapper.innerHTML = this.config.text;
            return wrapper;
        }
    });
})();
// Example of configuring modules in config.js
{
    module: 'clock',
    position: 'top_left'
},
{
    module: 'calendar',
    position: 'top_left',
    config: {
        calendars: [
            {
                symbol: 'calendar-check',
                url: 'webcal://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics'
            }
        ]
    }
}
// Example of using voice commands
{
    module: "MMM-voice",
    position: "bottom_bar",
    config: {
        commands: {
            "show weather": {
                moduleExec: {module: ["weather"], exec: "toggle"}
            },
            "hide weather": {
                moduleExec: {module: ["weather"], exec: "toggle"}
            }
        }
    }
}

Getting Started

  1. Clone the repository:

    git clone https://github.com/evancohen/smart-mirror.git
    
  2. Install dependencies:

    cd smart-mirror
    npm install
    
  3. Configure your mirror by editing config.js:

    cp config.example.js config.js
    nano config.js
    
  4. Start the application:

    npm start
    

For detailed instructions, refer to the project's documentation on GitHub.

Competitor Comparisons

MagicMirror² is an open source modular smart mirror platform. With a growing list of installable modules, the MagicMirror² allows you to convert your hallway or bathroom mirror into your personal assistant.

Pros of MagicMirror

  • Larger and more active community, resulting in more modules and frequent updates
  • More comprehensive documentation and setup guides
  • Better support for multiple languages and internationalization

Cons of MagicMirror

  • Steeper learning curve for beginners due to its modular architecture
  • Requires more system resources, which may impact performance on low-end devices

Code Comparison

MagicMirror uses a modular structure for its components:

Module.register("clock", {
    getScripts: function() {
        return ["moment.js"];
    },
    getDom: function() {
        var element = document.createElement("div");
        element.className = "time";
        element.innerHTML = moment().format("HH:mm:ss");
        return element;
    }
});

Smart Mirror uses a more straightforward approach:

angular.module('SmartMirror')
    .controller('Clock', function($scope, $timeout) {
        var updateTime = function() {
            $scope.date = new Date();
            $timeout(updateTime, 1000);
        }
        updateTime();
    });

Both projects aim to create customizable smart mirror interfaces, but MagicMirror offers more flexibility and community support, while Smart Mirror provides a simpler setup for beginners.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Smart Mirror

Discord Chat Build Status

A voice controlled life automation hub, most commonly powered by the Raspberry Pi.

Installation

Quick installation for the Raspberry Pi 2+

curl -sL https://raw.githubusercontent.com/evancohen/smart-mirror/master/scripts/pi-install.sh | bash

Documentation

Check out the documentation for more information:

Discord

A live chat to get help and discuss mirror related issues: https://discord.gg/EMb4ynW. Usually there are a few folks hanging around in the lobby, but if there arent you are probably better off filing an issue.

Development and Contributing

See the dev branch for features that are curently in development. If you would like to contribue please follow the contribution guidelines. To launch the mirror with a debug window attached use the following command:

npm start dev

you can also toggle the debug/developers window on/off, with the keyboard ctrl-ahift-i sequence on the smart-mirror screen

For more information see the Development and Contributing section of the documentation.

Current Feature Requests/Suggestions

Please use feathub.com to add Feature Requests and Suggestions. We also recommend looking through the already existing requests to help in ranking the most popular and useful Features to Smart-Mirror users.

[Feature Requests

License

MIT

Author

Evan Cohen

More info

Favicon from In the Wake of the King, a head nod to The Watcher – "A byblow of the king and a queen of the sea, she has remained apart from the workings of her family, more home beneath the waves, watching all through water and mirror. Her ambitions lie outside the Eternal Kingdom, but her secrets are valuable everywhere."

Awesome.