You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+33-1Lines changed: 33 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,16 +2,48 @@
2
2
All notable changes to this project will be documented in this file.
3
3
This project adheres to [Semantic Versioning](http://semver.org/).
4
4
5
+
## [2.3.0] - 2018-04-01
6
+
7
+
### Added
8
+
9
+
- Add new settings in compliments module: setting time intervals for morning and afternoon
10
+
- Add system notification `MODULE_DOM_CREATED` for notifying each module when their Dom has been fully loaded.
11
+
- Add types for module.
12
+
- Implement Danger.js to notify contributors when CHANGELOG.md is missing in PR.
13
+
- Allow to scroll in full page article view of default newsfeed module with gesture events from [MMM-Gestures](https://github.com/thobach/MMM-Gestures)
14
+
- Changed 'compliments.js' - update DOM if remote compliments are loaded instead of waiting one updateInterval to show custom compliments
15
+
- Automated unit tests utils, deprecated, translator, cloneObject(lockstrings)
16
+
- Automated integration tests translations
17
+
- Add advanced filtering to the excludedEvents configuration of the default calendar module
18
+
- New currentweather module config option: `showFeelsLike`: Shows how it actually feels like. (wind chill or heat index)
19
+
- New currentweather module config option: `useKMPHwind`: adds an option to see wind speed in Kmph instead of just m/s or Beaufort.
20
+
- Add dc:date to parsing in newsfeed module, which allows parsing of more rss feeds.
21
+
22
+
### Changed
23
+
- Add link to GitHub repository which contains the respective Dockerfile.
24
+
- Optimized automated unit tests cloneObject, cmpVersions
25
+
- Update notifications use now translation templates instead of normal strings.
26
+
- Yarn can be used now as an installation tool
27
+
- Changed Electron dependency to v1.7.13.
28
+
29
+
### Fixed
30
+
- News article in fullscreen (iframe) is now shown in front of modules.
31
+
- Forecast respects maxNumberOfDays regardless of endpoint.
Electron, the app wrapper around MagicMirror², only supports the Raspberry Pi 2 & 3. The Raspberry Pi 1 is currently **not** supported. If you want to run this on a Raspberry Pi 1, use the [server only](#server-only) feature and setup a fullscreen browser yourself.
35
+
### Raspberry Pi
30
36
31
-
### Automatic Installer (Raspberry Pi Only!)
37
+
#### Automatic Installation (Raspberry Pi only!)
38
+
39
+
*Electron*, the app wrapper around MagicMirror², only supports the Raspberry Pi 2/3. The Raspberry Pi 0/1 is currently **not** supported. If you want to run this on a Raspberry Pi 1, use the [server only](#server-only) feature and setup a fullscreen browser yourself. (Yes, people have managed to run MM² also on a Pi0, so if you insist, search in the forums.)
40
+
41
+
Note that you will need to install the lastest full version of Raspbian, **don't use the Lite version**.
32
42
33
43
Execute the following command on your Raspberry Pi to install MagicMirror²:
1. Download and install the latest Node.js version.
51
+
1. Download and install the latest *Node.js* version.
41
52
2. Clone the repository and check out the master branch: `git clone https://github.com/MichMich/MagicMirror`
42
-
3. Enter the repository: `cd ~/MagicMirror`
43
-
4. Install and run the app: `npm install && npm start`
53
+
3. Enter the repository: `cd MagicMirror/`
54
+
4. Install and run the app with: `npm install && npm start`\
55
+
For **Server Only** use: `npm install && node serveronly` .
44
56
45
-
**Important:**`npm start` does **not** work via SSH, use `DISPLAY=:0 nohup npm start &` instead. This starts the mirror on the remote display.
46
57
47
-
**Note:** if you want to debug on Raspberry Pi you can use `npm start dev` which will start the MagicMirror app with Dev Tools enabled.
58
+
**:warning: Important!**
48
59
49
-
### Server Only
50
-
In some cases, you want to start the application without an actual app window. In this case, you can start MagicMirror² in server only mode by manually running `node serveronly` or using Docker. This will start the server, after which you can open the application in your browser of choice. Detailed description below.
60
+
-**The installation step for `npm install` will take a very long time**, often with little or no terminal response! \
61
+
For the RPi3 this is **~10** minutes and for the Rpi2 **~25** minutes. \
62
+
Do not interrupt or you risk getting a :broken_heart: by Raspberry Jam.
51
63
52
-
### Client Only
53
-
When you have a server running remotely and want to connect a standalone client to this instance, you can manually run `node clientonly --address 192.168.1.5 --port 8080`. (Specify the ip address and port number of the server)
54
64
55
-
**Important:** Make sure that you whitelist the interface/ip in the server config where you want the client to connect to, otherwise it will not be allowed to connect to the server
65
+
Also note that:
56
66
57
-
#### Docker
67
+
-`npm start` does **not** work via SSH. But you can use `DISPLAY=:0 nohup npm start &` instead. \
68
+
This starts the mirror on the remote display.
69
+
- If you want to debug on Raspberry Pi you can use `npm start dev` which will start MM with *Dev Tools* enabled.
70
+
- To access toolbar menu when in mirror mode, hit `ALT` key.
71
+
- To toggle the (web) `Developer Tools` from mirror mode, use `CTRL-SHIFT-I` or `ALT` and select `View`.
58
72
59
-
MagicMirror² in server only mode can be deployed using [Docker](https://docker.com). After a successful [Docker installation](https://docs.docker.com/engine/installation/) you just need to execute the following command in the shell:
|`/opt/magic_mirror/config`| Mount this volume to insert your own config into the docker container. |
74
-
|`/opt/magic_mirror/modules`| Mount this volume to add your own custom modules into the docker container. |
76
+
In some cases, you want to start the application without an actual app window. In this case, you can start MagicMirror² in server only mode by manually running `node serveronly` or using Docker. This will start the server, after which you can open the application in your browser of choice. Detailed description below.
75
77
76
-
You may need to add your Docker Host IP to your `ipWhitelist` option. If you have some issues setting up this configuration, check [this forum post](https://forum.magicmirror.builders/topic/1326/ipwhitelist-howto).
78
+
**Important:** Make sure that you whitelist the interface/ip (`ipWhitelist`) in the server config where you want the client to connect to, otherwise it will not be allowed to connect to the server. You also need to set the local host `address` field to `0.0.0.0` in order for the RPi to listen on all interfaces and not only `localhost` (default).
ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1", "::ffff:172.17.0.1"], // default -- need to add your IP here
85
+
...
81
86
};
82
87
```
83
88
84
-
If you want to run the server on a raspberry pi, use the `raspberry` tag. (bastilimbach/docker-magicmirror:raspberry)
85
-
86
-
#### Manual
87
89
88
-
1. Download and install the latest Node.js version.
89
-
2. Clone the repository and check out the master branch: `git clone https://github.com/MichMich/MagicMirror`
90
-
3. Enter the repository: `cd ~/MagicMirror`
91
-
4. Install and run the app: `npm install && node serveronly`
90
+
### Client Only
92
91
93
-
### Raspberry Configuration & Auto Start.
92
+
This is when you already have a server running remotely and want your RPi to connect as a standalone client to this instance, to show the MM from the server. Then from your RPi, you run it with: `node clientonly --address 192.168.1.5 --port 8080`. (Specify the ip address and port number of the server)
94
93
95
-
The following wiki links are helpful in the configuration of your MagicMirror² operating system:
96
-
-[Configuring the Raspberry Pi](https://github.com/MichMich/MagicMirror/wiki/Configuring-the-Raspberry-Pi)
If you want to update your MagicMirror² to the latest version, use your terminal to go to your Magic Mirror folder and type the following command:
97
+
MagicMirror² in server only mode can be deployed using [Docker](https://docker.com). After a successful [Docker installation](https://docs.docker.com/engine/installation/) you just need to execute the following command in the shell:
To get more information about the available Dockerfile versions and configurations head over to the respective [GitHub repository](https://github.com/bastilimbach/docker-MagicMirror).
106
109
107
-
If you changed nothing more than the config or the modules, this should work without any problems.
108
-
Type `git status` to see your changes, if there are any, you can reset them with `git reset --hard`. After that, git pull should be possible.
109
110
110
111
## Configuration
111
112
112
-
1. Duplicate `config/config.js.sample` to `config/config.js`. **Note:** If you used the installer script. This step is already done for you.
113
-
2. Modify your required settings.
113
+
### Raspberry Specific
114
+
115
+
The following wiki links are helpful for the initial configuration of your MagicMirror² operating system:
116
+
-[Configuring the Raspberry Pi](https://github.com/MichMich/MagicMirror/wiki/Configuring-the-Raspberry-Pi)
1. Copy `config/config.js.sample` to `config/config.js`. \
123
+
**Note:** If you used the installer script. This step is already done for you.
124
+
125
+
2. Modify your required settings. \
126
+
Note: You'll can check your configuration running `npm run config:check`.
114
127
115
-
Note: You'll can check your configuration running the follow command:
116
-
```bash
117
-
npm run config:check
118
-
```
119
128
120
129
The following properties can be configured:
121
130
122
131
|**Option**|**Description**|
123
132
| --- | --- |
124
133
|`port`| The port on which the MagicMirror² server will run on. The default value is `8080`. |
125
-
|`address`| The ip address the accept connections. The default open bind `localhost`. Example config: `192.168.10.100`. |
126
-
|`ipWhitelist`| The list of IPs from which you are allowed to access the MagicMirror². The default value is `["127.0.0.1", "::ffff:127.0.0.1", "::1"]`. It is possible to specify IPs with subnet masks (`["127.0.0.1", "127.0.0.1/24"]`) or define ip ranges (`["127.0.0.1", ["192.168.0.1", "192.168.0.100"]]`). Set `[]` to allow all IP addresses. For more information about how configure this directive see the[follow post ipWhitelist HowTo](https://forum.magicmirror.builders/topic/1326/ipwhitelist-howto)|
134
+
|`address`| The *interface*ip address on which to accept connections. The default is `localhost`, which would prevent exposing the built-in webserver to machines on the local network. To expose it to other machines, use: `0.0.0.0`. |
135
+
|`ipWhitelist`| The list of IPs from which you are allowed to access the MagicMirror². The default value is `["127.0.0.1", "::ffff:127.0.0.1", "::1"]`, which is from `localhost` only. Add your IP when needed. You can also specify IP ranges with subnet masks (`["127.0.0.1", "127.0.0.1/24"]`) or directly with (`["127.0.0.1", ["192.168.0.1", "192.168.0.100"]]`). Set `[]` to allow all IP addresses. For more information see:[follow post ipWhitelist HowTo](https://forum.magicmirror.builders/topic/1326/ipwhitelist-howto)|
127
136
|`zoom`| This allows to scale the mirror contents with a given zoom factor. The default value is `1.0`|
128
137
|`language`| The language of the interface. (Note: Not all elements will be localized.) Possible values are `en`, `nl`, `ru`, `fr`, etc., but the default value is `en`. |
129
138
|`timeFormat`| The form of time notation that will be used. Possible values are `12` or `24`. The default is `24`. |
@@ -156,12 +165,20 @@ The following modules are installed by default.
156
165
-[**Hello World**](modules/default/helloworld)
157
166
-[**Alert**](modules/default/alert)
158
167
159
-
For more available modules, check out out the wiki page:[MagicMirror² Modules](https://github.com/MichMich/MagicMirror/wiki/MagicMirror²-Modules). If you want to build your own modules, check out the [MagicMirror² Module Development Documentation](modules) and don't forget to add it to the wiki and the [forum](https://forum.magicmirror.builders/category/7/showcase)!
168
+
For more available modules, check out out the wiki page [MagicMirror² 3rd Party Modules](https://github.com/MichMich/MagicMirror/wiki/3rd-party-modules). If you want to build your own modules, check out the [MagicMirror² Module Development Documentation](modules) and don't forget to add it to the wiki and the [forum](https://forum.magicmirror.builders/category/7/showcase)!
160
169
161
-
## Known issues
162
170
163
-
- Electron seems to have some issues on certain Raspberry Pi 2's. See [#145](https://github.com/MichMich/MagicMirror/issues/145).
164
-
- MagicMirror² (Electron) sometimes quits without an error after an extended period of use. See [#150](https://github.com/MichMich/MagicMirror/issues/150).
171
+
## Updating
172
+
173
+
If you want to update your MagicMirror² to the latest version, use your terminal to go to your Magic Mirror folder and type the following command:
174
+
175
+
```bash
176
+
git pull && npm install
177
+
```
178
+
179
+
If you changed nothing more than the config or the modules, this should work without any problems.
180
+
Type `git status` to see your changes, if there are any, you can reset them with `git reset --hard`. After that, git pull should be possible.
181
+
165
182
166
183
## Community
167
184
@@ -180,6 +197,22 @@ Please keep the following in mind:
180
197
181
198
Thanks for your help in making MagicMirror² better!
182
199
200
+
## Manifesto
201
+
202
+
A real Manifesto is still to be written. Till then, Michael's response on [one of the repository issues](https://github.com/MichMich/MagicMirror/issues/1174) gives a great summary:
203
+
204
+
> "... I started this project as an ultimate starter project for Raspberry Pi enthusiasts. As a matter of fact, for most of the contributors, the MagicMirror project is the first open source project they ever contributed to. This is one of the reasons why the MagicMirror project is featured in several RasPi magazines.
205
+
>
206
+
>The project has a lot of opportunities for improvement. We could use a powerful framework like Vue to ramp up the development speed. We could use SASS for better/easier css implementations. We could make it an NPM installable package. And as you say, we could bundle it up. The big downside of of of these changes is that it over complicates things: a user no longer will be able to open just one file and make a small modification and see how it works out.
207
+
>
208
+
>Of course, a bundled version can be complimentary to the regular un-bundled version. And I'm sure a lot of (new) users will opt for the bundled version. But this means those users won't be motivated to take a peek under the hood. They will just remain 'users'. They won't become contributors, and worse: they won't be motivated to take their first steps in software development.
209
+
>
210
+
>And to be honest: motivating curious users to step out of their comfort zone and take those first steps is what drives me in this project. Therefor my ultimate goal is this project is to keep it as accessible as possible."
211
+
>
212
+
> ~ Michael Teeuw
213
+
214
+
215
+
183
216
<palign="center">
184
217
<br>
185
218
<a href="https://forum.magicmirror.builders/topic/728/magicmirror-is-voted-number-1-in-the-magpi-top-50"><img src="https://magicmirror.builders/img/magpi-best-watermark-custom.png" width="150" alt="MagPi Top 50"></a>
0 commit comments