Compare commits

...

2 commits

Author SHA1 Message Date
6392c1941c Page simplification. 2025-05-09 20:15:58 +02:00
1e9658d189 Fix Home page. 2025-05-09 20:13:32 +02:00
2 changed files with 20 additions and 22 deletions

View file

@ -66,28 +66,26 @@ render _ = HH.div_
]
where
url_linuxfr = "https://linuxfr.org/news/netlibre-un-service-libre-et-un-nom-de-domaine-gratuit"
title = Web.h3
expl content = Web.quote [ Web.explanation content ]
p = Web.p
b x = Web.column_ [ Web.box [ Web.quote x ] ]
title = Web.h4
b x = Web.column_ [ Web.box x ]
render_description = Web.columns_ [ render_basics, render_no_expert, render_no_housing ]
render_update_why_and_contact = Web.columns_ [ render_updates, render_why, render_contact ]
render_basics
= b [ title "What is provided?"
, p "Reserve a domain name in <something>.netlib.re for free."
, p "Manage your own DNS zone."
, Web.p "Reserve a domain name in <something>.netlib.re for free."
, Web.p "Manage your own DNS zone."
]
render_no_expert
= b [ title "No need to be an expert"
, p """
, Web.p """
This website will help you through your configuration, as much as we can.
"""
]
render_no_housing
= b [ title "No housing, just a name"
, p """
, Web.p """
We don't host your services or websites.
We just provide a name.
You can host your websites anywhere you want: at home for example.
@ -95,32 +93,32 @@ render _ = HH.div_
]
render_updates
= b [ title "Automatic updates"
, p "Update your records with a single, stupidly simple command. For example:"
, expl [ Web.strong "wget https://www.netlib.re/token-update/<token>" ]
, p "Every A and AAAA records have tokens for easy updates."
, Web.p "Update your records with a single, stupidly simple command. For example:"
, Web.quote [ Web.strong "wget https://www.netlib.re/token-update/<token>" ]
, Web.p "Every A and AAAA records have tokens for easy updates."
]
render_why
= b [ title "Why?"
, p "Because everyone should be able to have a place on the Internet."
, p "We provide a name, build something meaningful with it."
, Web.p "Because everyone should be able to have a place on the Internet."
, Web.p "We provide a name, build something meaningful with it."
]
render_contact
= b [ title "Contact"
, p "You have a question, you have seen a bug, you have suggestions or you just want to chat?"
, p "You can contact me: philippe@netlib.re"
, p "For legal matter: abuse@netlib.re"
, Web.p "You have a question, you have seen a bug, you have suggestions or you just want to chat?"
, Web.p "You can contact me: philippe@netlib.re"
, Web.p "For legal matter: abuse@netlib.re"
]
render_how_and_code = Web.columns_ [ render_how, render_code ]
render_how
= b [ title "How does this work?"
, p "We pay for the domain names (netlib.re and codelib.re) and let you have a subdomain."
, p "This service helps you manage your domain (a subdomain of netlib.re or codelib.re)."
, Web.p "We pay for the domain names (netlib.re and codelib.re) and let you have a subdomain."
, Web.p "This service helps you manage your domain (a subdomain of netlib.re or codelib.re)."
]
render_code
= b [ title "I want to see the code! 🤓​"
, p "The project is fully open-source (ISC licence)."
, Web.p "The project is fully open-source (ISC licence)."
, HH.text "There are a few parts:"
, HH.ul_
[ link "https://git.baguette.netlib.re/Baguette/authd" "authentication daemon"

View file

@ -5,13 +5,13 @@ import Halogen.HTML.Properties as HP
import CSSClasses as C
h1 :: forall (w :: Type) (a :: Type). String -> HH.HTML w a
h1 :: forall w a. String -> HH.HTML w a
h1 str = HH.h1 [ HP.classes [C.title] ] [ HH.text str ]
h3 :: forall (w :: Type) (a :: Type). String -> HH.HTML w a
h3 :: forall w a. String -> HH.HTML w a
h3 str = HH.h3 [ HP.classes [C.title] ] [ HH.text str ]
h4 :: forall (w :: Type) (a :: Type). String -> HH.HTML w a
h4 :: forall w a. String -> HH.HTML w a
h4 str = HH.h4 [ HP.classes [C.title] ] [ HH.text str ]
title :: forall w a. String -> HH.HTML w a