<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Projets on Matteo Arnone</title><link>https://matteoarnone.be/projets/</link><description>Recent content in Projets on Matteo Arnone</description><generator>Hugo</generator><language>fr</language><lastBuildDate>Thu, 05 Nov 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://matteoarnone.be/projets/index.xml" rel="self" type="application/rss+xml"/><item><title>Daily Wird</title><link>https://matteoarnone.be/projets/daily-wird/</link><pubDate>Thu, 05 Nov 2026 00:00:00 +0000</pubDate><guid>https://matteoarnone.be/projets/daily-wird/</guid><description>&lt;p&gt;&lt;em&gt;Le Qur&amp;rsquo;an, sans détour.&lt;/em&gt; C&amp;rsquo;est la devise de l&amp;rsquo;application.&lt;/p&gt;&#10;&lt;h2 id="lidée"&gt;L&amp;rsquo;idée&lt;/h2&gt;&#10;&lt;p&gt;Un &lt;em&gt;wird&lt;/em&gt; (وِرْد), c&amp;rsquo;est une portion de récitation que l&amp;rsquo;on fait régulièrement. Daily Wird sert à une seule chose : réviser ce que l&amp;rsquo;on a appris du Coran. On choisit les sourates à travailler, on récite, puis on vérifie.&lt;/p&gt;&#10;&lt;p&gt;L&amp;rsquo;application reste volontairement centrée sur cet usage. Elle ne doit pas devenir une application « à tout faire ».&lt;/p&gt;&#10;&lt;h2 id="fonctionnalités"&gt;Fonctionnalités&lt;/h2&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;choix de plusieurs sourates à réviser ;&lt;/li&gt;&#10;&lt;li&gt;traductions et nombre de versets de chaque sourate ;&lt;/li&gt;&#10;&lt;li&gt;choix du récitateur, avec l&amp;rsquo;audio ;&lt;/li&gt;&#10;&lt;li&gt;texte arabe affiché avec la police KFGQPC Uthmanic Hafs.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="architecture"&gt;Architecture&lt;/h2&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;Couche&lt;/th&gt;&#10; &lt;th scope="col"&gt;Rôle&lt;/th&gt;&#10; &lt;th scope="col"&gt;Outil&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Interface&lt;/td&gt;&#10; &lt;td&gt;un seul code pour iOS, Android et le web&lt;/td&gt;&#10; &lt;td&gt;Flutter&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;État&lt;/td&gt;&#10; &lt;td&gt;la session de révision en cours&lt;/td&gt;&#10; &lt;td&gt;Provider&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Stockage local&lt;/td&gt;&#10; &lt;td&gt;les préférences (sourates, récitateur…)&lt;/td&gt;&#10; &lt;td&gt;SharedPreferences&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Données&lt;/td&gt;&#10; &lt;td&gt;textes, traductions, audio&lt;/td&gt;&#10; &lt;td&gt;API de Quran.com&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Version web&lt;/td&gt;&#10; &lt;td&gt;hébergement de dailywird.org&lt;/td&gt;&#10; &lt;td&gt;Cloudflare Pages&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h2 id="choix-et-leçons"&gt;Choix et leçons&lt;/h2&gt;&#10;&lt;h3 id="flutter-ou-natif-"&gt;Flutter ou natif ?&lt;/h3&gt;&#10;&lt;p&gt;À un moment, des problèmes de fluidité m&amp;rsquo;ont fait envisager de tout réécrire en Swift et en Kotlin. J&amp;rsquo;ai finalement décidé de rester sur Flutter. Pour &lt;a href="https://matteoarnone.be/projets/mushaf/"&gt;Mushaf&lt;/a&gt;, où la vitesse est l&amp;rsquo;objectif principal, j&amp;rsquo;ai fait le choix inverse.&lt;/p&gt;</description></item><item><title>Compilateur C</title><link>https://matteoarnone.be/projets/compilateur-c/</link><pubDate>Thu, 05 Nov 2026 00:00:00 +0000</pubDate><guid>https://matteoarnone.be/projets/compilateur-c/</guid><description>&lt;h2 id="pourquoi"&gt;Pourquoi&lt;/h2&gt;&#10;&lt;p&gt;Je fais ce projet pour apprendre, et parce que ça me plaît. Je suis le livre chapitre par chapitre avec une règle : comprendre le raisonnement derrière chaque étape plutôt que recopier du code qui marche. Je garde donc l&amp;rsquo;approche du livre, par exemple un lexer à base d&amp;rsquo;expressions régulières, même quand ce n&amp;rsquo;est pas l&amp;rsquo;implémentation la plus rapide.&lt;/p&gt;&#10;&lt;h2 id="le-chemin-dun-programme"&gt;Le chemin d&amp;rsquo;un programme&lt;/h2&gt;&#10;&lt;p&gt;Un compilateur transforme un texte en un autre texte, par étapes. Chacune a un rôle précis :&lt;/p&gt;</description></item><item><title>Réveil ESP32</title><link>https://matteoarnone.be/projets/reveil-esp32/</link><pubDate>Thu, 05 Nov 2026 00:00:00 +0000</pubDate><guid>https://matteoarnone.be/projets/reveil-esp32/</guid><description>&lt;h2 id="le-problème"&gt;Le problème&lt;/h2&gt;&#10;&lt;p&gt;Quand le téléphone sert de réveil, il dort à côté du lit. L&amp;rsquo;idée : un appareil qui ne fait que réveiller, pour que le téléphone puisse rester dans une autre pièce.&lt;/p&gt;&#10;&lt;h2 id="le-matériel"&gt;Le matériel&lt;/h2&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;Composant&lt;/th&gt;&#10; &lt;th scope="col"&gt;Rôle&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;LilyGO T5&lt;/td&gt;&#10; &lt;td&gt;carte ESP32 avec un écran e-ink : le « cerveau » et l&amp;rsquo;affichage&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;DFRobot MAX98357&lt;/td&gt;&#10; &lt;td&gt;amplificateur I²S : transforme le son numérique en signal pour le haut-parleur&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Haut-parleur&lt;/td&gt;&#10; &lt;td&gt;la sonnerie&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;Kit de soudure&lt;/td&gt;&#10; &lt;td&gt;pour souder les connexions&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;h3 id="pourquoi-un-écran-e-ink-"&gt;Pourquoi un écran e-ink ?&lt;/h3&gt;&#10;&lt;p&gt;Un écran e-ink (encre électronique) n&amp;rsquo;émet pas de lumière : rien n&amp;rsquo;éclaire la chambre la nuit. Il garde aussi son image sans consommer d&amp;rsquo;énergie et n&amp;rsquo;en utilise que pour changer l&amp;rsquo;affichage.&lt;/p&gt;</description></item><item><title>Mushaf</title><link>https://matteoarnone.be/projets/mushaf/</link><pubDate>Thu, 05 Nov 2026 00:00:00 +0000</pubDate><guid>https://matteoarnone.be/projets/mushaf/</guid><description>&lt;h2 id="doù-vient-le-projet"&gt;D&amp;rsquo;où vient le projet&lt;/h2&gt;&#10;&lt;p&gt;J&amp;rsquo;utilise souvent l&amp;rsquo;application &lt;em&gt;القرآن الكريم - مصحف المدينة&lt;/em&gt;. Elle est utile, et ses lettres sont plus grandes que dans les autres applications de mushaf. Mais il lui manque deux choses dont j&amp;rsquo;ai besoin : des menus en français et en anglais, et des marque-pages sur plusieurs pages. J&amp;rsquo;ai donc décidé d&amp;rsquo;écrire ma propre version.&lt;/p&gt;&#10;&lt;h2 id="les-objectifs"&gt;Les objectifs&lt;/h2&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;&lt;strong&gt;La vitesse avant tout.&lt;/strong&gt; L&amp;rsquo;application doit faire peu, mais très bien. Le point le plus important : passer de la page actuelle à une autre sourate (par le menu) ou à une page marquée doit être instantané.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Des menus en français et en anglais.&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Plusieurs marque-pages.&lt;/strong&gt;&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;De grandes lettres, nettes&lt;/strong&gt; : garder la taille de l&amp;rsquo;application d&amp;rsquo;origine, avec un rendu vectoriel.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;h2 id="flutter-ou-natif--mesurer-avant-de-choisir"&gt;Flutter ou natif ? Mesurer avant de choisir&lt;/h2&gt;&#10;&lt;p&gt;Au départ, je voulais utiliser Flutter, surtout pour faciliter le portage sur Android. Plutôt que de deviner, j&amp;rsquo;ai comparé deux versions optimisées, l&amp;rsquo;une native iOS et l&amp;rsquo;autre en Flutter, sur mon iPhone 12.&lt;/p&gt;</description></item></channel></rss>