Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] Widget Support #382

Merged
merged 124 commits into from
Dec 29, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
124 commits
Select commit Hold shift + click to select a range
cd3a304
:construction: Started working on itnitial state for widgets
Lissy93 Nov 13, 2021
50164bf
:art: Adds new CSS vars for widgets
Lissy93 Nov 28, 2021
6b4fbfe
:zap: Adds mixin for widgets
Lissy93 Nov 28, 2021
490c8e7
:construction: Basic structure for widgets
Lissy93 Nov 28, 2021
a0672c5
:card_file_box: Adds data key for widget local storage
Lissy93 Nov 28, 2021
080e684
:sparkles: Made a simple clock widget
Lissy93 Nov 28, 2021
c9f2483
:art: Improved code style in Section
Lissy93 Nov 30, 2021
57554dd
:zap: Reliability improvements for icon fallbacks
Lissy93 Nov 30, 2021
c14eaf0
:construction: Working on the weather widget
Lissy93 Dec 2, 2021
01fe0f0
:bento: Adds assets for weather widget
Lissy93 Dec 3, 2021
f6686d9
:memo: Adds docs for the weather widget
Lissy93 Dec 3, 2021
7851467
:zap: Refactors and improves the icon component
Lissy93 Dec 3, 2021
de97f56
:alien: Adds constants for weather API endpoint
Lissy93 Dec 3, 2021
3f8b180
:construction: Nearly finished the weather widget
Lissy93 Dec 3, 2021
c38a094
:sparkles: Adds a weather forecast widget
Lissy93 Dec 8, 2021
cf7e021
:sparkles: Adds a London Underground status widget
Lissy93 Dec 10, 2021
9915100
:heavy_plus_sign: Adds Frappe charts, for showing widget data
Lissy93 Dec 11, 2021
e8fa255
:zap: Adds second param to ErrorHandler for printing stack trace
Lissy93 Dec 11, 2021
c12eac2
:lipstick: Adds Red styling for Line Closed status
Lissy93 Dec 11, 2021
ebd4c48
:sparkles: Develops a crypto price chart widget
Lissy93 Dec 11, 2021
65733d2
:sparkles: Develops a crypto price chart widget
Lissy93 Dec 11, 2021
d543277
:zap: Adds helper functions for converting date, and currency
Lissy93 Dec 11, 2021
d3c4fb5
:train: Updates train status codes
Lissy93 Dec 11, 2021
985b000
:sparkles: Adds a crypto price watch-list widget
Lissy93 Dec 11, 2021
9d21fa4
:sparkles: Adds XKCD comic widget
Lissy93 Dec 11, 2021
f6e1192
:sparkles: Adds XKCD comic widget
Lissy93 Dec 11, 2021
464eef9
:memo: Adds screenshots to widget docs
Lissy93 Dec 11, 2021
a77cb94
:sparkles: Creates an FX widget
Lissy93 Dec 12, 2021
51b7e63
:sparkles: Creates an stock price chart widget
Lissy93 Dec 12, 2021
d9759c0
:sparkles: Creates a joke-fetching widget
Lissy93 Dec 12, 2021
ae8179e
:sparkles: Creates an embedable webpage widget
Lissy93 Dec 13, 2021
2075cbc
:sparkles: Adds refresh button to widget, for reloading data
Lissy93 Dec 13, 2021
aa770d6
:speech_balloon: Adds links to security docs in app info modal
Lissy93 Dec 13, 2021
f9a0005
:goal_net: Updates error catching functionality, to handle stack traces
Lissy93 Dec 13, 2021
70f99ea
:sparkles: Adds ability to open widgets in full-page
Lissy93 Dec 13, 2021
19d3c03
:fire: Remove previous widget implementation from Home page
Lissy93 Dec 13, 2021
0a4d021
:goal_net: Adds graceful error hadling to widgets
Lissy93 Dec 13, 2021
5cb588a
:art: Handle loading state for widgets
Lissy93 Dec 13, 2021
642cfc6
:sparkles: Builds live flight data widget
Lissy93 Dec 14, 2021
f61366c
:sparkles: Builds a content embed widget
Lissy93 Dec 14, 2021
6df95c9
:sparkles: Made an RSS feed widget
Lissy93 Dec 14, 2021
3da76ce
:ghost: A simple example widget
Lissy93 Dec 14, 2021
66067b0
:fire: Deletes ExampleWidget, adds tutorial for creating widget
Lissy93 Dec 14, 2021
283d8c7
:sparkles: Builds CPU history widget
Lissy93 Dec 15, 2021
f1bc2a2
:sparkles: Builds system load usage widget
Lissy93 Dec 15, 2021
c5f9f5e
:lipstick: Allows user to customize chart colors
Lissy93 Dec 16, 2021
382d43f
:lipstick: Allows user to set chart colors and height
Lissy93 Dec 16, 2021
6e84dac
:sparkles: Builds system memory monitoring widget
Lissy93 Dec 16, 2021
e0b09d4
:sparkles: Adds widget to fetch and display system stats
Lissy93 Dec 16, 2021
771e2f3
:zap: Moves common functionality into reusable mixin
Lissy93 Dec 16, 2021
a23d565
:memo: Updates widget development guide
Lissy93 Dec 16, 2021
599a5cc
:art: Sort widget components alphabetically
Lissy93 Dec 16, 2021
b7cd2d4
:sparkles: Builds a widget for CodeStats
Lissy93 Dec 16, 2021
be5188e
:sparkles: Adds upcoming public holidays widget
Lissy93 Dec 17, 2021
08de6b8
:sparkles: Adds widget for showing public IP
Lissy93 Dec 17, 2021
24cf0d1
:sparkles: Adds GitHub profile stats widget
Lissy93 Dec 17, 2021
7084ca1
:sparkles: Adds widget to show trending GitHub repos
Lissy93 Dec 18, 2021
fad1e5f
:sparkles: Adds NASA APOD widget
Lissy93 Dec 18, 2021
dece5c5
:sparkles: Adds a Pi-Hole stats widget
Lissy93 Dec 18, 2021
79c55af
:sparkles: Adds a Pi-Hole top queries widget
Lissy93 Dec 18, 2021
9cbf086
:sparkles: Adds a widget that pi-hole shows traffic graph
Lissy93 Dec 18, 2021
0b868af
Merge branch 'master' of github.com:Lissy93/dashy into FEATURE/basic-…
Lissy93 Dec 18, 2021
8686a99
:sparkles: Adds a news headlines widget
Lissy93 Dec 19, 2021
d855c46
:art: Sorts widget API endpoints alphabetically
Lissy93 Dec 19, 2021
f46d1df
:lipstick: Updates themes with widget styles
Lissy93 Dec 19, 2021
58cb439
:recycle: Refactors date time method
Lissy93 Dec 19, 2021
676d1cb
:sparkles: Writes a CORS proxy, to secure widget requests
Lissy93 Dec 19, 2021
8ae310e
:sparkles: Adds a cron job monitoring widget
Lissy93 Dec 19, 2021
901c873
:sparkles: Adds a StatPing widget
Lissy93 Dec 19, 2021
ff6fb33
:memo: Updates widget docs
Lissy93 Dec 19, 2021
5d5528a
Merge branch 'master' of github.com:Lissy93/dashy into FEATURE/basic-…
Lissy93 Dec 19, 2021
0653c17
:memo: Adds link to Widgets docs in contents page
Lissy93 Dec 20, 2021
b31c44f
:hammer: Specify if production in webpack build
Lissy93 Dec 21, 2021
f243d9b
:hammer: Enable Vue performance tools when in dev mode
Lissy93 Dec 21, 2021
7a63fdc
:package: Modifies how widgets are compiled
Lissy93 Dec 21, 2021
c17b93c
:zap: Uses lazy loading for importing widgets
Lissy93 Dec 22, 2021
c4134e0
:fire: Removes previous widget data structure
Lissy93 Dec 22, 2021
5194ba2
:construction: A homepage mixin for sharing logic
Lissy93 Dec 22, 2021
c1d10d2
:goal_net: Error catching for when sections contain only widgets inst…
Lissy93 Dec 22, 2021
0074c63
:construction: Commiting to switch computers...
Lissy93 Dec 23, 2021
d085496
Merge branch 'FEATURE/basic-widget-support' of github.com:Lissy93/das…
Lissy93 Dec 23, 2021
96005e7
:zap: Applies custom item color, if speccified
Dec 25, 2021
631470c
:wrench: Remove Vue mode from Webpack config
Dec 25, 2021
90dd351
:adhesive_bandage: Waits for document to render before embeding
Dec 25, 2021
c99c517
:zap: Adds option to specify height of frame widget
Dec 25, 2021
33d500b
:art: Adds method to round price data to apprpriate decimal
Dec 25, 2021
ad0be86
:lipstick: Minor widget style improvements
Dec 25, 2021
0c5133f
:star2: Adds Crypto Dash example to showcase
Dec 25, 2021
63dfa11
:zap: Applies custom item color, if speccified
Lissy93 Dec 25, 2021
20d42c9
:wrench: Remove Vue mode from Webpack config
Lissy93 Dec 25, 2021
83f61be
:adhesive_bandage: Waits for document to render before embeding
Lissy93 Dec 25, 2021
c591a03
:zap: Adds option to specify height of frame widget
Lissy93 Dec 25, 2021
e55c51a
:art: Adds method to round price data to apprpriate decimal
Lissy93 Dec 25, 2021
ce8cdd3
:lipstick: Minor widget style improvements
Lissy93 Dec 25, 2021
0da8c31
:star2: Adds Crypto Dash example to showcase
Lissy93 Dec 25, 2021
6fe13d1
Merge branch 'FEATURE/basic-widget-support' of github.com:Lissy93/das…
Dec 25, 2021
6c0fb6f
:memo: Adds docs about global widget UI options
Dec 26, 2021
802fb62
:sparkles: Adds widget for monitoring CVE vulnerabilities
Dec 26, 2021
970b417
:bug: Fix logic in GH profile widget
Dec 26, 2021
1324b43
:adhesive_bandage: Fixes all minor issues raised by DeepScan
Dec 26, 2021
9c6c35e
:wheelchair: Fixes accesibility issues in some Widgets
Dec 26, 2021
8ad6a2d
:rotating_light: Removed superfluous argument passed to parseFloat
Dec 26, 2021
1296ca0
:sparkles: Adds widget for monitoring CVE vulnerabilities
Lissy93 Dec 26, 2021
5867601
:bug: Fix logic in GH profile widget
Lissy93 Dec 26, 2021
6e3d26d
:adhesive_bandage: Fixes all minor issues raised by DeepScan
Lissy93 Dec 26, 2021
2763e9e
:wheelchair: Fixes accesibility issues in some Widgets
Lissy93 Dec 26, 2021
4366470
:rotating_light: Removed superfluous argument passed to parseFloat
Lissy93 Dec 26, 2021
fac3e8e
Merge branch 'FEATURE/basic-widget-support' of github.com:Lissy93/das…
Lissy93 Dec 27, 2021
15eddb1
:white_check_mark: Code style improvments, to pass SonarCloud review
Lissy93 Dec 27, 2021
76ea9e0
:lock: Use https, for CVE lookup library
Lissy93 Dec 27, 2021
051ed18
:lock: Properly deregisters event listener on destroy
Lissy93 Dec 27, 2021
3ffdf75
:memo: Adds privacy info for each widget in docs
Lissy93 Dec 27, 2021
27404f6
:globe_with_meridians: Adds translations for widget text
Lissy93 Dec 27, 2021
7cd6e64
:bookmark: Bumps to 1.9.4 and updates changelog
Lissy93 Dec 27, 2021
e628650
:memo: Adds widget docs to readme
Lissy93 Dec 27, 2021
9ab8419
:memo: Adds widget docs to readme
Lissy93 Dec 27, 2021
41d9ead
:zap: Adds support for widgets in Minimal View
Lissy93 Dec 27, 2021
a6b9648
:octocat: Adds widget to dropdown in issue template
Lissy93 Dec 28, 2021
5684bf0
:sparkles: Adds a Sports Scores widget
Lissy93 Dec 29, 2021
9933766
:lipstick: Display horizontally in wide mode
Lissy93 Dec 29, 2021
c4ac847
:adhesive_bandage: Minor formatting fix for stock and crypto price wi…
Lissy93 Dec 29, 2021
c650743
:lipstick: Shows country flag in exchange rate widget
Lissy93 Dec 29, 2021
aad7ab9
:truck: Refactored section helpers into own file
Lissy93 Dec 29, 2021
04a91cf
:twisted_rightwards_arrows: Rebased from master
Lissy93 Dec 29, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Changelog

## ✨ 1.9.4 - Widget Support [PR #382](https://github.com/Lissy93/dashy/pull/382)
- Adds support for dynamic content, through widgets
- Adds 30+ pre-built widgets for general info and self-hosted services
- Writes docs on widget usage

## ⚡️ 1.9.2 - Native SSL Support + Performance Improvements [PR #326](https://github.com/Lissy93/dashy/pull/326)
- Updates the server to use Express, removing serve-static, connect and body-parser
- Adds native support for passing in self-signed SSL certificates and updates docs
Expand Down
126 changes: 64 additions & 62 deletions .github/ISSUE_TEMPLATE/question.yml
Original file line number Diff line number Diff line change
@@ -1,62 +1,64 @@
name: Question 🤷‍♂️
description: Got a question about Dashy, deployment, development or usage?
title: '[QUESTION] <title>'
labels: ['🤷‍♂️ Question']

body:
# Filed 1 - Intro Text
- type: markdown
attributes:
value: >
Thanks for using Dashy! Questions are welcome, but in the future will be moving over to
[Discussions](https://github.com/Lissy93/dashy/discussions) page.
Quick questions should be asked [here](https://github.com/Lissy93/dashy/discussions/148) instead.
validations:
required: false

# Field 2 - The actual question
- type: textarea
id: question
attributes:
label: Question
description: Outline your question in a clear and concise manner
validations:
required: true

# Field 3 - Category
- type: dropdown
id: category
attributes:
label: Category
description: What part of the application does this relate to?
options:
- Setup and Deployment
- Configuration
- App Usage
- Development
- Documentation
- Alternate Views
- Authentication
- Using Icons
- Language Support
- Search & Shortcuts
- Status Checking
- Theming & Layout
validations:
required: true

# Field 4 - User has RTFM first, and agrees to code of conduct, etc
- type: checkboxes
id: idiot-check
attributes:
label: Please tick the boxes
description: Before submitting, please ensure that
options:
- label: You are using a [supported](https://github.com/Lissy93/dashy/blob/master/.github/SECURITY.md#supported-versions) version of Dashy (check the first two digits of the version number)
required: true
- label: You've checked that this [question hasn't already been raised](https://github.com/Lissy93/dashy/issues?q=is%3Aissue)
required: true
- label: You've checked the [docs](https://github.com/Lissy93/dashy/tree/master/docs#readme) and [troubleshooting](https://github.com/Lissy93/dashy/blob/master/docs/troubleshooting.md#troubleshooting) guide
required: true
- label: You agree to the [code of conduct](https://github.com/Lissy93/dashy/blob/master/.github/CODE_OF_CONDUCT.md#contributor-covenant-code-of-conduct)
required: true
name: Question 🤷‍♂️
description: Got a question about Dashy, deployment, development or usage?
title: '[QUESTION] <title>'
labels: ['🤷‍♂️ Question']

body:
# Filed 1 - Intro Text
- type: markdown
attributes:
value: >
Thanks for using Dashy! Questions are welcome, but in the future will be moving over to
[Discussions](https://github.com/Lissy93/dashy/discussions) page.
Quick questions should be asked [here](https://github.com/Lissy93/dashy/discussions/148) instead.
validations:
required: false

# Field 2 - The actual question
- type: textarea
id: question
attributes:
label: Question
description: Outline your question in a clear and concise manner
validations:
required: true

# Field 3 - Category
- type: dropdown
id: category
attributes:
label: Category
description: What part of the application does this relate to?
options:
- Setup and Deployment
- Configuration
- App Usage
- Development
- Documentation
- Alternate Views
- Authentication
- Using Icons
- Widgets
- Actions
- Language Support
- Search & Shortcuts
- Status Checking
- Theming & Layout
validations:
required: true

# Field 4 - User has RTFM first, and agrees to code of conduct, etc
- type: checkboxes
id: idiot-check
attributes:
label: Please tick the boxes
description: Before submitting, please ensure that
options:
- label: You are using a [supported](https://github.com/Lissy93/dashy/blob/master/.github/SECURITY.md#supported-versions) version of Dashy (check the first two digits of the version number)
required: true
- label: You've checked that this [question hasn't already been raised](https://github.com/Lissy93/dashy/issues?q=is%3Aissue)
required: true
- label: You've checked the [docs](https://github.com/Lissy93/dashy/tree/master/docs#readme) and [troubleshooting](https://github.com/Lissy93/dashy/blob/master/docs/troubleshooting.md#troubleshooting) guide
required: true
- label: You agree to the [code of conduct](https://github.com/Lissy93/dashy/blob/master/.github/CODE_OF_CONDUCT.md#contributor-covenant-code-of-conduct)
required: true
18 changes: 18 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
- [🎨 Theming](#theming-)
- [🧸 Icons](#icons-)
- [🚦 Status Indicators](#status-indicators-)
- [📊 Widgets](#widgets-)
- [💂 Authentication](#authentication-)
- [🖱️ Opening Methods](#opening-methods-%EF%B8%8F)
- [👓 Alternate Views](#alternate-views-)
Expand Down Expand Up @@ -70,6 +71,7 @@
- 🎨 Multiple built-in color themes, with UI color editor and support for custom CSS
- 🧸 Many icon options - Font-Awesome, homelab icons, auto-fetching Favicon, images, emojis, etc.
- 🚦 Status monitoring for each of your apps/links for basic availability and uptime checking
- 📊 Use widgets to display info and dynamic content from self-hosted services
- 💂 Optional authentication with multi-user access, configurable privileges, and SSO support
- 🌎 Multi-language support, with 10+ human-translated languages, and more on the way
- ☁ Optional, encrypted, free off-site cloud backup and restore feature available
Expand Down Expand Up @@ -235,6 +237,22 @@ Status indicators can be globally enabled by setting `appConfig.statusCheck: tru
<img alt="Status Checks demo" src="https://raw.githubusercontent.com/Lissy93/dashy/master/docs/assets/status-check-demo.gif" width="600" />
</p>

**[⬆️ Back to Top](#dashy)**

---

## Widgets 📊

> For full widget documentation, see: [**Widgets**](./docs/widgets.md)

You can display dynamic content from services in the form of widgets. There are several pre-built widgets availible for showing useful info, and integrations with commonly self-hosted services, but you can also easily create your own for almost any app.


<p align="center">
<img width="600" src="https://i.ibb.co/GFjXVHy/dashy-widgets.png" />
</p>


**[⬆️ Back to Top](#dashy)**

---
Expand Down
Loading