Updated about page and its strings, Updated readme, Updated sitemap

Update app.py - BS4.run.xml, sidebar.yml, and 6 more files...
This commit is contained in:
2025-09-14 22:05:05 +02:00
parent 9add4e5171
commit fbd844523c
8 changed files with 317 additions and 257 deletions

26
.run/app.py - BS4.run.xml Normal file
View File

@@ -0,0 +1,26 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="app.py - BS4" type="PythonConfigurationType" factoryName="Python">
<module name="Web-NibblePoker" />
<option name="ENV_FILES" value="" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
<env name="NP_HTML_POST_PROCESS" value="BS4" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/app.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
</component>

View File

@@ -58,11 +58,11 @@
- {}
#- title_key: text.about
# abs_href: "/about"
# icon: fad fa-user
# active_id: about
# has_new_until_utc: 0
- title_key: text.about
abs_href: "/about"
icon: fad fa-user
active_id: about
has_new_until_utc: 0
- title_key: text.contact
abs_href: "/contact"

View File

@@ -7,6 +7,10 @@ sitemap:
lastmod: "2025-03-30T00:00:00+01:00"
priority: "1"
"/about/":
lastmod: "2025-09-14T22:04:00+01:00"
priority: "0.2"
"/contact/":
lastmod: "2025-03-01T07:40:00+01:00"
priority: "0.5"

View File

@@ -1,80 +1,93 @@
# EN - About
head.title: About - NibblePoker
head.description: 'TODO: description'
og.title: NibblePoker - About
og.description: 'TODO: description'
header.title: About
intro.title: Introduction
intro.text.01: My name is Herwin Bozet, I'm an experienced developer with extensive
experience in PureBasic, Python, Java, VBA; and intermediate knowledge in C, Win32
APIs, embedded systems and general web development.
intro.text.02: I've been programming for about 10 years now, and for the last
5 years I've been actively working on applying that experience to a variety of projects
with the aim of helping programmers and people in their day-to-day life.
intro.text.10: NibblePoker is, in essence, a simple moniker and the front-end
for most of my public-focused work.
intro.text.11: It houses all my work made and tailored for usage by other people.
intro.text.20: This entire website, as well as all my work for it and other
personal projects, is completely open-source and available under permissive <abbr
title="Open Source Initiative">OSI</abbr> approved licenses.
intro.text.21: All of it is maintained, developed and expanded in my free time
with the occasional help from people in the open-source community.
tenets.title: Core tenets
tenets.text.01: ''
tenets.text.02: ''
future.title: Future plans
future.text.01: It is planned to turn NibblePoker into a <abbr title="Private
company with limited liability">SPRL</abbr> in a couple years if everything goes
as planned.
future.text.02: This would allow me to centralize many things and invest properly
in my targetted fields to achieve my goals.
future.text.10: The goal would be to create a small sustainable local business
that offers a wide range of products and solutions covering <abbr title="Internet
of things">IoT</abbr> devices, programming, and technological independence ; All
while including the required software and hardware components often lacking in such
products and solutions.
future.text.20: Ultimately, all this work and research would be made available
to the public under open-source licenses, enabling anyone who wishes to learn, reuse,
and resell open-source products, to do so in a similar way as companies like Adafruit
do.
_nibblepoker.title: The 'NibblePoker' name
_nibblepoker.text.01: TODO
_nibblepoker.text.10: TODO
_nibblepoker.text.11: TODO
_nibblepoker.text.20: TODO
financing.title: Financing
financing.text.01: This website, as well as the surrounding infrastructure,
was made to cost as little as possible while not being reliant on any censor-happy
companies.
financing.text.02: Following my core tenets, I also wanted to retain some sort
of "technological sovereignty", and therefore refuse to support or use companies
that actively fight against legal free speech.
financing.text.10: The details of the operating costs are provided below to
illustrate the low price of such independence.
financing.text.20: And for those of you who are more motivated, I hope to inspire
you to at least try this kind of activity.
financing.text.21: It may seem daunting at first, but for a fraction of the
cost presented here, <b>and with a bit of motivation</b>, you can already accomplish
a lot of things and gain valuable knowledge for a world as interconnected as ours.
financing.text.isp: The main ISP bill isn't accounted for since this could run
off some random public Wi-Fi.
financing.part.service: Service
financing.part.cost: Cost
financing.part.cost.total: Total Cost
financing.part.equipment: Equipment
financing.part.cost.yearly: Yearly Cost
financing.part.cost.yearly.total: Yearly Cost
financing.part.domain.lu: "<i>.lu</i> domain"
financing.part.domain.com: "<i>.com</i> domain"
financing.part.proxy.europe: European reverse-proxy
financing.part.proxy.america: American reverse-proxy
financing.part.proxy.asia: Asian reverse-proxy
financing.part.emails: Emails
financing.part.electricity: Electricity
financing.part.nanopir4s: NanoPi R4S
financing.part.nanopir4s.desc: Handles all non public-facing tasks and services.
financing.part.storage: Local storage
aziascreations.title: The 'AziasCreations' name
_aziascreations.text.01: TODO
_aziascreations.text.10: TODO
head:
title: About - NibblePoker
description: 'TODO: description'
og:
title: NibblePoker - About
description: 'TODO: description'
header:
title: About
intro:
title: Introduction
text:
p1:
l1: My name is Herwin Bozet, I'm an experienced developer with extensive
experience in PureBasic, Python, .NET, Java; and intermediate knowledge in C, Win32
APIs, embedded systems and general web development.
# l2: I've been programming for about 10 years now, and for the last
# 5 years I've been actively working on applying that experience to a variety of projects
# with the aim of helping programmers and people in their day-to-day life.
#p2:
# l1: NibblePoker is, in essence, a simple moniker and the front-end
# for most of my public-focused work.
# l2: It houses all my work made and tailored for usage by other people.
p3:
l1: This entire website, as well as all my work for it and other
personal projects, is completely open-source and available under permissive <abbr
title="Open Source Initiative">OSI</abbr> approved licenses.
l2: All of it is maintained, developed and expanded in my free time
with the occasional help from people in the open-source community.
future:
title: Future plans
text:
p1:
l1: It is planned to turn NibblePoker into a <abbr title="Private
company with limited liability">SPRL</abbr> in a couple years if everything goes
as planned.
l2: This would allow me to centralize many things and invest properly
in my targeted fields to achieve my goals.
p2:
l1: The goal would be to create a small sustainable local business
that offers a wide range of products and solutions covering <abbr title="Internet
of things">IoT</abbr> devices, programming, and technological independence ; All
while including the required software and hardware components often lacking in such
products and solutions.
p3:
l1: Ultimately, all this work and research would be made available
to the public under open-source licenses, enabling anyone who wishes to learn, reuse,
and resell open-source products, to do so in a similar way as companies like Adafruit
do.
financing:
title: Financing
text:
p1:
l1: This website, as well as the surrounding infrastructure,
was made to cost as little as possible while not being reliant on any censor-happy
companies.
l2: Following my core tenets, I also wanted to retain some sort
of "technological sovereignty", and therefore refuse to support or use companies
that actively fight against legal free speech.
p2:
l1: The details of the operating costs are provided below to
illustrate the low price of such independence.
p3:
l1: And for those of you who are more motivated, I hope to inspire
you to at least try this kind of activity.
l2: It may seem daunting at first, but for a fraction of the
cost presented here, <b>and with a bit of motivation</b>, you can already accomplish
a lot of things and gain valuable knowledge for a world as interconnected as ours.
isp: The main ISP bill isn't accounted for since this could run
off some random public Wi-Fi.
part:
service: Service
equipment: Equipment
cost: Cost
cost.total: Total Cost
cost.yearly: Yearly Cost
cost.yearly.total: Yearly Cost
domain.lu: "<i>.lu</i> domain"
domain.com: "<i>.com</i> domain"
proxy.europe: European reverse-proxy
proxy.america: American reverse-proxy
proxy.asia: Asian reverse-proxy
emails: Emails
electricity: Electricity
nanopir4s: NanoPi R4S
nanopir4s.desc: Handles all non public-facing tasks and services.
storage: Local storage

View File

@@ -1,94 +1,96 @@
# FR - About
head.title: À-propos - NibblePoker
head.description: 'TODO: description'
og.title: NibblePoker - À-propos
og.description: 'TODO: description'
header.title: À-propos
intro.title: Introduction
intro.text.01: Je m'appelle Herwin Bozet, et je suis un développeur expérimenté
en PureBasic, Python, Java, VBA ; et de manière plus modérée en C, API Win32, systèmes
embarqués et le développement web général.
intro.text.02: Je programme depuis environ 10 ans, et au cours des 5 dernières
années, j'ai activement travaillé à l'application de cette expérience à divers projets
dans le but d'aider les programmeurs et les gens dans leur vie quotidienne.
intro.text.10: NibblePoker est, en essence, un simple pseudonyme et une ombrelle
sous laquelle la majeure partie de mon travail axé sur le public sera présente.
intro.text.11: Il abrite l'ensemble de mon travail créé et adapté pour être
utilisé par d'autres personnes.
intro.text.20: L'ensemble de ce site web, ainsi que l'ensemble de mon travail
et autres projets personnels réalisés pour lui, sont entièrement open-source et
disponibles sous des licences permissives approuvées par l'<abbr title="Open Source
Initiative">OSI</abbr>.
intro.text.21: Tout cela est maintenu, développé et étendu pendant mon temps
libre, avec l'aide occasionnelle de personnes de la communauté open source.
tenets.title: Principes fondamentaux
tenets.text.01: ''
tenets.text.02: ''
future.title: Projet d'avenir
future.text.01: 'Il est prévu que je décline NibblePoker en une petite <abbr
title="Societé privée à responsibilité limitée">SPRL</abbr> d''ici quelques années
si tout se déroule comme prévu.
head:
title: À-propos - NibblePoker
description: 'TODO: description'
'
future.text.02: Cela aura pour but de me permettre de centraliser plein de choses
et d'investir correctement dans mes domaines de prédilection.
future.text.10: La finalité serait de pouvoir créer un petit projet local d'entreprise
durable, ainsi que de proposer une large gamme de produits et solutions couvrant
les domaines de l'électronique connectée et intelligente, la programmation et lindépendance
technologique tout en incluant les composantes logicielles et physiques souvent
manquantes dans de tels produits et solutions.
future.text.20: Finalement tout ce travail et recherches seraient mis à disposition
du public sous des licences open-source afin de permettre permettant à quiconque
le souhaite dapprendre, réutiliser et revendre des produits ouverts tels que le
font des compagnies comme Adafruit.
_nibblepoker.title: Le nom 'NibblePoker'
_nibblepoker.text.01: Le surnom '<i>NibblePoker</i>' est un mot composé de plusieurs
termes [techniques] plus anciens.
_nibblepoker.text.10: "●&nbsp;&nbsp;'<i>Nibble</i>' est un terme technique anglais
historiquement utilisé pour décrire décrit un demi-octet, ou 4 bits d'information."
_nibblepoker.text.11: "●&nbsp;&nbsp;'<i>Poker</i>' viens du verbe anglais '<i>to
poke</i>' qui, dans le domaine rétro-informatique, décrit le fait d'écrire des données
dans la mémoire d'un ordinateur."
_nibblepoker.text.20: Finalement, lors de la création de ce surnom, je travaillais
depuis quelques temps sur d'anciennes machines telle la Commodore64, Acorn Electron
et [???]ironique.
financing.title: Financement
financing.text.01: Ce site web, ainsi que son infrastructure environnante, ont
été conçus pour coûter le moins possible tout en étant indépendants d'entreprises
qui se prennent pour des censeurs.
financing.text.02: Et en suivant mes principes fondamentaux, je souhaitais également
conserver une "souveraineté technologique", et, par conséquent, refuse de soutenir
ou d'utiliser des entreprises qui luttent activement contre la liberté d'expression.
financing.text.10: Le détail des coûts opérationnels sont présents ci-dessous
afin d'illustrer le faible prix d'une telle indépendance.
financing.text.20: Et pour les plus motivés d'entre-vous, j'espère pouvoir vous
motiver à au moins tester ce genre d'activités.
financing.text.21: C'est un domaine qui peut paraître intimidant de prime abord,
mais pour une fraction du coût présenté ici, <b>et avec un rien de motivation</b>,
vous pouvez déjà accomplir énormément de choses et acquérir des connaissances essentielles
dans un monde aussi connecté que le nôtre.
financing.text.isp: Le coût de la connexion internet n'est pas compté car elle
pourrait être remplacée par un Wi-Fi public lambda.
financing.part.service: Service
financing.part.cost: Coût
financing.part.cost.total: Coût Total
financing.part.equipment: Matériel
financing.part.cost.yearly: Coût Annuel
financing.part.cost.yearly.total: Coût Annuel
financing.part.domain.lu: Domaine en <i>.lu</i>
financing.part.domain.com: Domaine en <i>.com</i>
financing.part.proxy.europe: Reverse-proxy en Europe
financing.part.proxy.america: Reverse-proxy en Amérique
financing.part.proxy.asia: Reverse-proxy en Asie
financing.part.emails: Adresses email
financing.part.electricity: Électricité
financing.part.nanopir4s: NanoPi R4S
financing.part.nanopir4s.desc: Gère tous les services et programmes internes.
financing.part.storage: Stockage local
aziascreations.title: Le nom 'AziasCreations'
aziascreations.text.01: L'ancien surnom 'AziasCreations' était utilisé entre
2013 et 2020 et est à présent abandonné au profit de <i>NibblePoker</i>.
aziascreations.text.10: Cependant, il reste utilisé sur GitHub et Gitea à cause
de certaines limitations concernant les changements de pseudonyme qui m'ont empèché
de faire un changement complet.
og:
title: NibblePoker - À-propos
description: 'TODO: description'
header:
title: À-propos
intro:
title: Introduction
text:
p1:
l1: Je m'appelle Herwin Bozet, et je suis un développeur expérimenté
en PureBasic, Python, Java, VBA ; et de manière plus modérée en C, API Win32, systèmes
embarqués et le développement web général.
# l2: Je programme depuis environ 10 ans, et au cours des 5 dernières
# années, j'ai activement travaillé à l'application de cette expérience à divers projets
# dans le but d'aider les programmeurs et les gens dans leur vie quotidienne.
#p2:
# l1: NibblePoker est, en essence, un simple pseudonyme et une ombrelle
# sous laquelle la majeure partie de mon travail axé sur le public sera présente.
# l2: Il abrite l'ensemble de mon travail créé et adapté pour être
# utilisé par d'autres personnes.
p3:
l1: L'ensemble de ce site web, ainsi que l'ensemble de mon travail
et autres projets personnels réalisés pour lui, sont entièrement open-source et
disponibles sous des licences permissives approuvées par l'<abbr title="Open Source
Initiative">OSI</abbr>.
l2: Tout cela est maintenu, développé et étendu pendant mon temps
libre, avec l'aide occasionnelle de personnes de la communauté open source.
future:
title: Projet d'avenir
text:
p1:
l1: 'Il est prévu que je décline NibblePoker en une petite <abbr
title="Societé privée à responsibilité limitée">SPRL</abbr> d''ici quelques années
si tout se déroule comme prévu.'
l2: Cela aura pour but de me permettre de centraliser plein de choses
et d'investir correctement dans mes domaines de prédilection.
p2:
l1: La finalité serait de pouvoir créer un petit projet local d'entreprise
durable, ainsi que de proposer une large gamme de produits et solutions couvrant
les domaines de l'électronique connectée et intelligente, la programmation et lindépendance
technologique tout en incluant les composantes logicielles et physiques souvent
manquantes dans de tels produits et solutions.
p3:
l1: Finalement tout ce travail et recherches seraient mis à disposition
du public sous des licences open-source afin de permettre permettant à quiconque
le souhaite dapprendre, réutiliser et revendre des produits ouverts tels que le
font des compagnies comme Adafruit.
financing:
title: Financement
text:
p1:
l1: Ce site web, ainsi que son infrastructure environnante, ont
été conçus pour coûter le moins possible tout en étant indépendants d'entreprises
qui se prennent pour des censeurs.
l2: Et en suivant mes principes fondamentaux, je souhaitais également
conserver une "souveraineté technologique", et, par conséquent, refuse de soutenir
ou d'utiliser des entreprises qui luttent activement contre la liberté d'expression.
p2:
l1: Le détail des coûts opérationnels sont présents ci-dessous
afin d'illustrer le faible prix d'une telle indépendance.
p3:
l1: Et pour les plus motivés d'entre-vous, j'espère pouvoir vous
motiver à au moins tester ce genre d'activités.
l2: C'est un domaine qui peut paraître intimidant de prime abord,
mais pour une fraction du coût présenté ici, <b>et avec un rien de motivation</b>,
vous pouvez déjà accomplir énormément de choses et acquérir des connaissances essentielles
dans un monde aussi connecté que le nôtre.
isp: Le coût de la connexion internet n'est pas compté car elle
pourrait être remplacée par un Wi-Fi public lambda.
part:
service: Service
equipment: Matériel
cost: Coût
cost.total: Coût Total
cost.yearly: Coût Annuel
cost.yearly.total: Coût Annuel
domain.lu: Domaine en <i>.lu</i>
domain.com: Domaine en <i>.com</i>
proxy.europe: Reverse-proxy en Europe
proxy.america: Reverse-proxy en Amérique
proxy.asia: Reverse-proxy en Asie
emails: Adresses email
electricity: Électricité
nanopir4s: NanoPi R4S
nanopir4s.desc: Gère tous les services et programmes internes.
storage: Stockage local

View File

@@ -1,3 +1,5 @@
# This docker-compose file should only be used for development !
services:
www_nibblepoker_lu:
container_name: www-nibblepoker-python

View File

@@ -8,6 +8,7 @@ Public repository containing the source code for [nibblepoker.lu](https://nibble
* [CircuitPython - Ebyte E32 Driver](https://nibblepoker.lu/content/circuitpython-ebyte-e32/)
* [DotNet-ListComPort](https://nibblepoker.lu/content/lscom-cli-dotnet/)
* [Mini Dockerized CCTV NVR](https://nibblepoker.lu/content/docker-mini-cctv-nvr/)
* [PEArch](https://nibblepoker.lu/content/pearch/)
* Web-based Tools
* [Excel Password Remover](https://nibblepoker.lu/tools/excel-password-remover/)
* [IBAN Generator](https://nibblepoker.lu/tools/iban-generator/)
@@ -16,7 +17,7 @@ Public repository containing the source code for [nibblepoker.lu](https://nibble
## Related Projects
TODO
* [aziascreations/Excel-Worksheet-Password-Remover](https://github.com/aziascreations/Excel-Worksheet-Password-Remover)
## Local Setup

View File

@@ -9,93 +9,105 @@
{% block main_content %}
{{ render_h1(l10n("intro.title", "about", user_lang)) }}
<img src="/resources/NibblePoker/images/about/profile-pic.jpg"
alt="" class="r-r img-profile f-right m-xs ml-xxs"
draggable="false">
{{ render_paragraph(l10n("intro.text.01", "about", user_lang) + l10n("intro.text.02", "about", user_lang)) }}
{{ render_paragraph(l10n("intro.text.10", "about", user_lang) + l10n("intro.text.11", "about", user_lang)) }}
{{ render_paragraph(l10n("intro.text.20", "about", user_lang) + l10n("intro.text.21", "about", user_lang)) }}
<section class="mt-l mt-0-if-first">
{{ render_h1(l10n("intro.title", "about", user_lang)) }}
<div class="content-spacer">
<img src="/resources/NibblePoker/images/about/profile-pic.jpg"
alt="" class="r-r img-profile f-right m-xs ml-xxs"
draggable="false">
{{ render_paragraph(l10n("intro.text.p1.l1", "about", user_lang)) }}
{{ render_paragraph(l10n("intro.text.p3.l1", "about", user_lang) + "<br>" + l10n("intro.text.p3.l2", "about", user_lang)) }}
</div>
</section>
<!--{{ render_h1(l10n("tenets.title", "about", user_lang)) }}
<p class="mt-xs ml-s t-bold">
TODO
</p>-->
<section class="mt-l mt-0-if-first">
{{ render_h1(l10n("future.title", "about", user_lang)) }}
<div class="content-spacer">
{{ render_paragraph(l10n("future.text.p1.l1", "about", user_lang) + "<br>" + l10n("future.text.p1.l2", "about", user_lang)) }}
{{ render_paragraph(l10n("future.text.p2.l1", "about", user_lang)) }}
{{ render_paragraph(l10n("future.text.p3.l1", "about", user_lang)) }}
</div>
</section>
{{ render_h1(l10n("future.title", "about", user_lang)) }}
{{ render_paragraph(l10n("future.text.01", "about", user_lang) + l10n("future.text.02", "about", user_lang)) }}
{{ render_paragraph(l10n("future.text.10", "about", user_lang)) }}
{{ render_paragraph(l10n("future.text.20", "about", user_lang)) }}
<section class="mt-l mt-0-if-first">
{{ render_h1(l10n("financing.title", "about", user_lang)) }}
<div class="content-spacer">
{{ render_paragraph(l10n("financing.text.p1.l1", "about", user_lang) + "<br>" + l10n("financing.text.p1.l2", "about", user_lang)) }}
{{ render_paragraph(l10n("financing.text.p2.l1", "about", user_lang)) }}
{{ render_paragraph(l10n("financing.text.p3.l1", "about", user_lang) + "<br>" + l10n("financing.text.p3.l2", "about", user_lang)) }}
</div>
</section>
{{ render_h1(l10n("financing.title", "about", user_lang)) }}
{{ render_paragraph(l10n("financing.text.01", "about", user_lang) + l10n("financing.text.02", "about", user_lang)) }}
{{ render_paragraph(l10n("financing.text.10", "about", user_lang)) }}
{{ render_paragraph(l10n("financing.text.20", "about", user_lang) + l10n("financing.text.21", "about", user_lang)) }}
<section class="mt-l mt-0-if-first">
<div class="grid grid-col-2 grid-col-medium-1 grid-gap-m">
<div>
<table class="table-stylish table-p-xs border r-l w-full">
<thead>
<tr>
<th>{{ l10n("financing.part.service", "about", user_lang) }}</th>
<th>{{ l10n("financing.part.cost.yearly", "about", user_lang) }}</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ l10n("financing.part.domain.lu", "about", user_lang) }}</td>
<td>19,99 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.domain.com", "about", user_lang) }}</td>
<td>13,49 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.proxy.europe", "about", user_lang) }}</td>
<td>348 PLN / &pm;81,84 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.proxy.america", "about", user_lang) }}</td>
<td>13,00 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.electricity", "about", user_lang) }}</td>
<td>&pm;32,00 €</td>
</tr>
<tr>
<td><b class="f-right">{{ l10n("financing.part.cost.yearly.total", "about", user_lang) }}:</b></td>
<td>&pm;160,32 €</td>
</tr>
</tbody>
</table>
</div>
<div>
<table class="table-stylish table-p-xs border r-l w-full">
<thead>
<tr>
<th>{{ l10n("financing.part.equipment", "about", user_lang) }}</th>
<th>{{ l10n("financing.part.cost", "about", user_lang) }}</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ l10n("financing.part.nanopir4s", "about", user_lang) }}</td>
<td>&pm;80,00 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.storage", "about", user_lang) }}</td>
<td>&pm;10,00 €</td>
</tr>
<tr>
<td><b class="f-right">{{ l10n("financing.part.cost.total", "about", user_lang) }}:</b></td>
<td>&pm;90,00 €
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p class="mt-xs ml-s t-super-muted t-center">
{{ l10n("financing.text.isp", "about", user_lang) }}
</p>
</section>
<div class="grid col-2 col-medium-1">
<table class="stylish r-s border o-hidden table-p-xs table-h-p-s table-v-center mt-s mx-s">
<thead>
<tr>
<th>{{ l10n("financing.part.service", "about", user_lang) }}</th>
<th>{{ l10n("financing.part.cost.yearly", "about", user_lang) }}</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ l10n("financing.part.domain.lu", "about", user_lang) }}</td>
<td>17,00 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.domain.com", "about", user_lang) }}</td>
<td>14,50 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.proxy.europe", "about", user_lang) }}</td>
<td>14,50 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.proxy.america", "about", user_lang) }}</td>
<td>13,00 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.electricity", "about", user_lang) }}</td>
<td>&pm;32,00 €</td>
</tr>
<tr>
<td><b class="f-right">{{ l10n("financing.part.cost.yearly.total", "about", user_lang) }}:</b></td>
<td>&pm;89,00 €</td>
</tr>
</tbody>
</table>
<table class="stylish r-s border o-hidden table-p-xs table-h-p-s table-v-center mt-s mx-s">
<thead>
<tr>
<th>{{ l10n("financing.part.equipment", "about", user_lang) }}</th>
<th>{{ l10n("financing.part.cost", "about", user_lang) }}</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ l10n("financing.part.nanopir4s", "about", user_lang) }}</td>
<td>&pm;80,00 €</td>
</tr>
<tr>
<td>{{ l10n("financing.part.storage", "about", user_lang) }}</td>
<td>&pm;10,00 €</td>
</tr>
<tr>
<td><b class="f-right">{{ l10n("financing.part.cost.total", "about", user_lang) }}:</b></td>
<td>&pm;90,00 €
</td>
</tr>
</tbody>
</table>
</div>
<p class="mt-xs ml-s t-super-muted t-center">
{{ l10n("financing.text.isp", "about", user_lang) }}
</p>
{% endblock %}
{% block extra_scripts %}