From 35ccf1bf7b28d95828a31bfcc9b6b45e5abb0776 Mon Sep 17 00:00:00 2001 From: Alicia Sykes Date: Thu, 27 Jan 2022 07:28:16 +0000 Subject: [PATCH 01/11] :memo: Updates status check in troubleshooting docs --- README.md | 54 +++++++++++++++-------------------------- docs/troubleshooting.md | 4 +++ 2 files changed, 23 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 539bde4a..7c2b7dfb 100644 --- a/README.md +++ b/README.md @@ -312,6 +312,7 @@ There are several different ways you can launch apps. You can specify the defaul - `newtab` - The app will be launched in a new tab (or use Ctrl + Click) - `modal` - Launch app in a resizable/ movable popup modal on the current page (or use Alt + Click) - `workspace` - Changes to Workspace view and launches app +- `clipboard` - Copy the app's URL to your system clipboard - `top` - Opens in the top-most browsing context, useful if you're accessing Dashy through an iframe --- @@ -462,7 +463,7 @@ Several areas that we need a bit of help with at the moment are: - Complete a [short survey](https://survey.typeform.com/to/gl0L68ou) to have your say about future features - Share your dashboard in the [Showcase](https://github.com/Lissy93/dashy/blob/master/docs/showcase.md#dashy-showcase-), to inspire others - Spread the word by sharing Dashy or a screenshot of your dashboard to help new users discover it -- Submit a PR to add a new feature, fix a bug, update the docs, add a theme, or something else +- Submit a PR to add a new feature, fix a bug, update the docs, add a theme, widget or something else - Star Dashy on GitHub/ DockerHub or leave an upvote / review on [these platforms](https://github.com/Lissy93/dashy/blob/master/docs/contributing.md#star-upvote-or-leave-a-review) [![Sponsor Lissy93 on GitHub](./docs/assets/sponsor-button.svg)](https://github.com/sponsors/Lissy93) @@ -540,8 +541,9 @@ To set up the development environment: 1. Get Code: `git clone https://github.com/Lissy93/dashy.git` and `cd dashy` 2. Install dependencies: `yarn` 3. Start dev server: `yarn dev` +4. Open the browser: `http://localhost:8080` -Hot reload is enabled, so changes will be automatically detected, compiled and, refreshed. +When you're ready, you can build the production app with `yarn build`, and then run it with `yarn start` If you're new to web development, I've put together a short [list of resources](https://github.com/Lissy93/dashy/blob/master/docs/developing.md#resources-for-beginners) to help beginners get started @@ -556,22 +558,6 @@ If you're new to web development, I've put together a short [list of resources]( --- -## Release Schedule 🗞️ - -> For full release, automation and CI documentation, see: [**Releases & Workflows**](./docs/release-workflow.md) - -Dashy is under active development, with features, improvements, and changes pushed almost daily. - -We're using [Semantic Versioning](https://semver.org/) to indicate major, minor, and patch versions. You can find the current version number in the readme and check the version of your app under the config menu. The version number is pulled from the [package.json](https://github.com/Lissy93/dashy/blob/master/package.json#L3) file. - -Typically there is a new major release every 2 - 4 weeks, usually on Sunday, and you can view these under the [Releases Page](https://github.com/Lissy93/dashy/releases) and [on DockerHub](https://hub.docker.com/r/lissy93/dashy/tags). In addition, new minor versions are pushed several times a week and are [tagged here](https://github.com/Lissy93/dashy/tags). - -For a full breakdown of each change, you can view the [Changelog](https://github.com/Lissy93/dashy/blob/master/.github/CHANGELOG.md). In addition, each new feature or significant change needs to be submitted through [a pull request](https://github.com/Lissy93/dashy/pulls?q=is%3Apr), which makes it easy to review and track these changes, and roll back if needed. - -**[⬆️ Back to Top](#dashy)** - ---- - ## Documentation 📘 > For full docs, see: **[Documentation Contents](./docs/readme.md)** #### Running Dashy @@ -581,6 +567,17 @@ For a full breakdown of each change, you can view the [Changelog](https://github - 💻 [Management](/docs/management.md) - Managing your app, updating, security, web server configuration, etc - 🚒 [Troubleshooting](/docs/troubleshooting.md) - Common errors and problems, and how to fix them +#### Feature Docs +- 🛡️ [Authentication](/docs/authentication.md) - Guide to setting up authentication to protect your dashboard +- 🌈 [Alternate Views](/docs/alternate-views.md) - Outline of available pages / views and item opening methods +- 💾 [Backup & Restore](/docs/backup-restore.md) - Guide to backing up config with Dashy's cloud sync feature +- 🧸 [Icons](/docs/icons.md) - Outline of all available icon types for sections and items, with examples +- 🌐 [Multi-Language Support](/docs/multi-language-support.md) - Switching languages, and adding a new locales +- 🚦 [Status Indicators](/docs/status-indicators.md) - Using Dashy to monitor uptime and status of your apps +- 🔍 [Searching & Shortcuts](/docs/searching.md) - Searching, launching methods + keyboard shortcuts +- 🎨 [Theming](/docs/theming.md) - Complete guide to applying, writing and modifying themes + styles +- 📊 [Widgets](/docs/widgets.md) - List of all dynamic content widgets, with usage guides and examples + #### Development and Contributing - 🧱 [Developing](/docs/developing.md) - Running Dashy development server locally, and general workflow - 🛎️ [Development Guides](/docs/development-guides.md) - Common development tasks, to help new contributors @@ -589,16 +586,6 @@ For a full breakdown of each change, you can view the [Changelog](https://github - 🏆 [Credits](/docs/credits.md) - Shout out to the amazing people who have contributed so far - 🗞️ [Release Workflow](/docs/release-workflow.md) - Info about releases, CI and automated tasks -#### Feature Docs -- 🛡️ [Authentication](/docs/authentication.md) - Guide to setting up authentication to protect your dashboard -- 🧿 [Alternate Views](/docs/alternate-views.md) - Outline of available pages / views and item opening methods -- 💾 [Backup & Restore](/docs/backup-restore.md) - Guide to Dashy's cloud sync feature -- 🧸 [Icons](/docs/icons.md) - Outline of all available icon types for sections and items -- 🌐 [Language Switching](/docs/multi-language-support.md) - How to change language, add a language, or update text -- 🚦 [Status Indicators](/docs/status-indicators.md) - Using Dashy to monitor uptime and status of your apps -- 🔍 [Searching & Shortcuts](/docs/searching.md) - Finding and launching your apps, and using keyboard shortcuts -- 🎨 [Theming](/docs/theming.md) - Complete guide to applying, writing and modifying themes and styles - #### Misc - 🔐 [Privacy & Security](/docs/privacy.md) - List of requests, potential issues, and security resources - 📄 [License](/LICENSE) - Copy of the MIT License @@ -612,14 +599,11 @@ For a full breakdown of each change, you can view the [Changelog](https://github ## Roadmap 🛣️ -> For past and future app updates, see: [**Changelog**](/.github/CHANGELOG.md) +For upcoming features that will be released in the near future, see the [**Current Roadmap**](https://github.com/Lissy93/dashy/discussions/405) -The following features and tasks are planned for the near future. -- Widget support- cards showing live stats and interactive content from your self-hosted services -- ✅ UI editor and visual configurator -- Replacement of Node backend with Go - - **[⬆️ Back to Top](#dashy)** +For past updates, see the [**Changelog**](/.github/CHANGELOG.md) + +**[⬆️ Back to Top](#dashy)** --- diff --git a/docs/troubleshooting.md b/docs/troubleshooting.md index 721a78ec..ff35e29c 100644 --- a/docs/troubleshooting.md +++ b/docs/troubleshooting.md @@ -211,6 +211,10 @@ If the URL you are checking has an unsigned certificate, or is not using HTTPS, If you get an error, like `Service Unavailable: Server resulted in a fatal error`, even when it's definitely online, this is most likely caused by missing the protocol. Don't forget to include `https://` (or whatever protocol) before the URL, and ensure that if needed, you've specified the port. +Running Dashy in HOST network mode, instead of BRIDGE will allow status check access to other services in HOST mode. For more info, see [#445](https://github.com/Lissy93/dashy/discussions/445). + +If you have firewall rules configured, then ensure that they don't prevent Dashy from making requests to the other services you are trying to access. + Currently, the status check needs a page to be rendered, so if this URL in your browser does not return anything, then status checks will not work. This may be modified in the future, but in the meantime, a fix would be to make your own status service, which just checks if your app responds with whatever code you'd like, and then return a 200 plus renders an arbitrary message. Then just point `statusCheckUrl` to your custom page. For further troubleshooting, use an application like [Postman](https://postman.com) to diagnose the issue. Set the parameter to `GET`, and then make a call to: `https://[url-of-dashy]/status-check/?&url=[service-url]`. Where the service URL must have first been encoded (e.g. with `encodeURIComponent()` or [urlencoder.io](https://www.urlencoder.io/)) From 6e2ae6d3fc05859331ee621936bae8c9c0aa8f62 Mon Sep 17 00:00:00 2001 From: Alicia Sykes Date: Fri, 28 Jan 2022 13:33:41 +0000 Subject: [PATCH 02/11] :bug: Fixes numbers being removed from tags (#430) --- src/components/InteractiveEditor/EditItem.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/InteractiveEditor/EditItem.vue b/src/components/InteractiveEditor/EditItem.vue index 32539351..5be36839 100644 --- a/src/components/InteractiveEditor/EditItem.vue +++ b/src/components/InteractiveEditor/EditItem.vue @@ -226,7 +226,7 @@ export default { if (newItem.hotkey) newItem.hotkey = parseInt(newItem.hotkey, 10); const strToTags = (str) => { const tagArr = str.split(','); - return tagArr.map((tag) => tag.trim().toLowerCase().replace(/[^a-z]+/, '')); + return tagArr.map((tag) => tag.trim().toLowerCase().replace(/[^a-z0-9]+/, '')); }; const strToBool = (str) => { if (str === undefined) return undefined; From eb1bc69155a3d608ddf8c3f70f581442acbe64d8 Mon Sep 17 00:00:00 2001 From: Alicia Sykes Date: Fri, 28 Jan 2022 23:21:30 +0000 Subject: [PATCH 03/11] :zap: Refactors NetData widget data requeest --- src/components/Widgets/NdCpuHistory.vue | 4 +--- src/components/Widgets/NdLoadHistory.vue | 12 +----------- src/components/Widgets/NdRamHistory.vue | 4 +--- src/components/Widgets/WidgetBase.vue | 2 +- 4 files changed, 4 insertions(+), 18 deletions(-) diff --git a/src/components/Widgets/NdCpuHistory.vue b/src/components/Widgets/NdCpuHistory.vue index 52ce8ca1..49e74ffe 100644 --- a/src/components/Widgets/NdCpuHistory.vue +++ b/src/components/Widgets/NdCpuHistory.vue @@ -33,9 +33,7 @@ export default { methods: { /* Make GET request to NetData */ fetchData() { - this.makeRequest(this.endpoint).then( - (response) => { this.processData(response); }, - ); + this.makeRequest(this.endpoint).then(this.processData); }, /* Assign data variables to the returned data */ processData(inputData) { diff --git a/src/components/Widgets/NdLoadHistory.vue b/src/components/Widgets/NdLoadHistory.vue index 2d10bb05..3be50f64 100644 --- a/src/components/Widgets/NdLoadHistory.vue +++ b/src/components/Widgets/NdLoadHistory.vue @@ -3,7 +3,6 @@