{"id":307,"date":"2026-04-14T21:50:03","date_gmt":"2026-04-14T21:50:03","guid":{"rendered":"https:\/\/beginnerprojects.com\/cms\/?p=307"},"modified":"2026-04-24T23:49:08","modified_gmt":"2026-04-24T23:49:08","slug":"how-i-built-my-personal-dashboard-and-how-to-tweak-it","status":"publish","type":"post","link":"https:\/\/beginnerprojects.com\/cms\/how-i-built-my-personal-dashboard-and-how-to-tweak-it\/","title":{"rendered":"How I Built My Personal Dashboard (and How to Tweak It)"},"content":{"rendered":"\n<p>In this guide, I&#8217;ll break down the three main parts of the <a href=\"https:\/\/beginnerprojects.com\/apps\/dashboard-app.html\">free Dashboard app<\/a>. Think of this as a map of the software.<\/p>\n\n\n\n<p>For many of you, the code inside that&nbsp;<code>.html<\/code>&nbsp;file looks like a jumble of symbols and brackets. You might be wondering: &#8220;What is actually happening in there? And can I change things without breaking it?&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1. The &#8220;Paint &amp; Polish&#8221; (The CSS Section)<\/h2>\n\n\n\n<p>When you open your file, you&#8217;ll see a large section wrapped in&nbsp;<code>&lt;style&gt;<\/code>&nbsp;tags. This is the&nbsp;<strong>CSS (Cascading Style Sheets)<\/strong>.<\/p>\n\n\n\n<p><strong>What it does:<\/strong>&nbsp;CSS is responsible for everything you&nbsp;<em>see<\/em>&nbsp;but don&#8217;t&nbsp;<em>interact<\/em>&nbsp;with. It tells the browser how to display the background, fonts, colors, and layout of the entire dashboard.<\/p>\n\n\n\n<p>\ud83d\udca1\u00a0<strong>Pro Tip:<\/strong>\u00a0You can completely ignore this section. You don&#8217;t need to touch a single line of CSS for the app to work. However, if you&#8217;re feeling adventurous, you can ask an AI: <em>&#8220;Can you help me with adding these links to the buttons.&#8221;<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. The &#8220;Skeleton&#8221; (The HTML Body)<\/h2>\n\n\n\n<p>Further down, you&#8217;ll find the&nbsp;<code>&lt;body&gt;<\/code>&nbsp;section. This is the&nbsp;<strong>HTML (HyperText Markup Language)<\/strong>.<\/p>\n\n\n\n<p><strong>What it does:<\/strong>&nbsp;If CSS is the paint, HTML is the framing of the house. It defines where the Title goes, where the Link Columns are placed, and where the Password Generator section is located.<\/p>\n\n\n\n<p><strong>Where you&#8217;ll spend your time:<\/strong>&nbsp;The most important parts of this section are:<\/p>\n\n\n\n<p><strong>Quick Access Links Section:<\/strong>&nbsp;The main dashboard content is organized into columns of links. Each column has a heading and a list of links. The structure looks like this:<\/p>\n\n\n\n<pre class=\"wp-block-code has-palette-color-11-background-color has-background\"><code>&lt;div class=\"link-list-column\"&gt;\n  &lt;h3&gt;Tools&lt;\/h3&gt;\n  &lt;ul&gt;\n    &lt;li&gt;&lt;a href=\"https:\/\/pagespeed.web.dev\/\"&gt;PageSpeed&lt;\/a&gt;&lt;\/li&gt;\n    &lt;li&gt;&lt;a href=\"https:\/\/search.google.com\/search-console\/about\"&gt;Search Console&lt;\/a&gt;&lt;\/li&gt;\n  &lt;\/ul&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n\n\n\n<p>You can add, remove, or modify links by editing these sections. Each link is wrapped in&nbsp;<code>&lt;a&gt;<\/code>&nbsp;tags with the appropriate&nbsp;<code>href<\/code>&nbsp;attribute.<\/p>\n\n\n\n<p><strong>Password Generator Section:<\/strong>&nbsp;This section contains the password generation functionality with:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A number input for password length (8-60 characters)<\/li>\n\n\n\n<li>A &#8220;Generate&#8221; button to create passwords<\/li>\n\n\n\n<li>A text field to display the generated password<\/li>\n\n\n\n<li>A &#8220;Copy&#8221; button to copy the password to your clipboard<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">3. The &#8220;Brain&#8221; (The JavaScript Section)<\/h2>\n\n\n\n<p>At the bottom of the file, inside the&nbsp;<code>&lt;script&gt;<\/code>&nbsp;tags, is the&nbsp;<strong>JavaScript (JS)<\/strong>.<\/p>\n\n\n\n<p><strong>What it does:<\/strong>&nbsp;This is the most powerful part of the app. While HTML and CSS are static, JavaScript is&nbsp;<em>active<\/em>. It is the &#8220;Brain&#8221; that performs the following logic:<\/p>\n\n\n\n<p><strong>Date Display:<\/strong>&nbsp;The JS automatically displays today&#8217;s date in the footer when the page loads.<\/p>\n\n\n\n<p><strong>Password Generation:<\/strong>&nbsp;The JS handles password creation with:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Length validation (8-60 characters)<\/li>\n\n\n\n<li>Character set selection (letters, numbers, and special characters)<\/li>\n\n\n\n<li>Exclusion of confusing characters like \/, , &lt;, >, | to prevent issues<\/li>\n\n\n\n<li>Random generation algorithm<\/li>\n<\/ul>\n\n\n\n<p><strong>Copy Functionality:<\/strong>&nbsp;The JS enables copying the generated password to your clipboard with a single click.<\/p>\n\n\n\n<p>\ud83d\udca1\u00a0<strong>Pro Tip:<\/strong>\u00a0This is the perfect place to experiment with AI. Try pasting the script section into an AI and asking: <em>&#8220;Can you modify this JavaScript to include a feature that generates passwords with specific character requirements?&#8221;<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Summary: The Big Picture<\/h2>\n\n\n\n<p>To put it simply, your app is a team of three:<\/p>\n\n\n\n<p><strong>HTML<\/strong>&nbsp;builds the structure and content.&nbsp;<strong>CSS<\/strong>&nbsp;makes the dashboard look professional and visually appealing.&nbsp;<strong>JavaScript<\/strong>&nbsp;handles the dynamic functionality like date display and password generation.<\/p>\n\n\n\n<p><strong>Having trouble with your code?<\/strong>\u00a0If you&#8217;ve tried to edit your list and the app stopped working, don&#8217;t panic! It usually means some  tag is missing. Post a comment below with a snippet of your code, and I will help you find the error and get you back up and running.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this guide, I&#8217;ll break down the three main parts of the free Dashboard app. Think of this as a map of the software. For many of you, the code inside that&nbsp;.html&nbsp;file looks like a jumble of symbols and brackets. You might be wondering: &#8220;What is actually happening in there? And can I change things [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_ecmd_meta_description":"Learn how to customize and use the free Dashboard app that organizes your links and generates passwords. Includes detailed guide on HTML, CSS, and JavaScript.","footnotes":""},"categories":[1],"tags":[],"class_list":["post-307","post","type-post","status-publish","format-standard","hentry","category-guides"],"blocksy_meta":[],"_links":{"self":[{"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/posts\/307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/comments?post=307"}],"version-history":[{"count":2,"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/posts\/307\/revisions"}],"predecessor-version":[{"id":361,"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/posts\/307\/revisions\/361"}],"wp:attachment":[{"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/media?parent=307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/categories?post=307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/beginnerprojects.com\/cms\/wp-json\/wp\/v2\/tags?post=307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}