<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:base="https://polyglot-tech-blog.netlify.app" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Polyglot Tech Blog</title>
    <link>https://polyglot-tech-blog.netlify.app/en/feed.xml</link>
    <atom:link href="https://polyglot-tech-blog.netlify.app/en/feed.xml" rel="self" type="application/rss+xml"/>
    <description>English</description>
    <language>en</language>
    
    
    
    
      
      <item>
        <title>Get started with Polyglot Tech Blog template</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/get-started/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;You have found Polyglot Tech Blog and wish to use it as a basis for your blog. Great! Let&#39;s go through the steps to get the code and adapt it to your needs.&lt;/p&gt;
&lt;h2&gt;Get the code and install the dependencies&lt;/h2&gt;
&lt;p&gt;First, you need to get the starter code. The easiest way to do this is to use git. Go to the directory where you want to get the files, and clone the repository:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;git&lt;/span&gt; clone https://gitlab.com/florent_tassy/polyglot-tech-blog.git&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then you need to install the template dependencies. For this, you need &lt;a href=&quot;https://nodejs.org/&quot;&gt;node&lt;/a&gt; and npm or &lt;a href=&quot;https://yarnpkg.com/&quot;&gt;Yarn&lt;/a&gt;. Go to the newly cloned directory and enter:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; ci &lt;span class=&quot;token comment&quot;&gt;# with npm&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;install&lt;/span&gt; --frozen-lockfile &lt;span class=&quot;token comment&quot;&gt;# with Yarn&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Launch the local server and adapt the starter&lt;/h2&gt;
&lt;p&gt;You now have everything. You can start the dev server to see a local and auto-refreshed version of your code. From the template directory, run:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run dev &lt;span class=&quot;token comment&quot;&gt;# with npm&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; dev &lt;span class=&quot;token comment&quot;&gt;# with Yarn&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can now open you favorite web browser, navigate to &lt;a href=&quot;http://localhost:8080/&quot;&gt;localhost:8080&lt;/a&gt;, and see the live result!&lt;/p&gt;
&lt;h2&gt;Adapt the content&lt;/h2&gt;
&lt;p&gt;The first customisation that you will probably want to bring is changing the content. To do so, here are the needed concepts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The content is in the &amp;quot;src&amp;quot; directory.&lt;/li&gt;
&lt;li&gt;Static pages are written in HTML with template parts in &lt;a href=&quot;https://mozilla.github.io/nunjucks/&quot;&gt;Nunjucks&lt;/a&gt;, but keep in mind that Eleventy &lt;a href=&quot;https://www.11ty.dev/docs/languages/&quot;&gt;offers many more languages&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Blog posts are written in &lt;a href=&quot;https://wikipedia.org/wiki/Markdown&quot;&gt;Markdown&lt;/a&gt;, but here as well, other languages could be used.&lt;/li&gt;
&lt;li&gt;The files directly in &amp;quot;src&amp;quot; are mainly configuration files and technical files. You may change the content of index.html and 404.html, but these files are not supposed to be displayed, unless the redirection to local or fallback language fails. You will also add / modify your files for deployment.&lt;/li&gt;
&lt;li&gt;You should update the file &lt;code&gt;src &amp;gt; data &amp;gt; data.json&lt;/code&gt; with your information. Here are some useful comments about it:&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;language-json&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Full name of the blog author&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;author&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Florent Tassy&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Optional, but nice for semantic&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// web: the unique URI that &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// identifies the author. Avoid&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// using a URL of the blog or you&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// may get weird ID associations.&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;authorUri&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://gitlab.com/florent_tassy&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// BCP 47 codes of the languages &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// used on the blog. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// The first one is the default &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// one. At least one is needed.&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;languages&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;fr&quot;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Language labels. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// All above declared codes &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// must have a corresponding &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// entry here.&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;languageLabels&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;English&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Français&quot;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Blog title. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// All above declared codes &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// must have a corresponding &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// entry here.&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;title&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Polyglot Tech Blog&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Polyglot Tech Blog&quot;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Optional, but nice for semantic&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// web: the URIs that identify&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// the blog languages. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// http://lexvo.org and &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// https://dbpedia.org provides&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// interesting resources here&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;languageUris&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;http://dbpedia.org/resource/English_language&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;http://dbpedia.org/resource/French_language&quot;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// URL the blog will be deployed to. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// Don&#39;t put a trailing &quot;/&quot;. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// I recommend to leave it as it is &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// and subsitute it with the final &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// URL at deployment time.&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;baseUrl&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;http://localhost:8080&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// General blog keywords. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// They will be used in the &amp;lt;meta&gt; &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// tags of all pages. &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// Here as well, each code defined &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// in languages must have a &lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// correspondance.&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;keywords&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;polyglot, multilingual, blog, eleventy, 11ty, starter, template&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
        &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;polyglotte, multilingue, blog, eleventy, 11ty, départ, modèle&quot;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;ul&gt;
&lt;li&gt;You may personalize &lt;code&gt;src &amp;gt; index.html&lt;/code&gt; and &lt;code&gt;src &amp;gt; 404.html&lt;/code&gt;, but that&#39;s not absolutely necessary.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Adapt the style&lt;/h2&gt;
&lt;p&gt;You can go to &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/colors&quot;&gt;the article about colors&lt;/a&gt; for further details about this step.&lt;/p&gt;
&lt;h2&gt;Add or remove languages&lt;/h2&gt;
&lt;p&gt;Removing a language is simply deleting the corresponding directory and updating the &lt;code&gt;src &amp;gt; _data &amp;gt; data.json&lt;/code&gt; file accordingly. When adding a new language, there are a bit more things to consider, so you can consult &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/add-language/&quot;&gt;the dedicated article&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Add static pages&lt;/h2&gt;
&lt;p&gt;The starter comes with four static page: &amp;quot;Home&amp;quot;, &amp;quot;About&amp;quot;, &amp;quot;Blog&amp;quot; and &amp;quot;404&amp;quot;. They are written in HTML and can be found in each language directory:&lt;/p&gt;
&lt;pre class=&quot;language-plain&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-plain&quot;&gt;src
 ├── (all files in src)
 ├── en
 │   ├── index.html &amp;lt;- the &quot;home&quot; page
 │   ├── about.html
 │   ├── blog.html
 │   └── 404.html
 └── fr
     ├── index.html &amp;lt;- the &quot;home&quot; page
     ├── about.html
     ├── blog.html
     └── 404.html&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You may decide to add some static pages. Here as well, there is a &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/add-page&quot;&gt;dedicated article&lt;/a&gt; that covers the topic.&lt;/p&gt;
&lt;h2&gt;Add posts&lt;/h2&gt;
&lt;p&gt;This is probably the most basic thing expected from a blog start. You can do this by following the instructions on the &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/add-post/&quot;&gt;dedicated article&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Check markup validity&lt;/h2&gt;
&lt;p&gt;The starter template comes with commands and dependencies to check HTML and CSS validity using &lt;a href=&quot;https://validator.github.io/validator/&quot;&gt;W3C&#39;s vnu-jar&lt;/a&gt;. However, vnu-jar checker is written in Java, so you will have to install a Java Runtime Environment to make these commands work. I recommend the free and excellent &lt;a href=&quot;https://adoptium.net/temurin/&quot;&gt;Eclipse Temurin&lt;/a&gt;.&lt;br /&gt;
You can then check the HTML validity with:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run check:markup:unix &lt;span class=&quot;token comment&quot;&gt;# with npm on Linux and unix-like systems&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; check:markup:unix &lt;span class=&quot;token comment&quot;&gt;# with Yarn on Linux and unix-like systems&lt;/span&gt;

&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run check:markup:win &lt;span class=&quot;token comment&quot;&gt;# with npm on Window systems&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; check:markup:win &lt;span class=&quot;token comment&quot;&gt;# with Yarn on Windows systems&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can then check the CSS validity with:&lt;/p&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run check:css:unix &lt;span class=&quot;token comment&quot;&gt;# with npm on Linux and unix-like systems&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; check:css:unix &lt;span class=&quot;token comment&quot;&gt;# with Yarn on Linux and unix-like systems&lt;/span&gt;

&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run check:css:win &lt;span class=&quot;token comment&quot;&gt;# with npm on Window systems&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; check:css:win &lt;span class=&quot;token comment&quot;&gt;# with Yarn on Windows systems&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Check various metrics about your blog&lt;/h2&gt;
&lt;p&gt;The number of things you can check to ensure the &lt;a href=&quot;https://www.w3.org/WAI/&quot;&gt;accessibility&lt;/a&gt; (&lt;abbr title=&quot;Accessibility&quot;&gt;a11y&lt;/abbr&gt;), performance, &lt;a href=&quot;https://en.wikipedia.org/wiki/Search_engine_optimization&quot;&gt;Search Engine Optimization&lt;/a&gt; (&lt;abbr title=&quot;Search Engine Optimization&quot;&gt;SEO&lt;/abbr&gt;), validity... of a website is unlimited and may require some advanced skills or tools. Some simple and basic checks are covered in the &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/metrics/&quot;&gt;dedicated article&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Build and deploy&lt;/h2&gt;
&lt;p&gt;Our blog is ready to be put online. This can bon done on multiple ways depending on where your code is and who hosts the blog. This &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/deploy/&quot;&gt;article&lt;/a&gt; covers some common scenarios.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;We have seen all basic steps to get a Polyglot Tech Blog up and running with your content. If you followed all these steps, you have now an online blog. Congratulations! Of course, many more customizations are possible, so feel free to experiment and share your ideas on &lt;a href=&quot;https://gitlab.com/florent_tassy/polyglot-tech-blog&quot;&gt;GitLab&lt;/a&gt; 😉&lt;/p&gt;
</description>
        <pubDate>Sun, 09 Jul 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/get-started/</guid>
      </item>
      
    
    
    
    
      
      <item>
        <title>Customize the colors</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/colors/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;The colors of a web page are the most fundamental thing to choose in order to feel at home and to reflect who we are. Let&#39;s see where Polyglot Tech Blog colors are defined in order to modify them.&lt;/p&gt;
&lt;h2&gt;Modify the right file&lt;/h2&gt;
&lt;p&gt;Polyglot Tech Blog supports supports &lt;a href=&quot;https://sass-lang.com/&quot;&gt;SASS&lt;/a&gt; files. It also includes &lt;a href=&quot;https://jenil.github.io/chota&quot;&gt;Chota micro CSS framework&lt;/a&gt;. It is a single CSS style sheet that provides enough to style what we want.&lt;/p&gt;
&lt;p&gt;The Chota colors are ready to be overriden in the &lt;code&gt;src &amp;gt; sass &amp;gt; style.scss&lt;/code&gt; file. The 40 first lines contain CSS variables and attribute their values for light and dark themes:&lt;/p&gt;
&lt;pre class=&quot;language-css&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token selector&quot;&gt;:root&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--bg-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #ffffff&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--bg-secondary-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #f3f3f6&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-primary&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #14854f&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-lightGrey&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #d2d6dd&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-grey&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #747681&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-darkGrey&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #3f4144&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-error&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #d43939&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-success&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #2c8017&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--font-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #333333&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--navbar-bg-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #f8bb6d&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--footer-bg-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #f8bb6d&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--transparent-error&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;rgba&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;255&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 194&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 204&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 0.3&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--transparent-success&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;rgba&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;145&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 238&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 145&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 0.3&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--link-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #333333&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--grid-maxWidth&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 120rem&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--grid-gutter&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 2rem&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--font-size&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 1.6rem&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--font-family-sans&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; sans-serif&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--font-family-mono&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; monaco&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Consolas&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Lucida Console&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; monospace&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--content-width&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 75%&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;

&lt;span class=&quot;token selector&quot;&gt;.dark-theme&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--bg-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #222222&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--bg-secondary-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #333333&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-primary&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #4cad7e&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-lightGrey&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #323232&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-grey&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #747681&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-darkGrey&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #8794a8&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-error&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #d43939&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--color-success&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #28bd14&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--font-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #dddddd&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--navbar-bg-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #741e00&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--footer-bg-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #741e00&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--transparent-error&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;rgba&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;255&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 194&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 204&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 0.3&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--transparent-success&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;rgba&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;145&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 238&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 145&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 0.3&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;--link-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #dddddd&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Changing colors of the whole webpage is basically just changing the variable values in this file.&lt;/p&gt;
&lt;h2&gt;Syntax highlight&lt;/h2&gt;
&lt;p&gt;If you plan to use syntax highlighting, you may wish to change the highlighting style as well. As you can imagine, this happens in the files &lt;code&gt;src &amp;gt; css &amp;gt; code-highlight-dark.njk&lt;/code&gt; and &lt;code&gt;src &amp;gt; css &amp;gt; code-highlight-light.njk&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;These two templates actually contain CSS and result in two CSS style sheets that are alternatively added depending on the selected color schema. By default, the light theme is the &amp;quot;prism-coy&amp;quot; theme provided with PrismJS. Any theme provided as an NPM package could be added the same way.&lt;/p&gt;
&lt;p&gt;The dark theme is based on &lt;a href=&quot;https://github.com/PrismJS/prism-themes/blob/master/themes/prism-gruvbox-dark.css&quot;&gt;Gruvbox dark theme by Azat S.&lt;/a&gt;. However, it was a bit modified to pass the automated accessibility tests done by &lt;a href=&quot;https://www.deque.com/axe/browser-extensions/&quot;&gt;axe browser extension&lt;/a&gt;. So in that case, the CSS code was simply copied and modified in the &lt;code&gt;src &amp;gt; css &amp;gt; code-highlight-dark.njk&lt;/code&gt; file.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;We have seen what files we have to modify or replace to change our blog colors. But be wise when choosing your colors and keep in mind that accessibility depends a lot on colors contrast. If you want to assess the accessibility of your color schema, the article about &lt;a href=&quot;https://polyglot-tech-blog.netlify.app/en/blog/metrics&quot;&gt;blog metrics&lt;/a&gt; should give you more insight.&lt;/p&gt;
</description>
        <pubDate>Wed, 05 Jul 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/colors/</guid>
      </item>
      
    
    
    
    
      
      <item>
        <title>Add language</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/add-language/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;div&gt;Polyglot Tech Blog comes in English and French to show in action. However, it is possible to add as many languages as you want. Let&#39;s show how by adding German 🇩🇪&lt;/div&gt;
&lt;h2&gt;Update data.json&lt;/h2&gt;
&lt;p&gt;Simply add the new language:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;src &amp;gt; _data &amp;gt; data.json&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-diff-json&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-diff-json&quot;&gt;{
&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token comment&quot;&gt;// Other properties&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;languages&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;fr&quot;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;languages&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;de&quot;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;languageLabels&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;English&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Français&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Français&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;de&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Deutsch&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;title&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;English&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Français&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Français&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;de&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Deutsch&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;keywords&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;blog, english&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;blog, français&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;blog, français&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;       &lt;span class=&quot;token property&quot;&gt;&quot;de&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;blog, deutsch&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;/span&gt;}&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Create the language directory&lt;/h2&gt;
&lt;p&gt;The simplest first step here is probably to copy an existing language directory, let&#39;s say &amp;quot;en&amp;quot;, paste it into the src directory, and rename it to the language code you want. Here, we will the rename to directory &amp;quot;de&amp;quot;. So we get this strusture:&lt;/p&gt;
&lt;pre class=&quot;language-plain&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-plain&quot;&gt;src
 ├── (all files in src)
 ├── en
 ├── fr
 └── de&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The folder name must be &lt;a href=&quot;https://en.wikipedia.org/wiki/IETF_language_tag&quot;&gt;BCP 47-compatible language tag&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Change the new directory content&lt;/h2&gt;
&lt;p&gt;First, rename the en.json file to de.json. Then open it and update the translations and the language.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;src &amp;gt; de &amp;gt; de.json&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-json&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;lang&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;de&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;home&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Startseite&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;blog&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Blog&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;about&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Über&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;madeBy&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Erstellt von&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;seeOn&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Überprüfen Sie es auf&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;read&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Lesen&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    (...)
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;(Here, you should notice that I don&#39;t speak German...)&lt;/p&gt;
&lt;p&gt;Then go to the blog directory, open the blog.json file, and update the &amp;quot;en&amp;quot; tag to &amp;quot;de&amp;quot;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;src &amp;gt; de &amp;gt; blog &amp;gt; blog.json&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-diff-json&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-diff-json&quot;&gt;{
&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt; &lt;span class=&quot;token property&quot;&gt;&quot;layout&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;article.html&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt; &lt;span class=&quot;token property&quot;&gt;&quot;tags&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token string&quot;&gt;&quot;post&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;    &lt;span class=&quot;token string&quot;&gt;&quot;en&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;    &lt;span class=&quot;token string&quot;&gt;&quot;de&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;
&lt;/span&gt;}&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Update the permalinks&lt;/h2&gt;
&lt;p&gt;Ensure that no permalink in the &amp;quot;de&amp;quot; directory points to a &amp;quot;en/...&amp;quot; URL.&lt;/p&gt;
&lt;h2&gt;Now, the longest part if you have some content already...&lt;/h2&gt;
&lt;p&gt;Translate all the pages and blog posts to German!&lt;/p&gt;
&lt;h2&gt;Change default language&lt;/h2&gt;
&lt;p&gt;If you want to change the blog default language, please also update the &amp;quot;defaultLanguage&amp;quot; property in &lt;code&gt;.eleventy.js&lt;/code&gt;.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;That&#39;s it, we have added a new language to our webpage! More information on &lt;a href=&quot;https://www.11ty.dev/docs/i18n/&quot;&gt;11ty i18n documentation&lt;/a&gt;&lt;/p&gt;
</description>
        <pubDate>Sun, 02 Jul 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/add-language/</guid>
      </item>
      
    
    
    
    
      
      <item>
        <title>Add a static page</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/add-page/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Polyglot Tech Blog comes with three pages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Home, the landing page&lt;/li&gt;
&lt;li&gt;About&lt;/li&gt;
&lt;li&gt;Blog, where all blog posts are listed
... as well as a 404 error page.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;What if I want to add another static page? Let&#39;s add a &quot;portfolio&quot; page to demonstrate it.&lt;/div&gt;
&lt;h2&gt;Add the files&lt;/h2&gt;
&lt;p&gt;In each of your language directory, create a file &amp;quot;portfolio.html&amp;quot;. This name must be the same accross all your language directories. The file name determines what the page URL will be. Here, it will be something like https://&amp;lt;my-domain&amp;gt;/&amp;lt;language&amp;gt;/portofio.html.&lt;/p&gt;
&lt;p&gt;You should get the following structure:&lt;/p&gt;
&lt;pre class=&quot;language-plain&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-plain&quot;&gt;src
 ├── (all files in src)
 ├── en
 │   ├── (all files in en)
 │   └── porfolio.html
 └── fr
     ├── (all files in fr)
     └── portfolio.html&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Create the content in your files with the front matter as shown below.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;en &amp;gt; portfolio.html&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-html&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-html&quot;&gt;---
title: &quot;Portfolio&quot;
layout: &quot;base.html&quot;
---

&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;div&lt;/span&gt; &lt;span class=&quot;token attr-name&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;token attr-value&quot;&gt;&lt;span class=&quot;token punctuation attr-equals&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;container&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;p&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
        Here is my content. &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;br&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
        I write it in English in the &quot;en&quot; directory. &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;br&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
        And of course, I write it in French in the &quot;fr&quot; directory.
    &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;/&lt;/span&gt;p&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;/&lt;/span&gt;div&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;👍 Done, you have a new page!&lt;/p&gt;
&lt;h2&gt;Optional: Add entries to the navigation bar&lt;/h2&gt;
&lt;p&gt;This step is optional. If you wish to have a link to your portfolio page in the navigation bar, you have to make the following modification.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;src &amp;gt; _includes &amp;gt; components &amp;gt; navbar.html&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-html&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-html&quot;&gt;        &lt;span class=&quot;token comment&quot;&gt;&amp;lt;!-- Pages --&gt;&lt;/span&gt;
        &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;div&lt;/span&gt; &lt;span class=&quot;token attr-name&quot;&gt;class&lt;/span&gt;&lt;span class=&quot;token attr-value&quot;&gt;&lt;span class=&quot;token punctuation attr-equals&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;tabs&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;a&lt;/span&gt; &lt;span class=&quot;token attr-name&quot;&gt;href&lt;/span&gt;&lt;span class=&quot;token attr-value&quot;&gt;&lt;span class=&quot;token punctuation attr-equals&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;{{ &#39;/&#39; | locale_url | url }}&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;{{ home }}&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;/&lt;/span&gt;a&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
+           &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;a&lt;/span&gt; &lt;span class=&quot;token attr-name&quot;&gt;href&lt;/span&gt;&lt;span class=&quot;token attr-value&quot;&gt;&lt;span class=&quot;token punctuation attr-equals&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;{{ &#39;/portfolio&#39; | locale_url | url }}&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;{{ portfolio }}&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;/&lt;/span&gt;a&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;a&lt;/span&gt; &lt;span class=&quot;token attr-name&quot;&gt;href&lt;/span&gt;&lt;span class=&quot;token attr-value&quot;&gt;&lt;span class=&quot;token punctuation attr-equals&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;{{ &#39;/about&#39; | locale_url | url }}&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;{{ about }}&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;/&lt;/span&gt;a&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;a&lt;/span&gt; &lt;span class=&quot;token attr-name&quot;&gt;href&lt;/span&gt;&lt;span class=&quot;token attr-value&quot;&gt;&lt;span class=&quot;token punctuation attr-equals&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;{{ &#39;/blog&#39; | locale_url | url }}&lt;span class=&quot;token punctuation&quot;&gt;&quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;{{ blog }}&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token tag&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;/&lt;/span&gt;a&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And finally, the &lt;code&gt;{{ portfolio }}&lt;/code&gt; references a variable that must be added to the en.json and fr.json files.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;src &amp;gt; fr &amp;gt; fr.json&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-diff-json&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-diff-json&quot;&gt;{
&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;lang&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;fr&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;home&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Accueil&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;blog&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Blog&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;about&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;À propos&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;madeBy&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Codé par&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;seeOn&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Retrouvez-moi sur&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;read&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Lire&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;read&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Lire&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;portfolio&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Portefeuille&quot;&lt;/span&gt;
&lt;/span&gt;}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;src &amp;gt; en &amp;gt; en.json&lt;/code&gt;:&lt;/p&gt;
&lt;pre class=&quot;language-diff-json&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-diff-json&quot;&gt;{
&lt;span class=&quot;token unchanged language-json&quot;&gt;&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;lang&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;en&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;home&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Home&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;blog&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Blog&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;about&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;About&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;madeBy&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Made by&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix unchanged&quot;&gt; &lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;seeOn&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Check it out on&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token deleted-sign deleted language-json&quot;&gt;&lt;span class=&quot;token prefix deleted&quot;&gt;-&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;read&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Read&quot;&lt;/span&gt;
&lt;/span&gt;&lt;span class=&quot;token inserted-sign inserted language-json&quot;&gt;&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;read&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Read&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
&lt;span class=&quot;token prefix inserted&quot;&gt;+&lt;/span&gt;   &lt;span class=&quot;token property&quot;&gt;&quot;portfolio&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Portfolio&quot;&lt;/span&gt;
&lt;/span&gt;}&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Now, your page is accessible from the navigation bar 🥳&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;We have added a new &amp;quot;Portfolio&amp;quot; static page to our blog. This opens up many possibilities 🤩&lt;/p&gt;
</description>
        <pubDate>Fri, 30 Jun 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/add-page/</guid>
      </item>
      
    
    
    
    
      
      <item>
        <title>Add a post</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/add-post/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;A blog is basically made of a few static pages and many articles. Let&#39;s see then how we can create a new article in all that languages that our blog supports.&lt;/p&gt;
&lt;h2&gt;Create the files&lt;/h2&gt;
&lt;p&gt;This is probably one of the easiest things to do with the template. When we want to add posts, we juste create a file with the &lt;strong&gt;same name&lt;/strong&gt; in &lt;strong&gt;every language directory&lt;/strong&gt;. Let&#39;s say I want to post about dolphins in Arctic in my English / French blog. I will add the two following files:&lt;/p&gt;
&lt;pre class=&quot;language-plain&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-plain&quot;&gt;src
 ├── (all files in src)
 ├── en
 │   ├── (all files in en)
 │   └── blog
+│        └── dolphins-in-arctic.md
 └── fr
     ├── (all files in fr)
     └── blog
+         └── dolphins-in-arctic.md&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The suggested format here is &lt;a href=&quot;https://en.wikipedia.org/wiki/Markdown&quot;&gt;Markdown&lt;/a&gt;, however other &lt;a href=&quot;https://www.11ty.dev/docs/languages/&quot;&gt;11ty supported formats&lt;/a&gt; would also work.&lt;/p&gt;
&lt;h2&gt;Add content to files&lt;/h2&gt;
&lt;p&gt;In each newly added files, I can now add your content. But before all, the following front matter is expected:&lt;/p&gt;
&lt;pre class=&quot;language-plain&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-plain&quot;&gt;title: Dolphins in Arctic (To be translated in the fr directory)
description: A blog post about dolphins in Arctic (To be translated in the fr directory)
date: 2010-05-25T12:00:00
update: 2023-05-28T12:00:00 (This one is optional, but if you are actually updating 
an existing article, you can put the update date here)
author: Author name here, that can be different from the src &gt; _data &gt; data.json &gt; &quot;author&quot;
tags: 
    - dolphin (to be translated in the fr directory)
    - Arctic (to be translated in the fr directory)&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;For the rest, please note that:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Eleventy will automatically add a level one title from front matter. You will then have to add level two and lower titles to keep a valid HTML;&lt;/li&gt;
&lt;li&gt;Should you wish to include a link to another blog article, let&#39;s say example.md, you could use the following syntax: &lt;code&gt;[hyperlink text]({{ &#39;/blog/example&#39; | locale_url | url }})&lt;/code&gt;;&lt;/li&gt;
&lt;li&gt;Should you wish to include a link to a static blog resource (document, image...), you could use the following syntax: &lt;code&gt;![description de l&#39;image]({{ &#39;/img/image.png&#39; | url }})&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Done ✅ my new posts is now available at https://&amp;lt;my-domain&amp;gt;/&amp;lt;language&amp;gt;/blog/dolphins-in-artic.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Through this example, we have added a new article to the blog. As you have seen, it takes only two steps, so you may quickly remember this by heart 😉&lt;/p&gt;
</description>
        <pubDate>Fri, 23 Jun 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/add-post/</guid>
      </item>
      
    
    
    
    
      
      <item>
        <title>Check blog metrics</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/metrics/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;p&gt;We are now going to verify a few metrics and present some simple and user-friendly tools to ensure our blog&#39;s validity, performance, accessibility and &lt;abbr title=&quot;Search Engine Optimization&quot;&gt;SEO&lt;/abbr&gt;. Those topics are potentially infinite and highly specialized, that is why we will just touch on each of them with automated tools.&lt;/p&gt;
&lt;h2&gt;Lighthouse&lt;/h2&gt;
&lt;p&gt;A good way to quickly and simply check webpages performances is by using &lt;a href=&quot;https://developer.chrome.com/docs/lighthouse/overview/&quot;&gt;Lighthouse&lt;/a&gt;. It is available in the DevTools of &lt;a href=&quot;https://en.wikipedia.org/wiki/Chromium_(web_browser)#Browsers_based_on_Chromium&quot;&gt;Chromium-based web browsers&lt;/a&gt;, which means it can be used when developping on localhost. It is also available as an online service through &lt;a href=&quot;https://pagespeed.web.dev/&quot;&gt;PageSpeed Insights&lt;/a&gt;, but it means that the page must be hosted online already.&lt;/p&gt;
&lt;p&gt;Lighthouse provides metrics and advices about performance, accessibility, &lt;abbr title=&quot;Search Engine Optimization&quot;&gt;SEO&lt;/abbr&gt; and other best practices, and it can run in both desktop or mobile configuration. Do not underestimate the mobile devices because more than half of webpage are browsed from mobile device per &lt;a href=&quot;https://gs.statcounter.com/platform-market-share/desktop-mobile-tablet&quot;&gt;statcounter&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;Accessibility&lt;/h2&gt;
&lt;p&gt;When it comes to accessibility, &lt;abbr title=&quot;Web Accessibility Evaluation Tools&quot;&gt;WAVE&lt;/abbr&gt; and &lt;a href=&quot;https://www.deque.com/axe/&quot;&gt;axe Tools&lt;/a&gt; are very nice ways to automatically check how your webpage perform. A very simple way to use it is to install the &lt;a href=&quot;https://wave.webaim.org/extension/&quot;&gt;WAVE&lt;/a&gt; and &lt;a href=&quot;https://www.deque.com/axe/browser-extensions/&quot;&gt;axe DevTools&lt;/a&gt; browser extensions. They both runs for local and online page and provides plenty of good advices and checks such as color contrast.&lt;/p&gt;
&lt;h2&gt;Code validity&lt;/h2&gt;
&lt;p&gt;For code validity, you probably know already that the Polyglot Tech Blog template allows checking HTML and CSS validity using &lt;a href=&quot;https://validator.github.io/validator/&quot;&gt;W3C&#39;s vnu-jar&lt;/a&gt;. However, W3C maintains plenty of other useful &lt;a href=&quot;https://www.w3.org/developers/tools/&quot;&gt;tools&lt;/a&gt; that can be used to check yor code validity. Let&#39;s mention the &lt;a href=&quot;https://validator.w3.org/i18n-checker/&quot;&gt;internationalization&lt;/a&gt; and &lt;a href=&quot;https://validator.w3.org/feed/&quot;&gt;feed&lt;/a&gt; checkers, just to quote some that are applicable to the Polyglot Tech Blog.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;We have seen different tools to assess and improve your code in terms of validity, performance, accessibility and &lt;abbr title=&quot;Search Engine Optimization&quot;&gt;SEO&lt;/abbr&gt;. But in the end, all these elements are closely related: invalid code is not properly parsed, leading to performance issues, and then it is not well managed by accessibility tools and badly referenced by search engines. These tools just provide different point of views and advices about your code. They are complementary and, since they are all automated tools, they have some limit in what they can detect.&lt;/p&gt;
</description>
        <pubDate>Thu, 15 Jun 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/metrics/</guid>
      </item>
      
    
    
    
    
      
      <item>
        <title>Deploy</title>
        <link>https://polyglot-tech-blog.netlify.app/en/blog/deploy/</link>
        <description>&lt;h2&gt;Introduction&lt;/h2&gt;
&lt;div&gt;Now that we have adapted the template with our content, we would like to deploy it on the web. Let&#39;s go through some common deployment scenarios.&lt;/div&gt;
&lt;h2&gt;Deploy manually&lt;/h2&gt;
&lt;p&gt;In order to have correct hyperlinks, you need to know the URL the website will be deployed to. Create a file named &lt;code&gt;prod.js&lt;/code&gt; at the blog root and provide the base URL of your website and the directory in which it is deployed if any. For example, if the URL will be https://example.com/subpath, the file should contain:&lt;/p&gt;
&lt;pre class=&quot;language-js&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;module&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;exports &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; 
    &lt;span class=&quot;token literal-property property&quot;&gt;baseUrl&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://example.com/subpath&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Notice that there is no trailing &quot;/&quot;&lt;/span&gt;
    &lt;span class=&quot;token literal-property property&quot;&gt;pathPrefix&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;subpath&quot;&lt;/span&gt; 
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;If there is no subpath, leave the value empty: &lt;code&gt;pathPrefix: &amp;quot;&amp;quot;&lt;/code&gt;. If there is a subpath, you can also delete the &lt;code&gt;robots.txt&lt;/code&gt; file as it will not be reachable.&lt;/p&gt;
&lt;p&gt;We can now build the blog i.e. process all files in the &lt;code&gt;src&lt;/code&gt; directory and generate the HTML, JavaScript, CSS and other static files that will be pushed to the server. I recommend following the steps below:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop the dev server if it is running&lt;/li&gt;
&lt;li&gt;Empty the &lt;code&gt;public&lt;/code&gt; directory&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run clean &lt;span class=&quot;token comment&quot;&gt;# with npm&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; clean &lt;span class=&quot;token comment&quot;&gt;# with Yarn&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;ol start=&quot;3&quot;&gt;
&lt;li&gt;Build the deployment-ready blog&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run manual:build &lt;span class=&quot;token comment&quot;&gt;# with npm&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; manual:build &lt;span class=&quot;token comment&quot;&gt;# with Yarn&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can then copy the content of the &lt;code&gt;public&lt;/code&gt; directory on the server.&lt;/p&gt;
&lt;h2&gt;Deploy on GitLab pages&lt;/h2&gt;
&lt;p&gt;The starter comes with a &lt;code&gt;.gitlab-ci.yml&lt;/code&gt; file that should do the trick. You will just have to update the &lt;code&gt;gitlab-pages.js&lt;/code&gt; file:&lt;/p&gt;
&lt;pre class=&quot;language-js&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;module&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;exports &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; 
    &lt;span class=&quot;token literal-property property&quot;&gt;baseUrl&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://florent_tassy.gitlab.io/polyglot-tech-blog&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Notice that there is no trailing &quot;/&quot;&lt;/span&gt;
    &lt;span class=&quot;token literal-property property&quot;&gt;pathPrefix&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;polyglot-tech-blog&quot;&lt;/span&gt; 
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then push the repository on your GitLab instance. If the remote repository is correctly configured, the CI/CD pipeline will deploy the blog.&lt;/p&gt;
&lt;h2&gt;Deploy on Netlify&lt;/h2&gt;
&lt;p&gt;You can refer to &lt;a href=&quot;https://docs.netlify.com/git/overview/&quot;&gt;Netlify documention&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;For manual deployment, the starter comes with a &lt;code&gt;netlify.js&lt;/code&gt; file that you can adapt to get the correct build:&lt;/p&gt;
&lt;pre class=&quot;language-js&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;module&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;exports &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; 
    &lt;span class=&quot;token literal-property property&quot;&gt;baseUrl&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://polyglot-tech-blog.netlify.app&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Notice that there is no trailing &quot;/&quot;&lt;/span&gt;
    &lt;span class=&quot;token literal-property property&quot;&gt;pathPrefix&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;&quot;&lt;/span&gt; 
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can now build the blog by following the steps below:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Stop the dev server if it is running&lt;/li&gt;
&lt;li&gt;Empty the &lt;code&gt;public&lt;/code&gt; directory&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run clean &lt;span class=&quot;token comment&quot;&gt;# with npm&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; clean &lt;span class=&quot;token comment&quot;&gt;# with Yarn&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;ol start=&quot;3&quot;&gt;
&lt;li&gt;Build the deployment-ready blog&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;language-bash&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;npm&lt;/span&gt; run netlify:build &lt;span class=&quot;token comment&quot;&gt;# with npm&lt;/span&gt;
&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; netlify:build &lt;span class=&quot;token comment&quot;&gt;# with Yarn&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;You can then connect to Netlify and drag-and-drop the &lt;code&gt;public&lt;/code&gt; directory.&lt;/p&gt;
&lt;h2&gt;Deploy on GitHub&lt;/h2&gt;
&lt;p&gt;The starter comes with a &lt;code&gt;.github &amp;gt; workflows &amp;gt; build-and-deploy.yml&lt;/code&gt; file that should do the trick. You will just have to update the &lt;code&gt;github-pages.js&lt;/code&gt; file:&lt;/p&gt;
&lt;pre class=&quot;language-js&quot; tabindex=&quot;0&quot;&gt;&lt;code class=&quot;language-js&quot;&gt;module&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;exports &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; 
    &lt;span class=&quot;token literal-property property&quot;&gt;baseUrl&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://ftassy.github.io/Polyglot-Tech-Blog&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Notice that there is no trailing &quot;/&quot;&lt;/span&gt;
    &lt;span class=&quot;token literal-property property&quot;&gt;pathPrefix&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;Polyglot-Tech-Blog&quot;&lt;/span&gt; 
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Then push the repository on GitHub. If the remote repository is correctly configured, the GitHub Action will deploy the blog.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;We have covered our blog deployement either manually on a server or on GitLab Pages, GitHub Pages and Netlify hosting services. If your scenario is not covered here, you should find a way to adapt on of these scenarios to your specific case. Congratulations, your blog is now online!&lt;/p&gt;
</description>
        <pubDate>Sun, 11 Jun 2023 14:00:00 +0000</pubDate>
        <dc:creator>Florent Tassy</dc:creator>
        <guid>https://polyglot-tech-blog.netlify.app/en/blog/deploy/</guid>
      </item>
      
    
  </channel>
</rss>
