🎉 migrate to flake

This commit is contained in:
DrMaxNix 2023-04-08 19:06:24 +02:00
parent 9334097668
commit 957e3c4fb4
8 changed files with 395 additions and 0 deletions

BIN
asset/banner.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 KiB

BIN
asset/hair-blue.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 550 KiB

BIN
asset/hair-cut.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

BIN
asset/hair-styled.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 430 KiB

BIN
asset/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

20
meta.php Normal file
View File

@ -0,0 +1,20 @@
<?php
// VERSION //
self::$version = "1.0.0";
// DEPENDENCIES //
// used extensions
self::$use[] = "page";
self::$use[] = "hidden";
// ROUTES //
self::$route["www.fritteuseneddie.de"] = [
["path" => "**", "redirect_domain" => "fritteuseneddie.de"]
];
self::$route["fritteuseneddie.de"] = [
["path" => "", "target" => "page/start"]
];
?>

123
page/start/index.php Normal file
View File

@ -0,0 +1,123 @@
<?php
Page::start();
Page::title("Eddie's Friseursalon");
Page::icon("./asset/icon.png");
Page::robots(index: false, follow: false);
Page::css(__DIR__ . "/style.css");
Page::font("tabler");
Page::font("niconne");
Page::font("anonymous-pro");
Page::viewport(scale: 1.0, zoom: true);
?>
<div class="banner" style="--bg-url: url('<?= File::preview("./asset/banner.jpg") ?>')">
<div class="container">
<span class="title">Eddie's Friseur&shy;salon</span>
</div>
</div>
<div class="section offers">
<div class="container">
<span class="heading">Leistungen</span>
<div class="list">
<div class="item">
<img class="picture" src="<?= File::preview("./asset/hair-cut.jpg") ?>" />
<span class="title">Care</span>
<ul class="desc">
<li><span>Schneiden</span></li>
<li><span>Waschen</span></li>
<li><span>Föhnen</span></li>
</ul>
</div>
<div class="item">
<img class="picture" src="<?= File::preview("./asset/hair-blue.jpg") ?>" />
<span class="title">Coloration</span>
<ul class="desc">
<li><span>Bleichen</span></li>
<li><span>Färben</span></li>
<li><span>Strähnen</span></li>
</ul>
</div>
<div class="item">
<img class="picture" src="<?= File::preview("./asset/hair-styled.jpg") ?>" />
<span class="title">Styling</span>
<ul class="desc">
<li><span>Frisuren</span></li>
<li><span>Make-up</span></li>
</ul>
</div>
</div>
</div>
</div>
<div class="section opinions">
<div class="container">
<span class="heading">Das sagen unsere Kund*innen</span>
<div class="list">
<div class="item">
<span class="name">Alexander Z.</span>
<span class="rating"><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i></span>
<span class="text">Nach Jahren habe ich endlich den richtigen Laden gefunden. Wunderschöne Farben und super Kundenbetreuung. Weiter so!</span>
</div>
<div class="item">
<span class="name">Fiona S.</span>
<span class="rating"><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i></span>
<span class="text">Sehr gute Qualität von Gespräch und Service. Hatte keine langweilige Minute während dem Einwirken der Farbe. Gerne wieder!</span>
</div>
<div class="item">
<span class="name">Kernsteiner Rainer</span>
<span class="rating"><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i></span>
<span class="text">Wahnsinn! Endlich ein Friseur, der einen versteht!! Ich habe mich hier total wohl gefühlt und bin super zufrieden mit meiner neuen Frisur :)</span>
</div>
<div class="item">
<span class="name">J. Vogler</span>
<span class="rating"><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i></span>
<span class="text">Echt geiler Laden, auch wenn's ab und zu ein bisschen unordentlich ist.</span>
</div>
<div class="item">
<span class="name">Karin U. K.</span>
<span class="rating"><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star-filled"></i><i class="ti ti-star"></i></span>
<span class="text">Ich dachte das hier wäre ein Restaurant.</span>
</div>
</div>
</div>
</div>
<div class="section footer">
<div class="container">
<div class="list">
<div class="item contact">
<span class="small-heading">Kontakt</span>
<span class="mail">E-Mail: <a <?= Hidden::href("mailto:mail@fritteuseneddie.de") ?>><?= Hidden::text("mail@fritteuseneddie.de") ?></a></span>
</div>
<div class="item legal">
<span class="imprint"><a href="https://www.tjdev.de/impressum">Impressum</a></span>
<span class="privacy"><a href="https://www.tjdev.de/datenschutz">Datenschutzerklärung</a></span>
<span class="copyright">&copy; fritteuseneddie.de 2023</span>
<span class="version">v<?= Project::meta_self()["version"] ?></span>
</div>
</div>
</div>
</div>

252
page/start/style.css Normal file
View File

@ -0,0 +1,252 @@
* {
--theme: #92FF27;
--theme-dark: #462;
}
html, body {
margin: 0px;
padding: 0px;
overflow-x: hidden;
background-color: #000;
}
body {
font-size: 0px;
font-family: "Anonymous Pro", monospace;
}
span, li::marker {
font-size: 1rem;
color: #fff;
}
.banner {
position: relative;
width: 100%;
min-height: 20rem;
height: 30vh;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
}
.banner::before {
content: '';
position: absolute;
top: -12px;
left: -12px;
width: calc(100% + 24px);
height: calc(100% + 24px);
background-color: #222;
background-image: var(--bg-url);
background-size: cover;
background-repeat: no-repeat;
background-position: center;
filter: grayscale(30%) brightness(80%) blur(6px);
}
.banner .container {
z-index: 5;
}
.banner .container .title {
display: block;
width: calc(100% - 4rem);
padding: 2rem;
font-size: 6rem;
font-family: "Niconne", cursive;
color: #fff;
text-align: center;
color: var(--theme);
}
@media only screen and (max-width: 1000px) {
.banner {
height: 50vh;
}
.banner .container .title {
font-size: 4rem;
}
}
.section {
padding: 4rem 0rem;
display: flex;
align-items: center;
justify-content: center;
}
.section .container {
width: 80%;
}
.section .heading {
display: block;
width: 100%;
margin: 0px 0px 4rem 0px;
font-size: 3rem;
color: #fff;
text-align: center;
text-decoration: underline;
}
.section .list {
width: auto;
max-width: 100%;
display: flex;
flex-flow: row wrap;
align-items: flex-start;
justify-content: center;
gap: 2rem;
}
.section.offers {
background-color: var(--theme-dark);
background-color: color();
}
.section.offers .list .item {
flex-basis: 16rem;
padding: 2rem;
border-radius: 1rem;
background-color: #333;
}
.section.offers .list .item .picture {
display: block;
width: 12rem;
height: 12rem;
margin: auto;
background-color: #aaa;
object-fit: cover;
border-radius: 50%;
}
.section.offers .list .item .title {
display: block;
width: 100%;
margin: 1rem 0px;
font-size: 2rem;
text-align: center;
color: var(--theme);
}
.section.offers .list .item .desc li {
margin: 0px 0px 0.5rem 0px;
}
.section.opinions {
background-color: #333;
}
.section.opinions .list .item {
flex-basis: 24rem;
padding: 2rem;
border-radius: 1rem;
background-color: #666;
}
.section.opinions .list .item .name, .section.opinions .list .item .rating, .section.opinions .list .item .text {
display: block;
color: #fff;
text-align: center;
}
.section.opinions .list .item .name {
color: var(--theme);
}
.section.opinions .list .item .name, .section.opinions .list .item .rating {
margin: 0px 0px 1rem 0px;
font-size: 2rem;
}
.section.footer {
background-color: #000;
}
.section.footer .list {
align-items: center;
}
.section.footer .list .item {
flex-basis: 24rem;
padding: 2rem;
text-align: center;
}
.section.footer .list .item a {
color: inherit;
}
.section.footer .list .item > span {
margin: 0px 0px 1rem 0px;
display: block;
}
.section.footer .list .item.contact .small-heading {
display: block;
font-size: 2rem;
margin: 0px 0px 1rem 0px;
}
.section.footer .list .item.contact a, .section.footer .list .item.contact a > span {
color: var(--theme);
}