Lanie Molinar Carmelo<p><strong>Help Needed: Homepage Dashboard "Failed to construct 'URL'" Error</strong></p><p>Hi everyone! 👋 </p><p>I'm encountering a persistent issue with my self-hosted Homepage dashboard (v1.1.1). Some tabs with bookmarks fail to load, showing the error: </p><blockquote><p><strong>TypeError: Failed to construct 'URL': Invalid URL</strong> </p></blockquote><p>This happens on multiple tabs, including <code>Accessibility_Resources</code> and <code>Shopping</code>. I've tried troubleshooting by: </p><ul><li>Validating my YAML files (all are valid).<br></li><li>Using lowercase tab names without special characters.<br></li><li>Ensuring all URLs in <code>bookmarks.yaml</code> are absolute (<code>http://</code> or <code>https://</code>).<br></li><li>Clearing browser cache and testing in multiple browsers.<br></li></ul><p>Despite these efforts, the issue persists. The error appears in the browser console as follows: </p><pre><code>TypeError: Failed to construct 'URL': Invalid URL<br> at F (index-3a04b80eb558747c.js:1:42899)<br> at af (framework-bbeeca9707659ffa.js:1:65163)<br> ...<br></code></pre><p>I suspect the issue might be related to how Homepage processes bookmarks or tab names internally. Below are my full configuration files for reference (API keys and sensitive data redacted): </p> <p><strong><strong>widgets.yaml</strong></strong></p><pre><code>- search:<br> provider: custom<br> url: https://search.laniecarmelo.tech/search?q=%s<br> target: _blank<br> suggestionUrl: https://search.laniecarmelo.tech/autocompleter?q=%s<br> showSearchSuggestions: true<br><br>- datetime:<br> format:<br> dateStyle: full<br> timeStyle: long<br> hour12: true<br><br>- openmeteo:<br> label: Pipe Creek, TX<br> latitude: 29.538<br> longitude: -98.524<br> units: imperial<br> timezone: America/Chicago<br></code></pre> <p><strong><strong>docker.yaml</strong></strong></p><pre><code>my-docker:<br> socket: /var/run/docker.sock<br></code></pre> <p><strong><strong>bookmarks.yaml</strong></strong></p><pre><code>---<br>- Accessibility_Resources:<br> - WebAIM Accessibility Tools:<br> abbr: WT<br> href: https://webaim.org/resources/<br> description: Tools and resources for web accessibility testing.<br> - A11Y Project:<br> abbr: AP<br> href: https://www.a11yproject.com/<br> description: Community-driven effort to make web accessibility easier.<br> - W3C Web Accessibility Initiative:<br> abbr: WA<br> href: https://www.w3.org/WAI/<br> description: Guidelines and resources for web accessibility.<br> - WCAG Guidelines:<br> abbr: WG<br> href: https://www.w3.org/WAI/WCAG22/quickref/<br> description: Quick reference for WCAG 2.1 guidelines.<br> - Accessibility Resources:<br> abbr: AR<br> href: https://www.w3.org/WAI/resources/<br> description: Comprehensive resources for web accessibility.<br> - Accessibility Tools:<br> abbr: AT<br> href: https://www.w3.org/WAI/test-evaluate/<br> description: Tools for testing and evaluating web accessibility.<br> - Accessibility Tutorials:<br> abbr: TU<br> href: https://www.w3.org/WAI/tutorials/<br> description: Tutorials on web accessibility best practices.<br> - WebAlign:<br> abbr: WL<br> href: https://members.convergeaccessibility.com/member-log-in/<br> description: Online tool for creating accessible web content.<br> - Contrast Checker:<br> abbr: CC<br> href: https://webaim.org/resources/contrastchecker/<br> description: Tool for checking color contrast ratios for accessibility.<br><br>- Automation:<br> - Apprise Documentation:<br> abbr: AD<br> href: https://github.com/caronc/apprise/wiki/<br> description: Notification management tool supporting multiple services.<br> - Home Assistant Community:<br> abbr: HC<br> href: https://community.home-assistant.io/<br> description: Forum for Home Assistant users to discuss automation setups.<br> - Home Assistant Documentation:<br> abbr: HD<br> href: https://www.home-assistant.io/docs/<br> description: Official documentation for Home Assistant.<br> - Home Assistant Blog:<br> abbr: HB<br> href: https://www.home-assistant.io/blog/<br> description: Updates and news about Home Assistant.<br><br>- Communication:<br> - Shlink Documentation:<br> abbr: SD<br> href: https://shlink.io/documentation/<br> description: Learn how to set up and manage Shlink.<br> - Element:<br> abbr: EL<br> href: https://chat.tchncs.de/<br> description: Secure messaging and collaboration platform.<br> - Outlook:<br> abbr: OL<br> href: https://outlook.office365.com/<br> description: Email and calendar service from Microsoft.<br> - Google Messages:<br> abbr: GM<br> href: https://messages.google.com/<br> description: SMS and MMS messaging service from Google.<br> - Enafore:<br> abbr: EN<br> href: https://enafore.social/<br> description: Alternative frontend for Mastodon, a decentralized social network.<br> - Mastodon:<br> abbr: MA<br> href: https://allovertheplace.ca/<br> description: Decentralized social network platform.<br> - Discord:<br> abbr: DC<br> href: https://discord.com/<br> description: Voice, video, and text chat platform for communities.<br><br>- Developer:<br> - freeCodeCamp:<br> abbr: FC<br> href: https://www.freecodecamp.org/<br> description: Learn to code with free tutorials and projects.<br> - MDN Web Docs:<br> abbr: MD<br> href: https://developer.mozilla.org/<br> description: Comprehensive web development documentation.<br> - GitHub:<br> abbr: GH<br> href: https://github.com/<br> description: Code hosting, collaboration, and version control.<br> - Stack Overflow:<br> abbr: SO<br> href: https://stackoverflow.com/<br> description: Community-driven Q&A for programmers.<br> - GitLab:<br> abbr: GL<br> href: https://gitlab.com/<br> description: Web-based DevOps lifecycle tool providing a Git repository manager.<br><br>- Information_Management:<br> - AppleVis:<br> abbr: AV<br> href: https://www.applevis.com/<br> description: Community for blind and low-vision users of Apple products.<br> - BibleGateway:<br> abbr: BG<br> href: https://www.biblegateway.com/<br> description: Search and read the Bible in multiple translations.<br> - Bible Resources:<br> abbr: BR<br> href: https://biblehub.com/<br> description: Online Bible study tools and comprehensive resources.<br> - YouVersion:<br> abbr: YV<br> href: https://www.youversion.com/<br> description: Bible app with various translations and reading plans.<br> - Bible Study Fellowship:<br> abbr: BS<br> href: https://www.bsfinternational.org/<br> description: Bible study resources and community.<br> - Bookshare:<br> abbr: BK<br> href: https://www.bookshare.org/<br> description: Accessible online library for people with print disabilities.<br> - BARD:<br> abbr: BD<br> href: https://nlsbard.loc.gov/<br> description: Braille and Audio Reading Download service for eligible users.<br> - Audible:<br> abbr: AU<br> href: https://www.audible.com/<br> description: Audiobook and spoken word entertainment service.<br><br>- Productivity:<br> - CCU Library:<br> abbr: CL<br> href: https://www.ccu.edu/academics/library/<br> description: Access CCU library resources for research and study.<br> - ReadWorks:<br> abbr: RW<br> href: https://www.readworks.org/<br> description: Reading passages and comprehension activities.<br> - Perplexity AI:<br> abbr: PA<br> href: https://perplexity.ai/<br> description: AI-powered search with detailed, conversational responses.<br><br>- Education:<br> - Codecademy:<br> abbr: CA<br> href: https://www.codecademy.com/<br> description: Interactive coding lessons for various languages.<br> - NFB:<br> abbr: NF<br> href: https://nfb.org/<br> description: Resources for Braille transcription and blind community.<br> - Canvas:<br> abbr: CV<br> href: https://canvas.instructure.com/<br> description: Learning management system for online courses.<br><br>- Gaming_Entertainment:<br> - AudioGames:<br> abbr: AG<br> href: https://forum.audiogames.net/<br> description: Community for audio-based and accessible games.<br> - IncrementalDB:<br> abbr: ID<br> href: https://incrementaldb.com/<br> description: Database of incremental games.<br> - Galaxy Click:<br> abbr: GC<br> href: https://galaxy.click/<br> description: Open-source website for finding incremental games.<br><br>- Shopping:<br> - InnoSearch AI:<br> abbr: IS<br> href: https://innosearch.ai/<br> description: Accessible e-commerce platform designed for blind users.<br> - Amazon:<br> abbr: AZ<br> href: https://www.amazon.com/<br> description: Online shopping platform with a wide range of products.<br> - eBay:<br> abbr: EB<br> href: https://www.ebay.com/<br> description: Online auction and shopping website.<br> - Walmart:<br> abbr: WM<br> href: https://www.walmart.com/<br> description: Online shopping platform with a wide range of products.<br> - Best Buy:<br> abbr: BB<br> href: https://www.bestbuy.com/<br> description: Online shopping platform for electronics and appliances.<br></code></pre> <p><strong><strong>services.yaml</strong></strong></p><pre><code>---<br>- Automation:<br> - Home Assistant:<br> href: https://homeassistant.laniecarmelo.tech<br> description: Home automation platform<br> server: my-docker<br> container: homeassistant<br> - N8N:<br> href: https://n8n.laniecarmelo.tech<br> description: Workflow automation tool<br> server: my-docker<br> container: n8n<br> - Ntfy:<br> href: https://ntfy.laniecarmelo.tech<br> description: Self-hosted notification service<br> server: my-docker<br> container: ntfy<br>- Communication:<br> - Shlink:<br> href: https://app.shlink.io<br> description: URL shortener and link management<br> server: my-docker<br> container: shlink<br> - TheLounge:<br> href: https://irc.laniecarmelo.tech<br> description: Web-based IRC client<br>- Developer:<br> - Forgejo:<br> href: https://git.laniecarmelo.tech<br> description: My Git server<br> widget:<br> type: gitea<br> url: https://git.laniecarmelo.tech<br> key: redacted<br> - PrivateBin:<br> href: https://paste.laniecarmelo.tech<br> description: Pastebin for sharing code snippets<br>- Information_Management:<br> - Linkding:<br> href: https://bookmarks.laniecarmelo.tech<br> description: Self-hosted bookmark manager<br> server: my-docker<br> container: linkding<br> - MiniFlux:<br> href: https://rss.laniecarmelo.tech<br> description: Self-hosted RSS feed reader<br> widget: <br> type: miniflux<br> url: https://rss.laniecarmelo.tech<br> key: redacted<br> - RSS-Bridge:<br> href: https://rss-bridge.laniecarmelo.tech<br> description: RSS feed generator for various websites<br> server: my-docker<br> container: rss-bridge<br> - SearXNG:<br> href: https://search.laniecarmelo.tech<br> description: Self-hosted metasearch engine<br> - Wallabag:<br> href: https://read.laniecarmelo.tech<br> description: Self-hosted read-it-later service<br> server: my-docker<br> container: wallabag<br>- Monitoring:<br> - Beszel:<br> href: https://beszel.laniecarmelo.tech<br> description: Server monitoring and alerts<br> widget:<br> type: beszel<br> url: https://beszel.laniecarmelo.tech<br> version: 2<br> username: redacted<br> password: redacted<br> systemId: redacted<br> - Caddy:<br> href: https://caddy.laniecarmelo.tech<br> description: Reverse proxy and SSL management<br> widget:<br> type: caddy<br> url: https://caddy.laniecarmelo.tech<br> - Uptime Kuma:<br> href: https://uptime.laniecarmelo.tech<br> description: Uptime monitoring and status page<br> server: my-docker<br> container: uptime-kuma<br> widget:<br> type: uptimekuma<br> url: https://uptime.laniecarmelo.tech<br> slug: home<br> - Watchtower:<br> description: Docker container update monitoring<br> server: my-docker<br> container: watchtower<br> widget:<br> type: watchtower<br> url: http://192.168.1.137:3014<br> key: redacted<br>- Productivity:<br> - Beaver Habit Tracker:<br> href: https://habits.laniecarmelo.tech<br> description: Habit tracking and productivity<br> server: my-docker<br> container: beaverhabits<br> - Calendar:<br> description: My Outlook calendar<br> widget:<br> type: calendar<br> firstDayInWeek: sunday<br> view: agenda<br> showTime: true<br> timezone: America/Chicago<br> integrations:<br> - type: ical<br> url: redacted<br> name: Outlook<br> - Joplin Server:<br> href: https://notes.laniecarmelo.tech<br> description: Notes and knowledge management<br> server: my-docker<br> container: joplin_server<br> - Mealie:<br> href: https://recipes.laniecarmelo.tech<br> description: Recipe management and meal planning<br> server: my-docker<br> container: mealie<br> widget:<br> type: mealie<br> url: https://recipes.laniecarmelo.tech<br> key: redacted<br> version: 2<br>- Server_Management:<br> - Cockpit:<br> href: https://cockpit.laniecarmelo.tech<br> description: Web-based server management interface<br> - Dockge:<br> href: https://dockge.laniecarmelo.tech<br> description: Docker management interface<br> server: my-docker<br> container: stacks-dockge-1<br> - Dozzle:<br> href: https://dozzle.laniecarmelo.tech<br> description: Docker container logs viewer<br> server: my-docker<br> container: dozzle<br> - Tailscale (Raspberry Pi):<br> href: https://login.tailscale.com<br> description: Zero-config mesh VPN<br> widget:<br> type: tailscale<br> deviceid: redacted<br> key: redacted<br> - Tailscale (Mini PC):<br> href: https://login.tailscale.com<br> description: Zero-config mesh VPN<br> widget:<br> type: tailscale<br> deviceid: redacted<br> key: redacted<br> - Tailscale (iPhone):<br> href: https://login.tailscale.com<br> description: Zero-config mesh VPN<br> widget:<br> type: tailscale<br> deviceid: redacted<br> key: redacted<br> - Tailscale (Google Pixel 9 Pro):<br> href: https://login.tailscale.com<br> description: Zero-config mesh VPN<br> widget:<br> type: tailscale<br> deviceid: redacted<br> key: redacted<br></code></pre> <p><strong><strong>settings.yaml</strong></strong></p><pre><code>title: Stormux Dashboard<br>description: Links to and information about my self-hosted services and most-used sites<br>base: https://home.laniecarmelo.tech<br>theme: dark<br>language: en<br>target: _blank<br>quicklaunch:<br> searchDescriptions: true<br> showSearchSuggestions: true<br> provider: custom<br> url: https://search.laniecarmelo.tech/search?q=%s<br> suggestionUrl: https://search.laniecarmelo.tech/autocompleter?q=%s<br><br>layout:<br> # Assign each group to a tab<br> Accessibility_Resources:<br> tab: Accessibility_Resources<br> Automation:<br> tab: Automation<br> Communication:<br> tab: Communication<br> Developer:<br> tab: Developer<br> Education:<br> tab: Education<br> Gaming_Entertainment:<br> tab: Gaming_Entertainment<br> Information_Management:<br> tab: Information_Management<br> Monitoring:<br> tab: Monitoring<br> Productivity:<br> tab: Productivity<br> Server_Management:<br> tab: Server_Management<br> Shopping:<br> tab: Shopping<br><br>showStats: true<br></code></pre> <p><strong><strong>compose.yaml</strong></strong></p><pre><code>services:<br> homepage:<br> image: ghcr.io/gethomepage/homepage:latest<br> container_name: homepage<br> ports:<br> - 3000:3000<br> volumes:<br> - ./config:/app/config # Make sure your local config directory exists<br> - /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations<br> environment:<br> HOMEPAGE_ALLOWED_HOSTS: home.laniecarmelo.tech,192.168.1.137:3000,stormux:3000<br> LOG_LEVEL: debug<br> restart: unless-stopped<br></code></pre> <p>If you’ve encountered this issue before or have insights into resolving it, I’d greatly appreciate your help! 🙏 </p><p><strong>Hashtags:</strong><br><br><a href="https://allovertheplace.ca/tags/SelfHosting" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SelfHosting</span></a> <a href="https://allovertheplace.ca/tags/HomepageDashboard" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HomepageDashboard</span></a> <a href="https://allovertheplace.ca/tags/WebDev" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>WebDev</span></a> <a href="https://allovertheplace.ca/tags/Accessibility" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Accessibility</span></a> <a href="https://allovertheplace.ca/tags/YAML" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>YAML</span></a> <a href="https://allovertheplace.ca/tags/Bookmarks" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Bookmarks</span></a> <a href="https://allovertheplace.ca/tags/OpenSource" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenSource</span></a> </p><p>Thank you in advance! 😊<br><br><span class="h-card" translate="no"><a href="https://lemmy.world/c/selfhosted" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>selfhosted</span></a></span> <span class="h-card" translate="no"><a href="https://lemmy.ml/c/selfhost" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>selfhost</span></a></span> <span class="h-card" translate="no"><a href="https://slrpnk.net/c/selfhosting" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>selfhosting@slrpnk.net</span></a></span> <span class="h-card" translate="no"><a href="https://a.gup.pe/u/selfhosting" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>selfhosting@a.gup.pe</span></a></span></p>