From 000ca5301ee649db4c50358f390629a845f45d5a Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Fri, 27 Oct 2023 14:58:52 -0600 Subject: [PATCH 01/13] refactor(docs): use variables to set colors --- docs/styles.css | 66 ++++++++++++++++++++++++++++--------------------- 1 file changed, 38 insertions(+), 28 deletions(-) diff --git a/docs/styles.css b/docs/styles.css index 5a497fa06..2f2fa6d77 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -1,8 +1,23 @@ :root { - --colors-white: #ffffff; --colors-primary: #1ccbff; - --colors-3-text-primary: rgba(0, 0, 0, 0.87); - --colors-2-secondary: #1e88e5; + --colors-secondary: #d6f5ff; + --colors-secondary-light: rgba(186, 239, 255, 0.6); + --colors-secondary-dark: rgba(28, 203, 255, 0.2); + + --bg-main: #051b34; + --bg-secondary: #041426; + --text-color: white; + --contrast-text-color: black; + + --filter-img: invert(100%); +} + +.light-mode { + --bg-main: white; + --bg-secondary: #f7f9fc; + --text-color: black; + + --filter-img: none; } * { @@ -21,6 +36,8 @@ summary { html, body { overflow-x: hidden; + background-color: var(--bg-main); + color: var(--text-color); } body { margin: 0; @@ -28,11 +45,11 @@ body { } details summary:hover { - background-color: #f1f1f1; + background-color: var(--bg-secondary); } details[open] summary { - background-color: rgba(28, 203, 255, 0.2); + background-color: var(--colors-secondary-dark); } details[open] summary ~ * { animation: open 0.3s ease-in-out; @@ -55,7 +72,7 @@ summary { details summary { width: 100%; padding: 0.5rem 0; - background-color: #f9f9fc; + background-color: var(--bg-secondary); position: relative; cursor: pointer; margin-right: 10px; @@ -67,6 +84,10 @@ details summary { padding-left: 104px; } +.info-icon img { + filter: var(--filter-img); +} + .info-icon span { padding-left: 10px; } @@ -76,6 +97,7 @@ details summary:after { position: absolute; right: 92px; transform: rotate(180deg); + filter: var(--filter-img); } details[open] summary::after { transform: rotate(0); @@ -84,7 +106,6 @@ details[open] summary::after { p { margin: 0 0 0.4px 8.5px; font-family: 'Nunito'; - color: #000; } #bg-image-mobile { @@ -97,7 +118,7 @@ p { .box-paragraph a { text-decoration: none; - color: black; + color: var(--text-color); } .box-paragraph a:hover { @@ -133,7 +154,6 @@ p { .header { overflow: hidden; - background-color: #ffffff; margin-left: 40px; display: flex; flex-direction: column; @@ -150,7 +170,6 @@ p { } .content { - background-color: #ffffff; padding-top: 36px; padding-bottom: 40px; } @@ -159,7 +178,7 @@ p { display: flex; align-items: center; flex-direction: column; - background-color: #f9f9fc; + background-color: var(--bg-secondary); padding-top: 32px; padding-bottom: 20px; width: 100%; @@ -226,7 +245,6 @@ p { font-stretch: normal; font-style: normal; text-align: center; - color: #000; } .project-by { @@ -236,7 +254,6 @@ p { font-style: normal; line-height: 1.75; text-align: center; - color: var(--colors-3-text-primary); } .box-paragraph-text > p { @@ -251,7 +268,7 @@ p { justify-content: center; align-items: center; box-shadow: 5.8px -34.8px 40.6px 0 rgba(53, 64, 82, 0.05); - background-color: #d6f5ff; + background-color: var(--colors-secondary); } .myButton:hover { @@ -289,6 +306,7 @@ p { display: flex; flex-direction: column; justify-content: center; + background-color: var(--bg-main); } .name-networks { @@ -298,7 +316,7 @@ p { font-style: normal; letter-spacing: normal; text-align: center; - color: #000; + color: var(--text-color); } .text-container { @@ -311,7 +329,7 @@ p { font-stretch: normal; font-style: normal; text-align: center; - color: #000; + color: var(--contrast-text-color); } @media screen and (max-width: 767px) { @@ -332,7 +350,6 @@ p { letter-spacing: 0.31px; } .content { - background-color: #ffffff; padding-top: 0px; padding-bottom: 10px; } @@ -340,7 +357,7 @@ p { .box-network { flex-grow: 0; padding: 16px 0; - background-color: #f9f9fc; + background-color: var(--bg-secondary); } #middle-logo { @@ -395,7 +412,7 @@ p { margin: 16px 8px 16px 0px; padding: 8px 4px; border-radius: 4px; - background-color: rgba(186, 239, 255, 0.6); + background-color: var(--colors-secondary-light); text-align: center; } .flex { @@ -417,6 +434,7 @@ p { line-height: 1.2; letter-spacing: normal; margin: auto auto 16px; + color: var(--text-color); } .text-container { @@ -477,7 +495,6 @@ p { border-radius: 4px; box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px 0 rgba(0, 0, 0, 0.3); - background-color: white; } .name-networks { @@ -498,7 +515,6 @@ p { line-height: 1.61; letter-spacing: -0.54px; text-align: left; - color: #000; padding: 10px; } @@ -558,7 +574,7 @@ p { } .myButton { - background-color: white; + background-color: var(--bg-main); box-shadow: none; display: block; } @@ -665,7 +681,6 @@ p { border-radius: 3.7px; box-shadow: 0 0.9px 2.7px 0.9px rgba(0, 0, 0, 0.15), 0 0.9px 1.8px 0 rgba(0, 0, 0, 0.3); - background-color: var(--colors-white); } .Line-4 { @@ -697,7 +712,6 @@ p { line-height: 1.61; letter-spacing: -0.54px; text-align: left; - color: #000; padding-left: calc(100% / 2 - 399px); } @@ -911,7 +925,6 @@ p { border-radius: 3.7px; box-shadow: 0 0.9px 2.7px 0.9px rgba(0, 0, 0, 0.15), 0 0.9px 1.8px 0 rgba(0, 0, 0, 0.3); - background-color: var(--colors-white); } .Line-4 { @@ -942,7 +955,6 @@ p { line-height: 1.61; letter-spacing: -0.54px; text-align: left; - color: #000; padding-left: calc(100% / 2 - 620px); } @@ -1222,7 +1234,6 @@ p { border-radius: 5px; box-shadow: 0 1.2px 3.7px 1.2px rgba(0, 0, 0, 0.15), 0 1.2px 2.5px 0 rgba(0, 0, 0, 0.3); - background-color: var(--colors-white); } .name-networks { @@ -1250,7 +1261,6 @@ p { line-height: 2.15; letter-spacing: -0.54px; text-align: left; - color: #000; padding-left: calc(100% / 2 - 900px); } From afc05b77c009f24e26ead686dbc7cf70ec500379 Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Fri, 27 Oct 2023 16:30:02 -0600 Subject: [PATCH 02/13] refactor(docs): invert images colors and set shadows --- docs/styles.css | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/docs/styles.css b/docs/styles.css index 2f2fa6d77..9bc7181ec 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -4,12 +4,20 @@ --colors-secondary-light: rgba(186, 239, 255, 0.6); --colors-secondary-dark: rgba(28, 203, 255, 0.2); + --shadows-button: 5.8px -34.8px 40.6px 0 rgba(53, 64, 82, 0.05); + --shadows-grid-item: 0 1px 3px 1px rgba(0, 0, 0, 0.15), + 0 1px 2px 0 rgba(0, 0, 0, 0.3); + --shadows-grid-item-md: 0 0.9px 2.7px 0.9px rgba(0, 0, 0, 0.15), + 0 0.9px 1.8px 0 rgba(0, 0, 0, 0.3); + --shadows-grid-item-lg: 0 1.2px 3.7px 1.2px rgba(0, 0, 0, 0.15), + 0 1.2px 2.5px 0 rgba(0, 0, 0, 0.3); + --bg-main: #051b34; --bg-secondary: #041426; --text-color: white; --contrast-text-color: black; - --filter-img: invert(100%); + --filter-img: invert(100%) hue-rotate(180deg) saturate(10); } .light-mode { @@ -267,7 +275,7 @@ p { flex-direction: row; justify-content: center; align-items: center; - box-shadow: 5.8px -34.8px 40.6px 0 rgba(53, 64, 82, 0.05); + box-shadow: var(--shadows-button); background-color: var(--colors-secondary); } @@ -332,6 +340,10 @@ p { color: var(--contrast-text-color); } +.edeniaLogo, .image-box-desktop, #middle-logo{ + filter: var(--filter-img); +} + @media screen and (max-width: 767px) { #bg-image-mobile { width: 100%; @@ -493,8 +505,7 @@ p { margin: 0 8px 0 0; padding: 8px 29.4px 11.8px 30.4px; border-radius: 4px; - box-shadow: 0 1px 3px 1px rgba(0, 0, 0, 0.15), - 0 1px 2px 0 rgba(0, 0, 0, 0.3); + box-shadow: var(--shadows-grid-item) } .name-networks { @@ -679,8 +690,7 @@ p { flex-grow: 0; padding: 12px; border-radius: 3.7px; - box-shadow: 0 0.9px 2.7px 0.9px rgba(0, 0, 0, 0.15), - 0 0.9px 1.8px 0 rgba(0, 0, 0, 0.3); + box-shadow: var(--shadows-grid-item-md) } .Line-4 { @@ -923,8 +933,7 @@ p { flex-grow: 0; padding: 12px; border-radius: 3.7px; - box-shadow: 0 0.9px 2.7px 0.9px rgba(0, 0, 0, 0.15), - 0 0.9px 1.8px 0 rgba(0, 0, 0, 0.3); + box-shadow: var(--shadows-grid-item-md) } .Line-4 { @@ -1232,8 +1241,7 @@ p { flex-grow: 0; padding: 19.8px 19.8px 18.6px; border-radius: 5px; - box-shadow: 0 1.2px 3.7px 1.2px rgba(0, 0, 0, 0.15), - 0 1.2px 2.5px 0 rgba(0, 0, 0, 0.3); + box-shadow: var(--shadows-grid-item-lg); } .name-networks { From 0681f246457ca2e18a71758b74fdbe883d30e523 Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Fri, 27 Oct 2023 16:31:01 -0600 Subject: [PATCH 03/13] chore(docs): links styles --- docs/styles.css | 59 +++++++++---------------------------------------- 1 file changed, 11 insertions(+), 48 deletions(-) diff --git a/docs/styles.css b/docs/styles.css index 9bc7181ec..92325cdf2 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -3,6 +3,7 @@ --colors-secondary: #d6f5ff; --colors-secondary-light: rgba(186, 239, 255, 0.6); --colors-secondary-dark: rgba(28, 203, 255, 0.2); + --colors-links: #1ccbff; --shadows-button: 5.8px -34.8px 40.6px 0 rgba(53, 64, 82, 0.05); --shadows-grid-item: 0 1px 3px 1px rgba(0, 0, 0, 0.15), @@ -21,6 +22,8 @@ } .light-mode { + --colors-links: #1565c0; + --bg-main: white; --bg-secondary: #f7f9fc; --text-color: black; @@ -37,6 +40,10 @@ a { text-decoration: none; } +a, a:visited { + color: var(--colors-links); +} + summary { font-size: 40px; } @@ -133,15 +140,6 @@ p { text-decoration: underline; } -.box-paragraph h4 { - font-family: 'Nunito'; - font-weight: 600; - font-size: 20px; - line-height: 24px; - color: #000000; - margin: 0; -} - .box-paragraph p { font-style: normal; font-weight: normal; @@ -149,17 +147,6 @@ p { font-stretch: normal; } -.box-network h4 { - font-family: 'Nunito'; - font-style: normal; - font-weight: bold; - font-size: 18px; - line-height: 38px; - letter-spacing: -0.219429px; - color: #000000; - margin: 0; -} - .header { overflow: hidden; margin-left: 40px; @@ -203,22 +190,6 @@ p { margin-bottom: 16px; } -.box-column div { - width: 49%; - display: flex; - justify-content: center; -} - -.box-column ul a { - text-decoration: none; - white-space: nowrap; - font-size: 14px; - line-height: 20px; - text-align: center; - letter-spacing: 0.1px; - color: #000000; -} - .image-box-desktop { display: none; } @@ -228,18 +199,6 @@ p { flex-direction: column; } -#contact-us { - font-weight: 600; - font-size: 17px; - line-height: 20px; - text-align: center; - letter-spacing: 0.0595px; - color: #000000; - margin: 0; - padding: 12px; - margin-bottom: 36px; -} - .logo-text { display: flex; padding: 10px; @@ -344,6 +303,10 @@ p { filter: var(--filter-img); } +#back-to-top { + margin-top: 16px; +} + @media screen and (max-width: 767px) { #bg-image-mobile { width: 100%; From 843edc53f4f855b44cc664ed716fb684f738b034 Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Fri, 27 Oct 2023 17:02:22 -0600 Subject: [PATCH 04/13] chore(docs): remove background and apply hover effect to social media links --- docs/images/xpr-grid.png | Bin 43978 -> 43803 bytes docs/styles.css | 4 ++++ 2 files changed, 4 insertions(+) mode change 100644 => 100755 docs/images/xpr-grid.png diff --git a/docs/images/xpr-grid.png b/docs/images/xpr-grid.png old mode 100644 new mode 100755 index 108bfa7e76c5bfc4e07af9cd5f2295fc7ce2840f..b4127fb033e3f7fa6bb9bd29e4fe415e28c0b08a GIT binary patch literal 43803 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≠c}G04)lq2Mje3 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 Date: Mon, 30 Oct 2023 10:56:22 -0600 Subject: [PATCH 05/13] feat(docs): implement dark mode --- docs/index.html | 36 +++++++++++++++++++++++++++++++++++- docs/styles.css | 49 ++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 79 insertions(+), 6 deletions(-) diff --git a/docs/index.html b/docs/index.html index 75c723ecd..daa921de0 100644 --- a/docs/index.html +++ b/docs/index.html @@ -84,8 +84,32 @@ U+2212, U+2215, U+FEFF, U+FFFD; } - + + + +
+ +
@@ -296,5 +320,15 @@

A Community Public Good built by

gtag('js', new Date()) gtag('config', 'G-E6Y0EC9FT8') + \ No newline at end of file diff --git a/docs/styles.css b/docs/styles.css index 52984de20..2696bc967 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -15,6 +15,8 @@ --bg-main: #051b34; --bg-secondary: #041426; + --bg-contrast-transparent-color: rgba(255, 255, 255, 0.2); + --text-color: white; --contrast-text-color: black; @@ -26,6 +28,8 @@ --bg-main: white; --bg-secondary: #f7f9fc; + --bg-contrast-transparent-color: rgba(0, 0, 0, 0.04); + --text-color: black; --filter-img: none; @@ -190,8 +194,8 @@ p { margin-bottom: 16px; } -.box-social-media a:hover{ - transform: scale(1.3); +.box-social-media a:hover, .edeniaLogo:hover{ + transform: scale(1.1); } .image-box-desktop { @@ -311,6 +315,41 @@ p { margin-top: 16px; } +#toggle-color { + display: flex; + justify-content: end; + align-items: center; + height: 48px; + padding: 32px; +} + +#toggle-color-btn { + height: 32px; + width: 32px; + border: none; + padding: 0; + color: var(--text-color); + background-color: var(--bg-main); + box-shadow: var(--shadows-grid-item); + border-radius: 4px; + cursor: pointer; +} + +#toggle-color-btn:hover { + background-color: var(--bg-contrast-transparent-color); +} + +#toggle-color-btn svg { + display: block; + height: 24px; + width: 24px; + margin: 0px 4px 0px; +} + +.no-display { + display: none; +} + @media screen and (max-width: 767px) { #bg-image-mobile { width: 100%; @@ -574,7 +613,7 @@ p { background-position: top right; background-repeat: no-repeat; align-items: flex-start; - margin: 36px 0px 0px; + margin: 0px 0px 0px; margin-left: calc(100% / 2 - 348px); } @@ -824,7 +863,7 @@ p { background-position: top right; background-repeat: no-repeat; align-items: flex-start; - margin-top: 70px; + margin-top: 16px; margin-left: calc(100% / 2 - 570px); } @@ -1061,7 +1100,7 @@ p { align-items: flex-start; width: 1740px; margin-left: calc(100% / 2 - 870px); - margin-top: 104px; + margin-top: 54px; } .box-network { From db0123e08aa128b7cccbe80b59efdbf53228d11f Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Mon, 30 Oct 2023 11:40:11 -0600 Subject: [PATCH 06/13] fix(docs): fix accessibility errors --- docs/index.html | 2 +- docs/styles.css | 12 ++---------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/docs/index.html b/docs/index.html index daa921de0..7a41a04d6 100644 --- a/docs/index.html +++ b/docs/index.html @@ -269,7 +269,7 @@

Transparency is our mantra, and we practice what we preach. Antelope Tools Dashboard offers a visually engaging and clear representation of vital blockchain metrics. Our data is sourced directly from public blockchain tables - and enriched with information from Block Producers' bp.json files. + and enriched with information from Block Producer's bp.json files. Want to dig deeper? Feel free to explore our GitHub repository or join the conversation in our Telegram group. diff --git a/docs/styles.css b/docs/styles.css index 2696bc967..6f44370f0 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -1,7 +1,7 @@ :root { --colors-primary: #1ccbff; --colors-secondary: #d6f5ff; - --colors-secondary-light: rgba(186, 239, 255, 0.6); + --colors-secondary-light: rgb(88, 116, 124); --colors-secondary-dark: rgba(28, 203, 255, 0.2); --colors-links: #1ccbff; @@ -24,6 +24,7 @@ } .light-mode { + --colors-secondary-light: rgba(186, 239, 255, 0.6); --colors-links: #1565c0; --bg-main: white; @@ -135,15 +136,6 @@ p { margin-bottom: 24px; } -.box-paragraph a { - text-decoration: none; - color: var(--text-color); -} - -.box-paragraph a:hover { - text-decoration: underline; -} - .box-paragraph p { font-style: normal; font-weight: normal; From 6db6ba5c19120ec18e8240f70b13e440cde1820e Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Mon, 30 Oct 2023 13:21:54 -0600 Subject: [PATCH 07/13] refactor(docs): add headings and remove unneeded styles --- docs/index.html | 320 ++++++++++++++++++++++++------------------------ docs/styles.css | 125 ++++++------------- 2 files changed, 198 insertions(+), 247 deletions(-) diff --git a/docs/index.html b/docs/index.html index 7a41a04d6..313823f1f 100644 --- a/docs/index.html +++ b/docs/index.html @@ -110,180 +110,182 @@

-
-
- - -
-
- Antelope Tools Logo -
-
-

Unlock Real-Time Visibility into Antelope Blockchains

-
-
-
-

- Get instant insights into blockchain networks with our intuitive dashboards. -

-
-
-
-

- A community-driven tool for unparalleled transparency and reliability. -

-
+
+ -
-
-
-
-
-
- -
+
+ Antelope Tools Logo
-
-
-
- - Telos Mainnet Antelope Tools Dashboard - Telos Mainnet - - - Libre Mainnet Antelope Tools Dashboard - Libre Mainnet - - - XPR Network Mainnet Antelope Tools Dashboard - XPR Mainnet - - - Wax Mainnet Antelope Tools Dashboard - Wax Mainnet - - - EOS Antelope Tools Dashboard - EOS Mainnet - - - LACChain EOSIO Antelope Tools Dashboard - LACChain EOSIO - +
+

Unlock Real-Time Visibility into Antelope Blockchains

+
+
+
+

+ Get instant insights into blockchain networks with our intuitive dashboards. +

+
+
+
+

+ A community-driven tool for unparalleled transparency and reliability. +

-
+
+ +
View Monitored Networks
+
-
- -
-
-
-
-
- - - - What is Antelope Tools? - - -

- Unlock the Power of Transparency with Antelope Tools! Designed by blockchain enthusiasts at Edenia - as an open-source public good for the blockchain community, our dashboard serves as your ultimate guide to critical blockchain data. We're not just another app; - we're a movement aimed at elevating transparency and reliability in blockchain networks. -

-
-
-
-
-
-
- - - Why is it important? - - -

- In the complex world of DPoS blockchain networks, token holders are often required to cast votes for Block Producers. Similarly, - in permissioned networks like LACChain, node operators play a pivotal role in ensuring seamless network operations. - That's where Antelope Tools comes in. We believe that real-time network monitoring is not just a feature—it's a necessity. - Our dashboard empowers you to make informed decisions by providing transparent, reliable information on each node's activity. -

-
-
-
-
-
-
- - - - Where does the data come from? - - -

- Transparency is our mantra, and we practice what we preach. Antelope Tools Dashboard offers a visually engaging - and clear representation of vital blockchain metrics. Our data is sourced directly from public blockchain tables - and enriched with information from Block Producer's bp.json files. - Want to dig deeper? - Feel free to explore our GitHub repository - or join the conversation in our Telegram group. -

-
-
+
+
+
+
+
+ + + + What is Antelope Tools? + + +

+ Unlock the Power of Transparency with Antelope Tools! Designed by blockchain enthusiasts at Edenia + as an open-source public good for the blockchain community, our dashboard serves as your ultimate guide to critical blockchain data. We're not just another app; + we're a movement aimed at elevating transparency and reliability in blockchain networks. +

+
+
+
+
+
+
+ + + Why is it important? + + +

+ In the complex world of DPoS blockchain networks, token holders are often required to cast votes for Block Producers. Similarly, + in permissioned networks like LACChain, node operators play a pivotal role in ensuring seamless network operations. + That's where Antelope Tools comes in. We believe that real-time network monitoring is not just a feature—it's a necessity. + Our dashboard empowers you to make informed decisions by providing transparent, reliable information on each node's activity. +

+
+
+
+
+
+
+ + + + Where does the data come from? + + +

+ Transparency is our mantra, and we practice what we preach. Antelope Tools Dashboard offers a visually engaging + and clear representation of vital blockchain metrics. Our data is sourced directly from public blockchain tables + and enriched with information from Block Producer's bp.json files. + Want to dig deeper? + Feel free to explore our GitHub repository + or join the conversation in our Telegram group. +

+
+
+
-
+ +
+ +
@@ -190,94 +188,86 @@

- +
+ +
-
-
-
- - - - What is Antelope Tools? - - -

- Unlock the Power of Transparency with Antelope Tools! Designed by blockchain enthusiasts at Edenia - as an open-source public good for the blockchain community, our dashboard serves as your ultimate guide to critical blockchain data. We're not just another app; - we're a movement aimed at elevating transparency and reliability in blockchain networks. -

-
-
-
-
-
-
- - - Why is it important? - - -

- In the complex world of DPoS blockchain networks, token holders are often required to cast votes for Block Producers. Similarly, - in permissioned networks like LACChain, node operators play a pivotal role in ensuring seamless network operations. - That's where Antelope Tools comes in. We believe that real-time network monitoring is not just a feature—it's a necessity. - Our dashboard empowers you to make informed decisions by providing transparent, reliable information on each node's activity. -

-
-
-
-
-
-
- - - - Where does the data come from? - - -

- Transparency is our mantra, and we practice what we preach. Antelope Tools Dashboard offers a visually engaging - and clear representation of vital blockchain metrics. Our data is sourced directly from public blockchain tables - and enriched with information from Block Producer's bp.json files. - Want to dig deeper? - Feel free to explore our GitHub repository - or join the conversation in our Telegram group. -

-
-
-
+
+
+ + + + What is Antelope Tools? + + +

+ Unlock the Power of Transparency with Antelope Tools! Designed by blockchain enthusiasts at Edenia + as an open-source public good for the blockchain community, our dashboard serves as your ultimate guide to critical blockchain data. We're not just another app; + we're a movement aimed at elevating transparency and reliability in blockchain networks. +

+
+
+
+
+ + + Why is it important? + + +

+ In the complex world of DPoS blockchain networks, token holders are often required to cast votes for Block Producers. Similarly, + in permissioned networks like LACChain, node operators play a pivotal role in ensuring seamless network operations. + That's where Antelope Tools comes in. We believe that real-time network monitoring is not just a feature—it's a necessity. + Our dashboard empowers you to make informed decisions by providing transparent, reliable information on each node's activity. +

+
+
+
+
+ + + + Where does the data come from? + + +

+ Transparency is our mantra, and we practice what we preach. Antelope Tools Dashboard offers a visually engaging + and clear representation of vital blockchain metrics. Our data is sourced directly from public blockchain tables + and enriched with information from Block Producer's bp.json files. + Want to dig deeper? + Feel free to explore our GitHub repository + or join the conversation in our Telegram group. +

+
+
From f47e8b9e0c8accd11b528ce8df5f8d42f40c83b5 Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Mon, 30 Oct 2023 13:53:52 -0600 Subject: [PATCH 09/13] chore(docs): fix border hover effect --- docs/index.html | 6 +++--- docs/styles.css | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/index.html b/docs/index.html index 6e8008e40..ce959b516 100644 --- a/docs/index.html +++ b/docs/index.html @@ -113,10 +113,10 @@
- +
-
+
Antelope Tools Logo
@@ -295,7 +295,7 @@

A Community Public Good built by

diff --git a/docs/styles.css b/docs/styles.css index 6412373e7..a44aca2b3 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -235,7 +235,7 @@ p { } .grid-item:hover { - border: 2px solid var(--colors-primary); + outline: 2px solid var(--colors-primary); box-sizing: border-box; } @@ -272,7 +272,7 @@ p { color: var(--contrast-text-color); } -.edeniaLogo, .image-box-desktop, #middle-logo{ +.theme-filter-image{ filter: var(--filter-img); } From 17080ad7f18769975c6eb42fa0ef90b11c43127f Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Mon, 30 Oct 2023 14:05:42 -0600 Subject: [PATCH 10/13] chore(docs): Improve alternative text --- docs/index.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/index.html b/docs/index.html index ce959b516..4505e9e71 100644 --- a/docs/index.html +++ b/docs/index.html @@ -279,23 +279,23 @@

A Community Public Good built by

From 3ae2e863da2c2b4145a180313a1e206a356688e2 Mon Sep 17 00:00:00 2001 From: codefactor-io Date: Mon, 30 Oct 2023 20:23:01 +0000 Subject: [PATCH 11/13] [CodeFactor] Apply fixes --- docs/styles.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/styles.css b/docs/styles.css index a44aca2b3..c26cf5f10 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -308,7 +308,7 @@ p { display: block; height: 24px; width: 24px; - margin: 0px 4px 0px; + margin: 0px 4px; } .no-display { @@ -573,7 +573,7 @@ p { background-position: top right; background-repeat: no-repeat; align-items: flex-start; - margin: 0px 0px 0px; + margin: 0px; margin-left: calc(100% / 2 - 348px); } From 47e4bb0177c86c6a6a44340032bdeba5b9ed72b2 Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Tue, 31 Oct 2023 14:50:42 -0600 Subject: [PATCH 12/13] feat(webapp): apply webapp button styles and change network's container background color --- docs/index.html | 2 +- docs/styles.css | 67 ++++++++++++++++++------------------------------- 2 files changed, 25 insertions(+), 44 deletions(-) diff --git a/docs/index.html b/docs/index.html index 4505e9e71..c7279e5ed 100644 --- a/docs/index.html +++ b/docs/index.html @@ -135,7 +135,7 @@

Unlock Real-Time Visibility into Antelope Blockchains

- +
View Monitored Networks
diff --git a/docs/styles.css b/docs/styles.css index c26cf5f10..83ceb47d1 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -1,8 +1,11 @@ :root { --colors-primary: #1ccbff; + --colors-primary-dark: #138eb2; + --colors-secondary: #d6f5ff; --colors-secondary-light: rgb(88, 116, 124); --colors-secondary-dark: rgba(28, 203, 255, 0.2); + --colors-links: #1ccbff; --shadows-button: 5.8px -34.8px 40.6px 0 rgba(53, 64, 82, 0.05); @@ -25,6 +28,7 @@ .light-mode { --colors-secondary-light: rgba(186, 239, 255, 0.6); + --colors-links: #1565c0; --bg-main: white; @@ -209,20 +213,23 @@ p { text-align: center; } -.myButton { +.customButton { display: flex; flex-direction: row; justify-content: center; align-items: center; box-shadow: var(--shadows-button); - background-color: var(--colors-secondary); + background-color: var(--colors-primary); + border-radius: 70px; } -.myButton:hover { +.customButton:hover { text-decoration: none; + background-color: var(--colors-primary-dark); + transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, border-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; } -.myButton:active { +.customButton:active { position: relative; top: 1px; } @@ -315,6 +322,14 @@ p { display: none; } +#networks { + display: flex; + flex-direction: column; + align-items: center; + padding: 16px 0px; + background-color: var(--bg-secondary); +} + @media screen and (max-width: 767px) { #bg-image-mobile { width: 100%; @@ -340,7 +355,6 @@ p { .box-network { flex-grow: 0; padding: 16px 0; - background-color: var(--bg-secondary); } #middle-logo { @@ -413,7 +427,6 @@ p { height: 58px; font-size: 24px; line-height: 1.2; - letter-spacing: normal; margin: auto auto 16px; color: var(--text-color); } @@ -550,7 +563,7 @@ p { width: 20px; } - .myButton { + .customButton { background-color: var(--bg-main); box-shadow: none; display: block; @@ -697,22 +710,16 @@ p { letter-spacing: 0.18px; } - .myButton { + .customButton { width: 245px; height: 40px; gap: 29px; padding: 19px 0; - border-radius: 58px; - border: solid 2px var(--colors-primary); margin: 22px 0 64px; } .visit-text { - width: 245px; - flex-grow: 0; font-size: 14px; - line-height: 3.16; - letter-spacing: 0.23px; } .name-networks { @@ -723,11 +730,6 @@ p { line-height: 1.09; } - #networks { - display: flex; - flex-direction: column; - margin-left: calc(100% / 2 - 348px); - } .image-box-desktop { width: 546px; height: 240px; @@ -816,7 +818,7 @@ p { background-position: top right; background-repeat: no-repeat; align-items: flex-start; - margin-top: 16px; + margin-top: 0px; margin-left: calc(100% / 2 - 570px); } @@ -932,23 +934,16 @@ p { line-height: 1.72; letter-spacing: 0.18px; } - .myButton { + .customButton { width: 340px; height: 60px; gap: 29px; padding: 19px 0; - border-radius: 75px; - border: solid 5.8px var(--colors-primary); margin-top: 20px; margin-bottom: 80px; } .visit-text { - width: 381.9px; - height: 70px; - flex-grow: 0; font-size: 22px; - line-height: 3.16; - letter-spacing: 0.23px; } .name-networks { @@ -959,11 +954,6 @@ p { line-height: 1.09; } - #networks { - display: flex; - flex-direction: column; - margin-left: calc(100% / 2 - 570px); - } .image-box-desktop { width: 546px; height: 240px; @@ -1060,10 +1050,6 @@ p { margin-bottom: 30px; } - #networks { - margin-left: calc(100% / 2 - 870px); - } - .box-paragraph-text > h1 { width: 550px; height: 96px; @@ -1142,21 +1128,16 @@ p { margin-bottom: 80px; } - .myButton { + .customButton { width: 506px; height: 91px; gap: 24.4px; padding: 16px 0; - border-radius: 63px; - border: solid 4.9px var(--colors-primary); margin-bottom: 100px; } .visit-text { - flex-grow: 0; font-size: 32px; - line-height: 2.09; - letter-spacing: 0.19px; } .flex { From 3543295d47d481b76e386f628c826df79b10defd Mon Sep 17 00:00:00 2001 From: Torresmorah Date: Tue, 31 Oct 2023 15:26:41 -0600 Subject: [PATCH 13/13] feat(docs): use the primary color for the buttons and links --- docs/styles.css | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/docs/styles.css b/docs/styles.css index 83ceb47d1..7890597f8 100644 --- a/docs/styles.css +++ b/docs/styles.css @@ -6,8 +6,6 @@ --colors-secondary-light: rgb(88, 116, 124); --colors-secondary-dark: rgba(28, 203, 255, 0.2); - --colors-links: #1ccbff; - --shadows-button: 5.8px -34.8px 40.6px 0 rgba(53, 64, 82, 0.05); --shadows-grid-item: 0 1px 3px 1px rgba(0, 0, 0, 0.15), 0 1px 2px 0 rgba(0, 0, 0, 0.3); @@ -27,15 +25,17 @@ } .light-mode { - --colors-secondary-light: rgba(186, 239, 255, 0.6); + --colors-primary: #1565c0; + --colors-primary-dark: #0e4686; - --colors-links: #1565c0; + --colors-secondary-light: rgba(186, 239, 255, 0.6); --bg-main: white; --bg-secondary: #f7f9fc; --bg-contrast-transparent-color: rgba(0, 0, 0, 0.04); --text-color: black; + --contrast-text-color: white; --filter-img: none; } @@ -49,7 +49,7 @@ a { } a, a:visited { - color: var(--colors-links); + color: var(--colors-primary); } summary { @@ -219,19 +219,20 @@ p { justify-content: center; align-items: center; box-shadow: var(--shadows-button); + color: var(--contrast-text-color); background-color: var(--colors-primary); border-radius: 70px; } .customButton:hover { text-decoration: none; + color: var(--contrast-text-color); background-color: var(--colors-primary-dark); transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, border-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms, color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; } -.customButton:active { - position: relative; - top: 1px; +.customButton:visited { + color: var(--contrast-text-color); } .contact-us h3 {