From e1acd18fbd2e0566ca21b50f966cb8f26c8da5d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Z=C3=A1le=C5=A1=C3=A1k?= Date: Sun, 25 Apr 2021 20:34:06 +0200 Subject: [PATCH] added frontend design --- jsapp/favicon.ico | 0 jsapp/font/BebasNeue-Regular.ttf | Bin 0 -> 57624 bytes jsapp/img/arrow_down.svg | 60 ++++++++++++ jsapp/img/arrow_down_offset.svg | 60 ++++++++++++ jsapp/img/arrow_up.svg | 60 ++++++++++++ jsapp/img/arrow_up_offset.svg | 60 ++++++++++++ jsapp/img/logo.svg | 90 +++++++++++++++++ jsapp/img/netopi.svg | 60 ++++++++++++ jsapp/index.html | 48 +++++++++ jsapp/style.css | 161 +++++++++++++++++++++++++++++++ 10 files changed, 599 insertions(+) create mode 100644 jsapp/favicon.ico create mode 100644 jsapp/font/BebasNeue-Regular.ttf create mode 100644 jsapp/img/arrow_down.svg create mode 100644 jsapp/img/arrow_down_offset.svg create mode 100644 jsapp/img/arrow_up.svg create mode 100644 jsapp/img/arrow_up_offset.svg create mode 100644 jsapp/img/logo.svg create mode 100644 jsapp/img/netopi.svg create mode 100644 jsapp/index.html create mode 100644 jsapp/style.css diff --git a/jsapp/favicon.ico b/jsapp/favicon.ico new file mode 100644 index 0000000..e69de29 diff --git a/jsapp/font/BebasNeue-Regular.ttf b/jsapp/font/BebasNeue-Regular.ttf new file mode 100644 index 0000000000000000000000000000000000000000..83a29bfc83b59227f3230f80d3a0e851969b869c GIT binary patch literal 57624 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 N885vUqCU*%KLJ@t7A*h( literal 0 HcmV?d00001 diff --git a/jsapp/img/arrow_down.svg b/jsapp/img/arrow_down.svg new file mode 100644 index 0000000..138d871 --- /dev/null +++ b/jsapp/img/arrow_down.svg @@ -0,0 +1,60 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/jsapp/img/arrow_down_offset.svg b/jsapp/img/arrow_down_offset.svg new file mode 100644 index 0000000..d1288c3 --- /dev/null +++ b/jsapp/img/arrow_down_offset.svg @@ -0,0 +1,60 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/jsapp/img/arrow_up.svg b/jsapp/img/arrow_up.svg new file mode 100644 index 0000000..7a8b885 --- /dev/null +++ b/jsapp/img/arrow_up.svg @@ -0,0 +1,60 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/jsapp/img/arrow_up_offset.svg b/jsapp/img/arrow_up_offset.svg new file mode 100644 index 0000000..2c24f6a --- /dev/null +++ b/jsapp/img/arrow_up_offset.svg @@ -0,0 +1,60 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/jsapp/img/logo.svg b/jsapp/img/logo.svg new file mode 100644 index 0000000..aa063ca --- /dev/null +++ b/jsapp/img/logo.svg @@ -0,0 +1,90 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/jsapp/img/netopi.svg b/jsapp/img/netopi.svg new file mode 100644 index 0000000..87372b0 --- /dev/null +++ b/jsapp/img/netopi.svg @@ -0,0 +1,60 @@ + + + + + + image/svg+xml + + + + + + + + + + diff --git a/jsapp/index.html b/jsapp/index.html new file mode 100644 index 0000000..7b8292a --- /dev/null +++ b/jsapp/index.html @@ -0,0 +1,48 @@ + + + + + + + + Termostat + + + + + +
+
+ +
+ Aktuální stav +
+ Netopí + Stav - netopí +
+
+
+
+

Požadovaná teplota

+
+ Zvýšit požadovanou teplotu +
27.1
+ Snížit požadovanou teplotu + Offset + Zvýšit offset +
0.3
+ Snížit offset +
+
+ +
+ + + \ No newline at end of file diff --git a/jsapp/style.css b/jsapp/style.css new file mode 100644 index 0000000..e420eaa --- /dev/null +++ b/jsapp/style.css @@ -0,0 +1,161 @@ +@font-face { + font-family: bebas; + src: url(BebasNeue-Regular.ttf); +} + +body, +html { + width: 100vw; + height: 100vh; + margin: 0; + + font-family: bebas; + font-size: 7vw; + color: #404040; +} + +main { + height: 100vh; + width: 100vw; +} + +header { + background-color: white; + display: grid; + grid-template-columns: auto auto; + grid-template-rows: auto; + padding: 1rem 0.8rem 1rem 0.2rem; + border-bottom: 1px solid #d2d2d2; + outline: 1px solid #d2d2d2; + outline-offset: 2px; +} + +.logo { + justify-self: start; + align-self: center; + + display: grid; + grid-template-columns: auto auto; + grid-template-rows: auto; + align-items: center; +} +.logo h1 { + display: inline-block; + font-weight: 200; + margin: 0; + margin-left: -0.3rem; + font-size: 1.7rem; +} +.logo img { + height: 1.4rem; + margin-top: -0.3rem; +} + +.state { + font-size: 0.6rem; + text-align: right; + align-self: center; +} +#actual-state { + color: #e10000; +} +.state img { + vertical-align: middle; + margin-left: 0.2rem; +} + +section h2 { + text-align: center; + font-weight: normal; + font-size: 1.2rem; + margin-bottom: 0.3rem; +} + +.inputs { + display: grid; + grid-template-columns: 10vw auto auto 8vw; + grid-template-rows: auto auto auto auto; + justify-items: center; + align-items: center; + text-align: center; + grid-template-areas: + ". . offsetText ." + ". tempUp offsetUp ." + ". reqTemp offset ." + ". tempDown offsetDown ."; +} + +.inputs .tempUp { + grid-area: tempUp; + height: 3.2rem; +} + +.inputs .tempDown { + grid-area: tempDown; + height: 3.2rem; +} + +.inputs #reqTemp { + grid-area: reqTemp; + font-size: 3.4rem; + color: black; +} + +.inputs span { + grid-area: offsetText; + font-size: 0.5rem; + color: #c1c1c1; + margin-bottom: -2.5rem; +} + +.inputs .offsetUp { + grid-area: offsetUp; + height: 2.5rem; + margin-bottom: -1.5rem; +} + +.inputs #offset { + grid-area: offset; + font-size: 2rem; + color: #9a9a9a; +} + +.inputs .offsetDown { + grid-area: offsetDown; + height: 2.5rem; + margin-top: -1.5rem; +} + +footer { + background-color: #404040; + position: absolute; + bottom: 0; + width: 100vw; + color: white; +} + +footer h2 { + text-align: center; + font-weight: normal; + font-size: 1.2rem; + margin-bottom: 0.3rem; +} + +footer #temp { + text-align: center; + font-weight: normal; + font-size: 2.1rem; + margin-bottom: 1.5rem; +} + +a { + position: absolute; + bottom: 0.3rem; + right: 0.3rem; + text-decoration: none; + font-size: 0.8rem; +} + +a:visited { + color: white; +} \ No newline at end of file