const std = @import("std");
-const jetzig = @import("jetzig");
pub fn build(b: *std.Build) !void {
const target = b.standardTargetOptions(.{});
.optimize = optimize,
});
- // Example Dependency
- // -------------------
- // const iguanas_dep = b.dependency("iguanas", .{ .optimize = optimize, .target = target });
- // exe.root_module.addImport("iguanas", iguanas_dep.module("iguanas"));
-
- // ^ Add all dependencies before `jetzig.jetzigInit()` ^
-
- try jetzig.jetzigInit(b, exe, .{});
-
b.installArtifact(exe);
const run_cmd = b.addRunArtifact(exe);
const run_step = b.step("run", "Run the app");
run_step.dependOn(&run_cmd.step);
-
- const lib_unit_tests = b.addTest(.{
- .root_source_file = b.path("src/main.zig"),
- .target = target,
- .optimize = optimize,
- });
-
- const run_lib_unit_tests = b.addRunArtifact(lib_unit_tests);
-
- const exe_unit_tests = b.addTest(.{
- .root_source_file = b.path("src/main.zig"),
- .target = target,
- .optimize = optimize,
- });
-
- const run_exe_unit_tests = b.addRunArtifact(exe_unit_tests);
-
- const test_step = b.step("test", "Run unit tests");
- test_step.dependOn(&run_lib_unit_tests.step);
- test_step.dependOn(&run_exe_unit_tests.step);
}
.{
- // This is the default name used by packages depending on this one. For
- // example, when a user runs `zig fetch --save <url>`, this field is used
- // as the key in the `dependencies` table. Although the user can choose a
- // different name, most users will stick with this provided value.
- //
- // It is redundant to include "zig" in this name because it is already
- // within the Zig package namespace.
.name = "jxnshi.xyz",
-
- // This is a [Semantic Version](https://semver.org/).
- // In a future version of Zig it will be used for package deduplication.
.version = "0.0.0",
-
- // This field is optional.
- // This is currently advisory only; Zig does not yet do anything
- // with this value.
- //.minimum_zig_version = "0.11.0",
-
- // This field is optional.
- // Each dependency must either provide a `url` and `hash`, or a `path`.
- // `zig build --fetch` can be used to fetch all dependencies of a package, recursively.
- // Once all dependencies are fetched, `zig build` no longer requires
- // internet connectivity.
- .dependencies = .{
- .jetzig = .{
- .url = "https://github.com/jetzig-framework/jetzig/archive/d219a3ce8354d1acb24dfa9ad4b046b966790d06.tar.gz",
- .hash = "122059a07eb46b2fc3dccc320e1508c19358f1823c8c323333f1a35a427216851520",
- },
- },
.paths = .{
"build.zig",
"build.zig.zon",
"src",
- // For example...
- //"LICENSE",
- //"README.md",
},
}
+++ /dev/null
-## Chapitre 3: Grand maman serait d'accord.
-
-Une fois la notification cliquée, Ponpon se rendit compte que c'était juste un
-post avec des chats. Les chats c'est très bien hein, mais bon, ça fait moyen
-moyen avancer l'histoire quoi. Puis elle réalisa qu'elle regardait le post d'en
-dessous. Celui au dessus c'était pas du tout des chats.
-
-Ponpon écarquilla les yeux.
-— HérisonLand, cria-t-elle avant de sauter partout dans sa chambre.
-
-Malgré le nom qui pourrait porter à confusion, il ne s'agit pas d'un parc
-d'attraction, mais bien d'un magasin dédié aux hérissons. Il était juste à côté,
-à deux rues de chez elle, et en plus il était ouvert ce dimanche
-exeptionnellement à l'occasion de l'ouverture !
-
-Ponpon enfilla ses chaussures à scratch, prête à partir s'aventurer à
-HérissonLand. Elle sorite alors avant de se rendre compte qu'il faisait nuit et
-qu'on était vraiment pas dimanche mais bien samedi soir.
-
-Elle rerentra alors et sa mère l'interpela.
-— C'est prêt si tu veux manger Ponpon.
-— Oh, on mange quoi ?
-— Des pâtes aux beurres.
-Ahhh, des pâtes au beurre, le plât préféré de Ponpon.
-— Ouaiiis ! Trop bien !
-Ponpon couru s'installer à table.
-— Maman ! Maman ! Demain y a un HérissonLand qui ouvre pas loin.
-— HérissonLand, répéta la mère de Ponpon sur un ton intérogatif avant de prendre
-une bouchée de pâte. C'est pas le magasin dont tu me parlait la dernière fois ?
-— Si si si. Ils ont plein de trucs, genre des costumes rigolo pour les
-hérissons, et des gamelles aussi, et des jouets !
-— J'vais enfin pouvoir récupérer l'assiette qu'on a fillé à Raymond.
-— Heuu... Bah si y a des gamelles moui. Faudra en parler à Raymond.
-— Tu sais que cette assiette appartenait à ton arrière grand mère ?
-— J'suis sûre que grand maman serait d'accord, dit Ponpon la bouche pleine.
-
-Ponpon avala sa dernière bouchée, se leva et déposa son assiette dans l'évier
-avant de retourner dans sa chambre, toujours en courant bien sûr.
-
-Le lendemain, Ponpon prit la route de HérissonLand. Elle entra dans le magasin
-et commença à scanner les articles avec ses yeux. Elle vit ce qu'elle avait
-énuméré à sa mère le soir d'avant, c'est à dire "des costumes rigolo pour les
-hérissons, et des gamelles aussi, et des jouets", mais elle vit aussi des roues
-pour hérissons. Vous me direz "Bah des roues pour hamsters quoi", non ! Je vous
-arrête tout de suite ! Ce sont des roues pour hérissons.
-
-A côté de tout ça, il y avait aussi des croquettes pour hérissons, mais Ponpon
-avait déjà essayé et rien y fait, Raymond préfère celles pour chat.
-
-Si ça ne tenait qu'à Ponpon, elle aurait pris un article de chaque, cependant
-certaines experiences passées ont fait prendre la décision à sa mère de ne
-donner à Ponpon qu'un billet de 5€ pour son premier passage à HérissonLand.
-
-Ponpon décida de se replier sur une gamelle et se dirigea en direction de la
-caisse.
-— Bonjouuur, dit Ponpon en souriant.
-Elle posa la gamelle sur le contoir.
-— Ca sera 2€ s'il vous plait.
-
-Ponpon mit la main dans sa poche et sortit un billet de 5€. Le billet cependant
-ne fini pas sa course sur le contoir mais bien par terre. Ponpon ramassa le
-billet et le posa sur le contoir.
-
-Ouf, tout s'est bien fini... :). Un client rentra, ce qui en ouvrant les portes
-du magasin causa un appel d'air qui fit s'envoler le billet qui sortit du
-magasin. Il se posa un peu plus loin devant l'entrée du magasin. Ponpon se
-baissa pour le ramasser, mais le billet farceur ne se laissa pas faire et reprit
-son envol.
-
-Ponpon fronça les sourcils et poursuivit le billet. Cette course poursuite dura
-au moins deux bonnes minutes. Le billet n'avait pas l'air décidé à se diriger
-vers le sol. Il attérit malgré tout... juste pas au sol. Ce poti blageur c'était
-trouvé une place cosy en haut d'un lampadaire.
-— Tu te crois malin monsieur le billet, dit Ponpon en brandissant son poing
-en direction du fauteur de trouble.
-
-Ponpon courut vers le lampadaire, s'y accrocha, leva les pieds du sol et
-commança son ascension du lampadaire.
-
-Arrivée au bout, elle tendit le bras vers le billet, ses doigts n'étaient qu'à
-quelques centimères de son objectif.
-— Je peux vous aider ?
-Ponpon tourna la tête et vit une femme qui devait avoir vers la quarantaine.
-— Huh ? Heu nan, merci ! J'essayais juste de récupérer mon billet.
-Ponpon se tourna alors pour pointer le billet en question du doigt, mais la
-place qui était avait occupée par le billet était maintenant vacante. Ponpon
-regarda alors aux alentours et vit le billet, dans les airs, se dirigeant vers
-les toits des maisons.
-
-A ce moment précis, les éspoirs de Ponpon de revoir se billet était annihilés.
-Ponpon soupira.
-— Vous- Vous avez vu !
-— Oui, le billet s'est envolé.
-Ponpon se laissa glisser le long du lampadaire avant de s'allonger au sol.
-— Tu vas bien ?
-La dame qui juste avant vouvoyait Ponpon, à comme par instinct commencé à la
-tutoyer.
-— C'était l'argent pour HérissonLand...
-La dame commença à fouiller dans son sac et sortit son porte feuille.
-— Je peux te donner...
-Elle regarda dans son portefeuille et sortit un billet qu'elle tendit à Ponpon.
-— 10€ si tu veux.
-— Ehhh... c'est gentil mais je sais pas si je peux accepter.
-— T'inquiètes pas. Tu me remboursera plus tard.
-— Heu... ok.
-Ponpon prit le billet, n'ayant toute fois pas l'air très à l'aise d'accépter de
-l'argent.
-— Merci madame.
-La dame rengea son portefeuille.
-— Tu peux m'appeler Amélie.
-Ponpon se corrigea.
-— Merci Amélie.
-— De rien.
-Amélie reprit son chemin.
-— Au revoir, lui dit Ponpon.
-Amélie se retourna et sourit.
-— Au revoir !
-
-Ponpon revînt chez elle les bras chargés. Elle avait pris la gamelle qu'elle
-comptait prendre initialement, mais elle s'est également laissé tenter par un
-jouet qui couine et une nouvelle couverture pour Raymond.
-— T'as acheté tout ça juste avec 5€, demanda la mère de Ponpon qui lisait un
-livre sur le canapé avant l'arrivée de Ponpon.
-— Nan nan nan ! C'est une dame qui m'a donné de l'argent.
-— De l'argent ? Pourquoi ?
-— Oui, mon billet s'est envolé et j'ai pas réussi à le récupérer, du coup elle
-m'a donné de 10€.
-— Ok. Heureusement qu'elle t'a donné que 10€.
-— Ah ? Pourquoi, demanda Ponpon en examinant avec sa main libre la gamelle
-qu'elle venait d'acheter.
-— Je dois vraiment te rappeler la dernière fois que je t'ai laissé gérer un
-budget ?
-— Tu parles de quand tu m'as laissé faire les courses et que je suis revenue
-avec des Kinder Bueno ?
-— Précisément.
-— Mais c'était y a lonnngtemps ça !
-— Ponpon... tu es revenue avec 50€ de Kinder Bueno.
-— Mais c'est pas ma faute ! C'est trop bon aussiii !
-
-La mère de Ponpon roula des yeux mais tout de même avec un sourir sur son visage
-avant de retourner à son livre. Ponpon elle partit dans sa chambre pour montrer
-toutes les belles choses qu'elle avait prit pour Raymond le hérisson.
-
-Elle installa la couverture à côté de Raymond qui posé dans son ancienne
-couverture. Ou du moins ce que Ponpon aurait voulu être son ancienne couverture,
-car Raymond n'avait pas l'air décidé à bouger de la couverture auquelle il avait
-été habitué pendant si longtemps.
-— Aller grosse patate ! Faut aller sur l'autre, dit Ponpon accroupie devant
-Raymond, pointant la nouvelle couverture.
-
-Mais Raymond ne céda pas. Ponpon se relevé, comprenant que c'était peine perdue
-et s'allongea sur son lit derrière elle.
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-<h2> Chapitre 1: Rentrée des classes. Point d'intérogation.</h2>
-
-<p>Ce jour là c'était la rentrée pour Ponpon (ça se prononce ponne ponne) ! Elle
-faisait sa première année en étude d'art dans l'université de sa ville,
-l'université Jean-Jacobin. Carrément elle s'était reveillée juste avant que son
-reveil sonne tellement elle avait hâte. Elle reremplit la gamelle de Raymond,
-son hérisson de compagnie et fila dans la cuisine pour prendre le petit déjeuner
-avec sa maman. Ponpon avait une cuisine avec un contoir, en mode la cuisine et
-le salon c'est la même pièce comme dans BoJack. Ponpon au petit déjeuner elle
-prenait des pop tarts au réglisse avec un grand verre de jus d'orange pour un
-max de vitamines. "Alors Ponpon, prête pour cette rentrée ?" demanda sa mère.
-"Oui maman !" repondit Ponpon en levant les bras au ciel. Elle reprit une
-posture normale, tapa un cros dans sa pop tart et commença à yap à propos de
-l'université. Sa mère qui étonnamment arrivait à suivre le ramble de Ponpon, ce
-qui pour quelconque mortel est un exercice éprouvant.
-</p>
-<p>Ponpon vit quelque chose passer à travers la fenêtre derrière sa mère. C'était
-le bus pour l'uni omg ! Ponpon poussa un cri de terreur et se précipita vers
-son sac à dos qui était en fait un sac à dos grenouille. Puis elle se rua vers
-la porte avant de sortir en faisant des grands gêstes au conducteur du bus qui
-heureusement l'avait vu et s'arrêta. Elle entra dans le bus et s'assit à la
-première place de libre qu'elle vit en posant son sac à dos sur ses genoux.
-"Sympa ton sac." lui dit la fille à côté d'elle. "Merci !" répondit Ponpon.
-"Toi aussi tu vas au lycée Jean-Jacobin ?" demanda cette dernière à la fille
-inconue. "Oui. J'ai vraiment hâte ! Même si je suis un peu stressée."
-repondit-t-elle. "Oh ? Stressé ? Pourquoi ?" demanda Ponpon n'ayant pas l'air
-de connaitre la notion de stress. "Et bien, je suis toujours stressée quand je
-découvre un nouvelle établissement que je ne connais pas. Le fait de rencontrer
-de nouvelles personnes, tout ça." répondit la fille à côté de Ponpon. "Tu
-stresses de rencontrer des gens ? Pourtant c'est toi qui a commencé à me
-parler." indiqua Ponpon. "Oui, c'est plus facile pour moi de parler avec qu'une
-seule personne." répondit la jeune fille. "Oui je vois." dit Ponpon les mains
-derrières la tête regardant en face d'elle, puis elle dit "Oh et en fait, moi
-c'est Ponpon, et toi c'est comment ?". "Ponpon ?" se demanda la jeune fille
-étonnée par ce prénom bien peu commun qu'est celui de notre personnage
-principal. Elle reprit ses ésprits et répondit "Heuu... Oui, pardon ! Moi c'est
-Julie.". "Peut-être qu'on sera dans la même classe Julie !" dit Ponpon. "Oui
-j'espère !" répondit Julie. "Ponpon ? C'est pas... l'univerté !" s'écria Julie
-en pointant du doigt par la fenêtre. "Ahhhhh ! Si si si si si !" s'excalama
-Ponpon en allant regarder l'université s'éloigner par la fenêtre à l'opposé de
-là où elles étaient assisies malgré qu'il y avait des gens assis devant la
-fenêtre. "Ehhhhhh... C'est pas grave." dit Ponpon avant de retourner s'assoire à
-sa place. Ponpon avait l'air de s'être remise rapidement du fait d'avoir loupé
-l'arrêt. Julie cependant était tétanisée. Ponpon passa sa main devant son visage
-en esperant une réponse de sa part "Julie ?". Devant l'absence de réponse, elle
-n'insista pas. Julie se reveilla d'un coup et agrippa la manche de Ponpon et
-secoua Ponpon en s'écriant "Ahhhh ! On a raté l'arrêt !". "Ehhhh !" dit Ponpon
-pendant que Julie raconte pourquoi le fait d'avoir raté l'arrêt c'est super
-grave et qu'à cause de ça elle va être renvoyée et elle aura pas son diplôme et
-elle va finir poubelleuse. "Juliiie ! Arrête de me secoueeer !" dit Ponpon.
-Julie s'arrêta immédiatement et s'excusa "Pardon ! Pardon !". "Julie tu vas pas
-finir poubelleuse t'inquiètes paaas." dit Ponpon en essayant de se remettre de
-cette secousse intense dignue de La Vienne Dynamique, l'attraction du
-Futuroscope là. "Oui ! Tu as raison ! On a juste à s'arrêter au prochain
-arrêt !" dit Julie. "Oui, t'as tout compris !" dit Ponpon en tenant Julie par
-les épaules. "Sinon j't'ai parlé de mon hérisson Raymond ?" dit Ponpon.
-</p>
-<p>Julie et Ponpon arrivèrent éssoufflées devant l'université. "J'arrive pas... à
-croire... qu'on a loupé l'arrêt... deux fois !" dit Julie à bout de souffle.
-"Je suis désolééee... ! Quand je commence... à parler... de Raymond... je
-m'arrête plus !" répondit Ponpon. Elles entrèrent dans l'université (un peu en
-retard on va pas se mentir) et se présentèrent à l'accueil. "Bonjouuur !" dit
-Ponpon à la dame de l'accueil qui avait l'air d'être à peine plus âgée que
-Ponpon et Julie. "Bonjour les filles, comment je peux vous aider ?"
-demanda-t-elle. "Heu... Oui ! C'est la rentrée pour nous, on ne sait pas trop
-où aller." répondit Ponpon. "Vous êtes en retard faudra vous dépêcher ! Vous
-allez là où y a les panneaux au mur là bas et vous cherchez votre classe." dit
-la dame de l'accueil en pointant les panneaux en question du doigt. Les filles
-courrurent vers les panneaux en pensant bien à remercier la dame de l'accueil
-et commencèrent à chercher leurs noms. "Julie... Julie... Julie Landré !
-Trouvé !" dit Julie. "Oh ! Est-ce que je suis dans ta classe ?" demanda Ponpon.
-Julie chercha et répondit "Heuu... Nan on dirait pas". "Ehhhh... On pourra
-toujours se voir pendant les pauses !". "Oui !" répondit Julie. Ponpon continua
-de chercher son nom, avant d'arriver au bout de tout les panneaux. "Tu
-trouves ?" demanda Julie. "Attends, attends ! Je dois l'avoir loupé." répondit
-Ponpon avant de recommencer sa recherche depuis le début. Julie demanda à Ponpon
-"Tu t'es bien inscrite ?". Ponpon baissa la tête et se remémora toutes les fois
-où sa mère lui a dit de bien penser à s'inscrire telles des souvenirs de guerre.
-"Tu as bien pensé à t'inscrire pour l'université Ponpon ?" lui avait dit sa
-mère. "Je le ferais demain !" avait-t-elle alors répondu alors qu'elle jouait
-avec Raymond le hérisson. "Oublie pas de t'inscrire pour l'uni Ponpon." lui
-avait dit sa mère à nouveau plus tard dans la semaine. "Oui oui ! Demain
-demain !" avait répondu Ponpon alors qu'elle était en train de maxi gamer sur
-Fractal Block World. Ou encore cette fois où sa mère lui avait encore une fois
-rappelé pendant qu'elle essayait de grimper à l'arbre du jardin pour aller
-caresser Splooinky le chat du voisin. Ponpon se dématérialisa de l'espace et du
-temps et réapparu alongée au sol. "Julie... J'ai oublié de m'inscrire..." dit
-Ponpon dans un état second comme si elle avait vu un fantôme et qu'elle était
-paralysée. "Quoiiii ?!" s'exclama Julie. "Mais tu vas faire comment ?" demanda
-Julie à Ponpon qui était toujours au sol et qui n'avait l'air d'être présente
-que physiquement, pour pas dire qu'elle était chockbar. "Ahhh !" Julie se
-rappela qu'elle était en retard et qu'elle devait aller en classe. "Désolée,
-désolée, désolée ! Je dois aller en classe !" dit Julie. Elle sortie un stylo
-de son sac et écrivit sur la main de Ponpon. "Tiens ça c'est mon Skype. On se
-voit ce soir si tu veux !" dit elle avant de partir en courant vers sa classe.
-"A plus tard Ponpon !" dit Julie en faisant bye bye avec sa main à Ponpon.
-Ponpon, toujours au sol. Elle ne bougeait pas. Elle a oublié de s'inscire quoi.
-Alors que sa mère a fait que lui répéter. Elle est pas très smart la fille quand
-même. "Hein ?!". Heuu... fin de chapitre ! "Ehhh ! Atten-".
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-<h2> Chapitre 1: Pattes de hérisson.</h2>
-
-<p>— Ahhh, s'écria Ponpon devant l'arbre de son jardin. <br>Sa mère sortie de la maison paniquée et rejoignit Ponpon devant l'arbre. <br>— Qu'est-ce qu'il y a Ponpon ?! <br>— C'est Raymond ! Il est encore grimpé dans l'arbre ! <br>— Encore ! Faudra vraiment que tu me dises comment il fait Ponpon. <br>— Maiiis j'te l'ai diiit ! C'est avec ses pattes de hérisson là ! <br></p>
-<p>Voyant que sa mère n'avait pas l'air convaincue, Ponpon essaya de détourner le
-sujet de comment Raymond s'était retrouvé dans l'arbre en rappelant l'urgence de
-la situation. <br>— Maman, maman ! Faut sauver Raymonnnd ! <br>La mère de Ponpon prit un instant pour réfléchir. <br>— Oh je sais, dit la mère de Ponpon avant de partir vers le garage et de
-revenir avec un filet à papillon. On va l'attraper avec ça ! <br>— Un filet à papillon ? <br>— Mhm ! <br>La mère de Ponpon posa le filet sur Raymond et l'attrapa sous le regard faciné
-de Ponpon avant de le poser dans l'herbe. <br>— Raymonnnd ! <br>— Ca m'a donné faim tout ça, pas toi Ponpon ? <br>— Si ! <br>Ponpon et sa mère (et Raymond aussi !) rentrairent manger.
-</p>
-<p>Ponpon remplit la gamelle de Raymond et installa la table pendant que sa mère
-faisait réchauffer le reste d'hier soir. <br>— Tu me passes ton bol Ponpon ? <br>— Tout de suite, répondit Ponpon avant de tendre son bol à sa mère.
-Cette dernière remplit le bol de Ponpon de soupe à l'oignon avant de se servir
-un bol à son tour et de venir s'installer à table. <br>— Alors Ponpon, tu te sens comment pour cette rentrée ? <br>— J'ai trop hâte ! <br>Et oui ! Parce que cette aprèm c'était la rentrée pour Ponpon, elle faisait sa
-première année en études d'art dans l'université de sa ville, l'université
-Jean-Jacobin. Mais laissons Ponpon en dire plus à ce sujet. <br>— [...] et là y a une météorite qui tombe *prouachh* et y avait l'autre qui
-laiçait un laser ! <br></p>
-<p>Hmm... il n'aura fallu que de quelque secondes à Ponpon pour commencer à
-divaguer et que la conversation devienne incompréhensible. Et si on parlait de
-Raymond, l'ami à pique de Ponpon. Peut-être qu'après cela la conversation va se
-dénouer et on pourra suivre à nouveau ce qu'il ce dit.
-</p>
-<p>J'vous explique, Raymond c'est un giga squatteur. Ponpon elle a un composte vous
-voyez, et du coup Raymond, ce gros gourmand il vennait se délécter de toutes les
-bonnes choses que le composte avait à apporter.
-</p>
-<p>Puis un jour Ponpon en allant vider le composte, elle vit Raymond. Elle le prit
-dans ses mains et dit "Toi je vais t'appeller Raymond !". Elle lui avait donné
-un nom random qu'elle trouvait drôle juste parce que ça rimait. Depuis, Raymond
-vivait chez Ponpon rent free.
-</p>
-<p>Oh ? Ponpon s'est levée en regardant frénétiquement par la fenêtre avec les
-mains sur la tête. Ok, retourons un peu en arrière voir ce qui se passe.
-</p>
-<p>— [...] et là y a une météorite qui tombe *prouachh* et y avait l'autre qui
-laiçait un laser ! <br>— Et t'as réussi à t'en sortir ? <br>— Oui mais c'était moins une ! <br>Ponpon vit passer quelque chose par la fenêtre derrière sa mère. C'était le bus
-pour l'université ! <br>— Ahhhh, cria Ponpon. Le bus pour l'uni, dit-t-elle avant de se précipiter vers
-son sac à dos grenouille qu'elle n'a pas changé depuis la primaire. <br></p>
-<p>— A ce soir maman, dit Ponpon avant de se ruer vers la porte et sortir en faisant
-des grands gêstes au conducteur du bus. <br>Heureuseument, ce dernier vit Ponpon et s'arrêta. Elle entra dans le bus et
-s'assit à la première place qu'elle vit et posa son sac sur ses genoux.
-</p>
-<p>— J'aime bien ton sac, dit la fille assise à côté de Ponpon sur un ton très
-calme. <br>— Merci ! Toi aussi tu vas à Jean-Jacobin ? <br>— Mhm, dit la fille inconnue en hochant la tête. Elle baissa les yeux et regarda
-le sac de Ponpon et dit, Ponpon ? <br>— Ahhhh ! Comment tu saiiiis ?! Tu lis dans les pensées ou quoi ? <br>— Je lisais juste ce qu'il y avait écrit sur ton sac, dit la fille inconnue en
-pointant du doigt l'endroit en question. <br>— Ahh ! Oui oui oui, dit Ponpon une main derrière la tête. Ca se prononce ponne
-ponne. Et toi c'est comment ? <br>— Moi c'est Julie. <br>— Peut-être qu'on sera dans la même classe Julie ! <br>— Mhm. <br>Julie sortie un bouquin de son sac et commença à lire. <br>— Oh ? Tu lis quoi, demanda Ponpon. <br>— *Zurich International Chess Tournament, 1953* <br>— Et ça parle de quoi ? <br>Ponpon se pencha sur le bouquin pour essayer d'en savoir un peu plus, mais ce
-vit que des arrangement de lettres et de chiffres incompréhenssible, c6, Nc6,
-xg4, Rxg4. <br>— Ca parle du plus grand tournoi d'échecs de tout les temps. <br>— D'échecs, se demanda Ponpon intriguée. Ponpon connaissait l'existe des échecs
-mais n'en savait pas plus que ça sur ce sujet. <br>— Mhm. <br>— Et heu ça consiste en quoi ? <br>Julie ferma son bonquin et forma un arc-en-ciel avec ses mains. <br>— Les échecs c'est une grande bataille, entre toi et ton adversaire. Où le but
-est d'établir des stratégies pour gagner. <br>Julie sembla d'un coup intriguée par ce qu'il y avait derrière la fenêtre qui se
-trouvait à l'opposé, derrière Ponpon. <br>— Owa ! Comme dans *Fractal Block World* ! L'autre fois j'étais dans la fleur
-noire et y avait au moins [...]. <br>— Ponpon, dit Julie pendant que Ponpon parlait de *Fractal Block World*. <br>— [...] 14 rats mineurs qui m'ont attaqués ! <br>— Ponpon. <br>— J'en avait jamais- huh, Ponpon s'arrêta. <br>— C'est pas l'université là bas, dit Julie en pointant du doigt l'université qui
-s'éloignait par la fenêtre. <br>— Ahhhh ! Si si si, s'écria Ponpon avant de se précipiter vers la fenêtre en
-question malgré la présence de gens et de regarder l'université s'égloigner.
-Julie regardait Ponpon de loin, toujours assise à sa place avant que Ponpon
-revienne s'assoir elle aussi. <br>— Pas grave ! On aura le prochain arrêt, dit Ponpon, oh Julie ! Je t'ai parlé
-de Raymond ? <br></p>
-<p>Julie et Ponpon arrivèrent éssoufflées devant l'université. C'est la phrase que
-j'aurais dit si Julie était éssoufflée elle aussi. La phrase correcte serait
-plutôt que Ponpon est arrivée éssoufflée devant l'université, avec Julie
-parfaitement en forme à ses côtés, trônant sur son overboard.
-</p>
-<p>Julie descendit de son hoverboard, le pliât et le rangea dans son sac avant de
-se diriger vers l'université. Elle s'arrêta et se tourna vers Ponpon.
-— Tu viens Ponpon, demanda Julie à Ponpon toujours essoufflée. <br>— J'ar... rive ! J'arrive, dit Ponpon avant de rejoindre Julie. <br>Julie et Ponpon se dirigeairent vers l'université. <br>— Deux fois... On a ratté l'arrêt deux fois..., dit Ponpon. <br>— Mhm. <br>Ponpon se tourna vers Julie et mit ses mains l'une contre l'autre en baissant la
-tête. <br>— Désolée de t'avoir mise en retard, elle releva la tête et continua, quand je
-parle de Raymond je ne peux plus m'arrêter ! <br>— T'inquiètes pas Ponpon, on est arrivées maintenant. <br>— Alors, tu m'en veux pas ? <br>— T'en vouloir ? J'ai passé un bon moment, c'est ce qui compte pour moi, dit
-Julie avant de se retourner vers l'université et de continuer sa marche tel la
-chad qu'elle est. <br>— Un bon moment ? Ca veut dire qu'on est amies, pensa Ponpon à voix haute avant
-de se précipiter faire un câlin surpise à Julie. <br></p>
-<p>Ponpon et Julie entrèrent dans l'université. Devant elles, une jeune femme à
-peine plus âgée qu'elles se tenait à l'accueil. <br>— Bonjour, dit la jeune femme avant de remarquer les sac dans le dos de
-Ponpon et Julie, oh ? Vous êtes étudiantes ?". <br>— Oui, répondit Ponpon avec beaucoup d'entrain. <br>— Vous êtes en retard ! Dépêchez vous ! Allez chercher votre prénoms sur les
-panneaux là bas pour savoir dans quelle classe vous êtes, dit la femme de
-l'accueil en pointant les panneaux en question du doigt. <br>— Oh, d'accord ! Merci, dit Ponpon en se précipitant vers les panneaux
-accompagnée de Julie. <br></p>
-<p>Elles commencèrent à chercher leur noms sur les panneaux. <br>— Trouvé, dit Julie à peine arrivée devant les panneaux. <br>— Déjà ?!, répondit Ponpon choquée. <br>— Mhm. <br>— Mais... Comment ?! <br>— Les prénoms sont rangés par ordre alphabétique. <br>— Je... oui. Ca fait sens, dit Ponpon une main sur le menton. Oh, on est dans
-la même classe ? <br>Julie chercha dans les prénoms de sa classe. <br>— Heuu... nan on dirait pas. <br>— Ehhh... pas grave ! On pourra toujours se voir pendant les pauses ! <br>— Mhm. <br></p>
-<p>Ponpon continua de chercher son prénom parmis les panneaux avant d'arriver au
-bout du dernier panneau. Julie regarda Ponpon intriguée. <br>— Attends, attends ! Je dois l'avoir loupé; dit Ponpon avant de recommencer sa
-recherche depuis le début. <br>— Tu t'es bien inscrite ? <br></p>
-<p>Ponpon baissa la tête, la phrase de Julie resonnant dans sa tête, pendant
-qu'elle se rememorait toute les fois où sa mère lui a dit de s'inscrire tels des
-souvenirs de guerre. "Tu as bien pensé à t'inscrire pour l'université Ponpon ?"
-lui avait dit sa mère. "Je le ferais demain !" avait-t-elle dit alors qu'elle
-était dans le jardin avec Raymond le hérisson. "Oublie pas de t'inscrire pour
-l'uni Ponpon." lui avait à nouveau dit sa mère. "Oui oui ! Demain !" avait
-elle à nouveau répondue alors qu'elle jouait à *Fractal Block World*.
-</p>
-<p>Ponpon se dématerialisa de l'espace et du temps et réapparu allongée au sol.
-Julie regarda Ponpon. "Ca va ?" demanda-t-elle. Ponpon ne répondit pas, elle
-été comme paralysée. Julie passa sa main devant son visage avant de se rappeler
-qu'elle était en retard en regardant vers les escaliers. "Je dois y aller
-Ponpon." dit Julie. Elle sortie un feutre noir de son sac et écrivit sur la main
-de Ponpon. "Tiens ça c'est mon Skype. On se voit ce soir si tu veux." dit Julie
-avant de partir rejoindre sa classe.
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-<h2> Chapitre 2: Omg des Crackeos !</h2>
-
-<p>Ponpon était sur son ordinateur, les volets fermés telle une véritable gameuse.
-Elle jouait à son jeu favori, *Fractal Block World*. Elle fini sa canette de
-*Monster* avant de la jeter dans un sac poubelle à côté de son bureau. Cette
-dernière rentra à peine dans le sac. Ponpon comprit alors qu'il était temps de
-déscendre ce sac pour laisser place au prochain. En passant la porte elle passa
-à côté de Raymond qui été devenu grassouillet du fait que Ponpon laissait le
-paquet de croquette à sa disposition H24. J'vous l'avais dit que c'était un
-gros gourmand.
-</p>
-<p>En sortant de sa chambre, Ponpon reçut une notif Facebook, ce qu'elle n'avait
-pas l'air d'avoir remarqué.
-</p>
-<p>Elle descendit, le sac poubelle à la main et sortie le mettre dans la cours.
-Elle vit une personne au loin, un visage famillier ? Ponpon plissait les yeux.
-"Omg ce Julie !" se dit Ponpon dans sa tête. <br>— Julie ? T'habites dans le coin, demanda Ponpon intriguée. <br>— Mhm. J'habite un peu plus loin dans le quartier. <br>— Tu vas quelque part ? <br>— Oui. Je vais à mon club d'échecs. <br>— Oh je vois. T'y vas souvent ? Je t'ai jamais vu passer par ici. <br>— Oui. Tout les weekends. Tu m'as jamais vu passer ? Pourtant je passes tout le
-temps par ici. <br>Ponpon se rappela que ça faisait maintenant un mois qu'elle ne sortait pas et
-qu'elle vivait dans sa chambre les volets fermés. <br>— Ah ah, oui je vois eheh." dit Ponpon une main derrière la tête "Et bien
-heuu... amuses toi bien ! <br>— Merci. <br></p>
-<p>Julie reprit sa route sous le regard de Ponpon puis s'arrêta et se tourna vers
-Ponpon. <br>— Tu veux venir, demanda-t-elle. <br>— Venir ? Au club d'échecs ? <br>— Mhm. <br>— Heuu... je sais pas. Tu sais j'y connais rien moi aux échecs. <br>— Comme tu veux. <br>Julie repris sa route. Ponpon prit le temps de réfléchir. Elle se dit que
-peut-être ça serait bien de sortir pour une fois. Elle pourra toujours jouer à
-Fractal Block World plus tard. <br>— Julie. <br>Julie se tourna vers Ponpon. <br>— Hm ? <br>— Je veux bien venir finalement ! <br>— D'accord, dit Julie en hochant légèrement la tête. <br>Ponpon rejoignit Julie et ensemble elles allèrent au club d'echecs. La mère de
-Ponpon fit un sourir bienveillant en observant la scène par la fenêtre.
-</p>
-<p>La marche fut d'abord silencieuse, puis Ponpon engagea la conversation. <br>— Heuu... Alors, vous apprenez quoi en cours ? <br>— Hm. On dessine beaucoup en ce moment. Là on apprend la perspective. <br>— Oh ok je vois, dit Ponpon regardeant un peu ailleurs. <br>Le silence revint un instant et cette fois ci Julie fut celle qui le brisa. <br>— Et toi Ponpon. Tu fais quoi de tes journées ? <br>— Heu moi ? Moi je... je heu. <br>— Hm ? <br>— Je joue à Fractal Block World." répondit-t-elle en baissant la tête. <br>— Intéressant. <br>— Intéressant ? Comment ça ? <br>— Ce niveau de dévotion que tu as pour ce jeu. Je trouve ça... intéressant. <br>— Ah ? Je l'ai jamais vu comme ça. <br>— Mhm. <br>Ponpon réfléchit à ce que Julie avait dit.
-</p>
-<p>Une fois arrivées, Ponpon lu le nom de l'enseigne à voix haute. <br>— Chez... Chek &... Matt ? C'est ici ? <br>— Mhm. <br>— Oh. Ok.
-</p>
-<p>Julie et Ponpon rentrèrent dans le club d'échecs. Ponpon qui était d'habitude à
-l'aise en toute circonstances était là très calme. Il faut dire que le club
-était lui même très calme.
-</p>
-<p>Julie s'installa à une table pendant que Ponpon observait les parties des gens
-autour d'elle. <br>— Tu viens Ponpon ? <br>— Ah heu oui ! J'arrive, dit Ponpon avant de s'installer à la table à son tour.
-</p>
-<p>Ponpon regarda le plateau en plissant les yeux l'air perdu. <br>— Tu ne connais pas du tout les règles ? <br>— Heu... Nan. <br>Julie posa son doigt sur un pion et commença à expliquer les règles du jeu. <br>— Ca c'est le pion, il avance d'une case à part en début de partie où il peut
-avancer de deux cases. <br>— Uhu, dit Ponpon le regard toujours rivé sur le plateau mais les pensées
-ailleurs.
-</p>
-<p>Ponpon avait un peu faim. Elle commença à se demander si elle avait pris son
-goûter. Oui elle en était sûre, elle avait prit son goûter, car pour Ponpon le
-goûter c'est sacré. Mais qu'avait t'elle bien pu prendre se demanda-t-elle. Elle
-commença à réfléchir, une main sur le menton toujours en fixant le plateau
-d'échecs. Ah oui se souvint-t-elle. Elle avait pris des chips à la crevettes.
-</p>
-<p>— Et enfin, ça c'est la reine, elle peut se déplacer comme la tour et le fou. <br>Tu as des questions ? <br>— Huh ? <br>Ponpon se souvint qu'elle était actuellement dans un club d'échecs en face de
-Julie qui lui expliquait les règles des échècs. <br>— T'avais l'air très concentrée sur le plateau. Tu réfléchissais déjà à des
-stratégies ? <br>— Des stratégies ? Ah nan je me demandais juste si j'avais pris mon gouter
-aujourd'hui eheh. <br>— Et alors ? <br>— Alors ? Alors quoi, se demanda Ponpon l'air surprise. <br>— Tu as pris ton goûter ? <br>— "Ahhh ! Oui oui je l'ai pris. Mais j'avoue que j'ai encore un peu faim. <br>— Il y a une épicerie à côté, on peut y aller si tu veux. <br>— Heu... le ventre de Ponpon fit un maxi boucan. Oui je veux bien. <br></p>
-<p>Ponpon et Julie se levèrent de la table avant de sortir de Chez Chek & Matt et
-de se rendre en direction de l'épicerie. Arrivées devant le rayon goûter, elles
-chercherent la perle rare. <br>— Omg des *Crackeo*s, s'éxclama Ponpon. <br>— Hm ? <br>Julie n'avait pas l'air de comprendre l'engoument de Ponpon. Ponpon agripa
-Julie par les épaules. <br>— C'est le goûter ultime Julie ! Une harmonie parfaite entre le biscuit et la
-crème ! <br>Julie resta sans réponse, n'ayant pas l'air de coire en l'existence d'un gouter
-ultime. <br>— Tu verras Julie ! Fais moi confiance !
-</p>
-<p>Après avoir fait la propaganda des *Crackeo*s, Ponpon passa à la caisse
-acompagnée de Julie avant de sortir, leur goûter en main, et de s'installer sur
-un banc à proximité. Ponpon ouvrit le paquet et tendit un biscuit à Julie. <br>— Tiens. <br>Ponpon fixa Julie pour ne pas perdre une miette de la réaction de Julie à son
-premier *Crackeo*.
-</p>
-<p>Julie croqua dans le cracks et ses yeux s'illuminèrent sans pour autant laisser
-paraître d'émotion. Julie se tourna vers Ponpon. <br>— En effet c'est... Julie fixa le biscuit avant de se tourner vers Ponpon. Très
-bon. <br>— J'te l'avais dit !
-</p>
-<p>Ponpon vit un chat gris sortir au coin de la rue. <br>— Le chat ! Le chat ! <br>Mais une fois que Ponpon se leva pour essayer de l'approcher, il rebroussa
-chemin, ce qui ne découragea pas Ponpon qui partie à sa recherche. Quand elle
-arriva à l'intersetion, elle tourna la tête et fit surprise par l'absence de
-chat. Elle regarda à gauche et à droite, mais peu importe où son regard se
-portait, aucun chat en vue. Julie rejoignit Ponpon avec un pas beaucoup plus
-calme, contrairement à Ponpon qui elle avait sprinté. <br>— Julie, y avait bien un chat ? <br>— Heu pour être honnête, je n'ai pas fait attention. <br>— Oh, bizzare. <br>Ponpon marqua un temps d'arrêt. <br>— Tu veux retourner faire des échecs ? <br>Julie regarda l'heure sur son téléphone. <br>— J'aimerais beaucoup mais demain c'est l'anniversaire de mon petit frère et je
-dois aider maman pour la décoration. <br>— Oh d'accord je vois ! Une prochaine fois peut-être ! <br>— Oui. <br>— Bon weekend Julie ! Oh et garde les *Crakeo*s, je te les laisse, dit Ponpon
-avant de prendre le chemin vers sa maison. <br>Julie regarda le paquet de *Crakeo*s. <br>— Merci. Bon weekend Ponpon.
-</p>
-<p>Ponpon rentra chez elle et enleva ses chaussures dans l'entrée avant de
-rejoindre sa mère qui sculptait de l'argile dans le salon. Ponpon se mit
-derrière l'épaule de sa mère les mains derrière le dos. <br>— Tu scupltes quoi ? <br>— Je sculpte un chat. Pour l'ajouter à ma collection, la mère de Ponpon pointa
-la collection en question qui se trouvait à l'autre bout de la pièce. <br>— Ohhh. Ponpon pris un temps avant sa prochaine phrase. En parlant de chat. J'ai
-vu un chat aujourd'hui. J'ai essayé de le poursuivre mais il a disparu, dit
-Ponpon un peu deçue. <br>— Un chat comme ça, demanda la mère de Ponpon en parlant de sa sculpture. <br>— Oui ! Il était gris aussi. <br>— Hm... la mère de Ponpon posa une main sur son menton avant de reprendre sa
-sculpture. Il me semble que les voisins ont un chat gris aisso. C'est peut-être
-lui. <br>— Tu penses ? C'est la première fois que je le vois. <br>La mère de Ponpon se tourna vers Ponpon. <br>— En même temps on ne peut pas dire que tu sortes beaucoup, dit-t-elle en
-souriant. <br>— Oui c'est vrai ehehn, répondit Ponpon. Oh ! Faut que j'aille nourir Raymond le
-hérisson !
-</p>
-<p>Ponpon courut dans les escaliers avant d'arriver dans sa chambre. Puis elle se
-mit devant une couverture qu'elle avait disposait au sol, autrement dit, le spot
-préféré de Raymond qui passait sa vie ici. Ponpon vit Raymond rassasié, en train
-de dormir sur sa couverture. <br>— J'avais oublié que t'avais accès au croquettes quand tu voulais toi.
-</p>
-<p>Ponpon tourna la tête vers l'écran de son ordinateur et remarqua une mention
-Facebook, chose qui n'arrive jamais. Elle s'assit à sa chaise de bureau et
-cliqua sur la notification.
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-<h2> Chapitre 3: Grand maman serait d'accord.</h2>
-
-<p>Une fois la notification cliquée, Ponpon se rendit compte que c'était juste un
-post avec des chats. Les chats c'est très bien hein, mais bon, ça fait moyen
-moyen avancer l'histoire quoi. Puis elle réalisa qu'elle regardait le post d'en
-dessous. Celui au dessus c'était pas du tout des chats.
-</p>
-<p>Ponpon écarquilla les yeux. <br>— HérisonLand, cria-t-elle avant de sauter partout dans sa chambre.
-</p>
-<p>Malgré le nom qui pourrait porter à confusion, il ne s'agit pas d'un parc
-d'attraction, mais bien d'un magasin dédié aux hérissons. Il était juste à côté,
-à deux rues de chez elle, et en plus il était ouvert ce dimanche
-exeptionnellement à l'occasion de l'ouverture !
-</p>
-<p>Ponpon enfilla ses chaussures à scratch, prête à partir s'aventurer à
-HérissonLand. Elle sorite alors avant de se rendre compte qu'il faisait nuit et
-qu'on était vraiment pas dimanche mais bien samedi soir.
-</p>
-<p>Elle rerentra alors et sa mère l'interpela. <br>— C'est prêt si tu veux manger Ponpon. <br>— Oh, on mange quoi ? <br>— Des pâtes aux beurres. <br>Ahhh, des pâtes au beurre, le plât préféré de Ponpon. <br>— Ouaiiis ! Trop bien ! <br>Ponpon couru s'installer à table. <br>— Maman ! Maman ! Demain y a un HérissonLand qui ouvre pas loin. <br>— HérissonLand, répéta la mère de Ponpon sur un ton intérogatif avant de prendre
-une bouchée de pâte. C'est pas le magasin dont tu me parlait la dernière fois ? <br>— Si si si. Ils ont plein de trucs, genre des costumes rigolo pour les
-hérissons, et des gamelles aussi, et des jouets ! <br>— J'vais enfin pouvoir récupérer l'assiette qu'on a fillé à Raymond. <br>— Heuu... Bah si y a des gamelles moui. Faudra en parler à Raymond. <br>— Tu sais que cette assiette appartenait à ton arrière grand mère ? <br>— J'suis sûre que grand maman serait d'accord, dit Ponpon la bouche pleine.
-</p>
-<p>Ponpon avala sa dernière bouchée, se leva et déposa son assiette dans l'évier
-avant de retourner dans sa chambre, toujours en courant bien sûr.
-</p>
-<p>Le lendemain, Ponpon prit la route de HérissonLand. Elle entra dans le magasin
-et commença à scanner les articles avec ses yeux. Elle vit ce qu'elle avait
-énuméré à sa mère le soir d'avant, c'est à dire "des costumes rigolo pour les
-hérissons, et des gamelles aussi, et des jouets", mais elle vit aussi des roues
-pour hérissons. Vous me direz "Bah des roues pour hamsters quoi", non ! Je vous
-arrête tout de suite ! Ce sont des roues pour hérissons.
-</p>
-<p>A côté de tout ça, il y avait aussi des croquettes pour hérissons, mais Ponpon
-avait déjà essayé et rien y fait, Raymond préfère celles pour chat.
-</p>
-<p>Si ça ne tenait qu'à Ponpon, elle aurait pris un article de chaque, cependant
-certaines experiences passées ont fait prendre la décision à sa mère de ne
-donner à Ponpon qu'un billet de 5€ pour son premier passage à HérissonLand.
-</p>
-<p>Ponpon décida de se replier sur une gamelle et se dirigea en direction de la
-caisse. <br>— Bonjouuur, dit Ponpon en souriant. <br>Elle posa la gamelle sur le contoir. <br>— Ca sera 2€ s'il vous plait.
-</p>
-<p>Ponpon mit la main dans sa poche et sortit un billet de 5€. Le billet cependant
-ne fini pas sa course sur le contoir mais bien par terre. Ponpon ramassa le
-billet et le posa sur le contoir. Ouf, tout s'est bien fini... :).
-</p>
-<p>Un client rentra, ce qui en ouvrant les portes du magasin causa un appel d'air
-qui fit s'envoler le billet qui sortit du magasin. Il se posa un peu plus loin
-devant l'entrée du magasin. Ponpon se baissa pour le ramasser, mais le billet
-farceur ne se laissa pas faire et reprit son envol.
-</p>
-<p>Ponpon fronça les sourcils et poursuivit le billet. Cette course poursuite dura
-au moins deux bonnes minutes. Le billet n'avait pas l'air décidé à se diriger
-vers le sol. Il attérit malgré tout... juste pas au sol. Ce poti blageur c'était
-trouvé une place cosy en haut d'un lampadaire. <br>— Tu te crois malin monsieur le billet, dit Ponpon en brandissant son poing
-en direction du fauteur de trouble.
-</p>
-<p>Ponpon courut vers le lampadaire, s'y accrocha, leva les pieds du sol et
-commança son ascension du lampadaire.
-</p>
-<p>Arrivée au bout, elle tendit le bras vers le billet, ses doigts n'étaient qu'à
-quelques centimères de son objectif. <br>— Je peux vous aider ? <br>Ponpon tourna la tête et vit une femme qui devait avoir vers la quarantaine. <br>— Huh ? Heu nan, merci ! J'essayais juste de récupérer mon billet. <br>Ponpon se tourna alors pour pointer le billet en question du doigt, mais la
-place qui était avait occupée par le billet était maintenant vacante. Ponpon
-regarda alors aux alentours et vit le billet, dans les airs, se dirigeant vers
-les toits des maisons.
-</p>
-<p>A ce moment précis, les éspoirs de Ponpon de revoir se billet était annihilés.
-Ponpon soupira. <br>— Vous- Vous avez vu ! <br>— Oui, le billet s'est envolé. <br>Ponpon se laissa glisser le long du lampadaire avant de s'allonger au sol. <br>— Tu vas bien ? <br>La dame qui juste avant vouvoyait Ponpon, à comme par instinct commencé à la
-tutoyer. <br>— C'était l'argent pour HérissonLand... <br>La dame commença à fouiller dans son sac et sortit son porte feuille. <br>— Je peux te donner... <br>Elle regarda dans son portefeuille et sortit un billet qu'elle tendit à Ponpon. <br>— 10€ si tu veux. <br>— Ehhh... c'est gentil mais je sais pas si je peux accepter. <br>— T'inquiètes pas. Tu me remboursera plus tard. <br>— Heu... ok. <br>Ponpon prit le billet, n'ayant toute fois pas l'air très à l'aise d'accépter de
-l'argent. <br>— Merci madame. <br>La dame rengea son portefeuille. <br>— Tu peux m'appeler Amélie. <br>Ponpon se corrigea. <br>— Merci Amélie. <br>— De rien. <br>Amélie reprit son chemin. <br>— Au revoir, lui dit Ponpon. <br>Amélie se retourna et sourit. <br>— Au revoir !
-</p>
-<p>Ponpon revînt chez elle les bras chargés. Elle avait pris la gamelle qu'elle
-comptait prendre initialement, mais elle s'est également laissé tenter par un
-jouet qui couine et une nouvelle couverture pour Raymond. <br>— T'as acheté tout ça juste avec 5€, demanda la mère de Ponpon qui lisait un
-livre sur le canapé avant l'arrivée de Ponpon. <br>— Nan nan nan ! C'est une dame qui m'a donné de l'argent. <br>— De l'argent ? Pourquoi ? <br>— Oui, mon billet s'est envolé et j'ai pas réussi à le récupérer, du coup elle
-m'a donné de 10€. <br>— Ok. Heureusement qu'elle t'a donné que 10€. <br>— Ah ? Pourquoi, demanda Ponpon en examinant avec sa main libre la gamelle
-qu'elle venait d'acheter. <br>— Je dois vraiment te rappeler la dernière fois que je t'ai laissé gérer un
-budget ? <br>— Tu parles de quand tu m'as laissé faire les courses et que je suis revenue
-avec des *Kinder Bueno* ? <br>— Précisément. <br>— Mais c'était y a lonnngtemps ça ! <br>— Ponpon... tu es revenue avec 50€ de *Kinder Bueno*. <br>— Mais c'est pas ma faute ! C'est trop bon aussiii ! <br></p>
-<p>La mère de Ponpon roula des yeux mais tout de même avec un sourir sur son visage
-avant de retourner à son livre. Ponpon elle partit dans sa chambre pour montrer
-toutes les belles choses qu'elle avait prit pour Raymond le hérisson.
-</p>
-<p>Elle installa la couverture à côté de Raymond qui posé dans son ancienne
-couverture. Ou du moins ce que Ponpon aurait voulu être son ancienne couverture,
-car Raymond n'avait pas l'air décidé à bouger de la couverture auquelle il avait
-été habitué pendant si longtemps. <br>— Aller grosse patate ! Faut aller sur l'autre, dit Ponpon accroupie devant
-Raymond, pointant la nouvelle couverture.
-</p>
-<p>Mais Raymond ne céda pas. Ponpon se relevé, comprenant que c'était peine perdue
-et s'allongea sur son lit derrière elle.
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
+++ /dev/null
-const std = @import("std");
-const jetzig = @import("jetzig");
-
-pub const layout = "main";
-
-pub fn index(request: *jetzig.Request, _: *jetzig.Data) !jetzig.View {
- return request.render(.ok);
-}
const std = @import("std");
-const builtin = @import("builtin");
-const jetzig = @import("jetzig");
-const zmd = @import("zmd");
+var allocator: std.mem.Allocator = undefined;
-pub const routes = @import("routes");
-pub const static = @import("static");
-
-const markdownToHtml = @import("md_to_html.zig").markdownToHtml;
-
-// Override default settings in `jetzig.config` here:
-pub const jetzig_options = struct {
- /// Middleware chain. Add any custom middleware here, or use middleware provided in
- /// `jetzig.middleware` (e.g. `jetzig.middleware.HtmxMiddleware`).
- pub const middleware: []const type = &.{
- // jetzig.middleware.HtmxMiddleware,
- // jetzig.middleware.CompressionMiddleware,
- // @import("app/middleware/DemoMiddleware.zig"),
- };
-
- // Maximum bytes to allow in request body.
- pub const max_bytes_request_body: usize = std.math.pow(usize, 2, 16);
-
- // Maximum filesize for `public/` content.
- pub const max_bytes_public_content: usize = std.math.pow(usize, 2, 20);
-
- // Maximum filesize for `static/` content (applies only to apps using `jetzig.http.StaticRequest`).
- pub const max_bytes_static_content: usize = std.math.pow(usize, 2, 18);
-
- // Maximum length of a header name. There is no limit imposed by the HTTP specification but
- // AWS load balancers reference 40 as a limit so we use that as a baseline:
- // https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_HttpHeaderConditionConfig.html
- // This can be increased if needed.
- pub const max_bytes_header_name: u16 = 40;
-
- /// Maximum number of `multipart/form-data`-encoded fields to accept per request.
- pub const max_multipart_form_fields: usize = 20;
-
- // Log message buffer size. Log messages exceeding this size spill to heap with degraded
- // performance. Log messages should aim to fit in the message buffer.
- pub const log_message_buffer_len: usize = 4096;
-
- // Maximum log pool size. When a log buffer is no longer required it is returned to a pool
- // for recycling. When logging i/o is slow, a high volume of requests will result in this
- // pool growing. When the pool size reaches the maximum value defined here, log events are
- // freed instead of recycled.
- pub const max_log_pool_len: usize = 256;
-
- // Number of request threads. Defaults to number of detected CPUs.
- pub const thread_count: ?u16 = null;
-
- // Number of response worker threads.
- pub const worker_count: u16 = 4;
-
- // Total number of connections managed by worker threads.
- pub const max_connections: u16 = 512;
-
- // Per-thread stack memory to use before spilling into request arena (possibly with allocations).
- pub const buffer_size: usize = 64 * 1024;
-
- // The size of each item in the available memory pool used by requests for rendering.
- // Total retained allocation: `worker_count * max_connections`.
- pub const arena_size: usize = 1024 * 1024;
-
- // Path relative to cwd() to serve public content from. Symlinks are not followed.
- pub const public_content_path = "public";
-
- // HTTP buffer. Must be large enough to store all headers. This should typically not be modified.
- pub const http_buffer_size: usize = std.math.pow(usize, 2, 16);
-
- // The number of worker threads to spawn on startup for processing Jobs (NOT the number of
- // HTTP server worker threads).
- pub const job_worker_threads: usize = 4;
-
- // Duration before looking for more Jobs when the queue is found to be empty, in
- // milliseconds.
- pub const job_worker_sleep_interval_ms: usize = 10;
-
- /// Key-value store options. Set backend to `.file` to use a file-based store.
- /// When using `.file` backend, you must also set `.file_options`.
- /// The key-value store is exposed as `request.store` in views and is also available in as
- /// `env.store` in all jobs/mailers.
- pub const store: jetzig.kv.Store.KVOptions = .{
- .backend = .memory,
- // .backend = .file,
- // .file_options = .{
- // .path = "/path/to/jetkv-store.db",
- // .truncate = false, // Set to `true` to clear the store on each server launch.
- // .address_space_size = jetzig.jetkv.JetKV.FileBackend.addressSpace(4096),
- // },
- };
-
- /// Job queue options. Identical to `store` options, but allows using different
- /// backends (e.g. `.memory` for key-value store, `.file` for jobs queue.
- /// The job queue is managed internally by Jetzig.
- pub const job_queue: jetzig.kv.Store.KVOptions = .{
- .backend = .memory,
- // .backend = .file,
- // .file_options = .{
- // .path = "/path/to/jetkv-queue.db",
- // .truncate = false, // Set to `true` to clear the store on each server launch.
- // .address_space_size = jetzig.jetkv.JetKV.FileBackend.addressSpace(4096),
- // },
- };
-
- /// Cache options. Identical to `store` options, but allows using different
- /// backends (e.g. `.memory` for key-value store, `.file` for cache.
- pub const cache: jetzig.kv.Store.KVOptions = .{
- .backend = .memory,
- // .backend = .file,
- // .file_options = .{
- // .path = "/path/to/jetkv-cache.db",
- // .truncate = false, // Set to `true` to clear the store on each server launch.
- // .address_space_size = jetzig.jetkv.JetKV.FileBackend.addressSpace(4096),
- // },
- };
-
- /// SMTP configuration for Jetzig Mail. It is recommended to use a local SMTP relay,
- /// e.g.: https://github.com/juanluisbaptiste/docker-postfix
- // pub const smtp: jetzig.mail.SMTPConfig = .{
- // .port = 25,
- // .encryption = .none, // .insecure, .none, .tls, .start_tls
- // .host = "localhost",
- // .username = null,
- // .password = null,
- // };
-
- /// Force email delivery in development mode (instead of printing email body to logger).
- pub const force_development_email_delivery = false;
-
- // Set custom fragments for rendering markdown templates. Any values will fall back to
- // defaults provided by Zmd (https://github.com/jetzig-framework/zmd/blob/main/src/zmd/html.zig).
- pub const markdown_fragments = struct {
- pub const root = .{
- "<div class='p-5'>",
- "</div>",
- };
- pub const h1 = .{
- "<h1 class='text-2xl mb-3 text-green font-bold'>",
- "</h1>",
- };
- pub const h2 = .{
- "<h2 class='text-xl mb-3 font-bold'>",
- "</h2>",
- };
- pub const h3 = .{
- "<h3 class='text-lg mb-3 font-bold'>",
- "</h3>",
- };
- pub const paragraph = .{
- "<p class='p-3'>",
- "</p>",
- };
- pub const code = .{
- "<span class='font-mono bg-gray-900 p-2 text-white'>",
- "</span>",
- };
-
- pub const unordered_list = .{
- "<ul class='list-disc ms-8 leading-8'>",
- "</ul>",
- };
-
- pub const ordered_list = .{
- "<ul class='list-decimal ms-8 leading-8'>",
- "</ul>",
- };
-
- pub fn block(allocator: std.mem.Allocator, node: zmd.Node) ![]const u8 {
- return try std.fmt.allocPrint(allocator,
- \\<pre class="w-1/2 font-mono mt-4 ms-3 bg-gray-900 p-2 text-white"><code class="language-{?s}">{s}</code></pre>
- , .{ node.meta, node.content });
- }
-
- pub fn link(allocator: std.mem.Allocator, node: zmd.Node) ![]const u8 {
- return try std.fmt.allocPrint(allocator,
- \\<a class="underline decoration-sky-500" href="{0s}" title={1s}>{1s}</a>
- , .{ node.href.?, node.title.? });
- }
- };
-};
+fn handleClient(connection: std.net.Server.Connection) !void {
+ //
+}
-pub fn init(app: *jetzig.App) !void {
- _ = app;
- // Example custom route:
- // app.route(.GET, "/custom/:id/foo/bar", @import("app/views/custom/foo.zig"), .bar);
+fn handleClientThread(connection: std.net.Server.Connection) void {
+ handleClient(connection) catch {};
}
pub fn main() !void {
- var gpa = std.heap.GeneralPurposeAllocator(.{}){};
- const allocator = if (builtin.mode == .Debug) gpa.allocator() else std.heap.c_allocator;
- defer if (builtin.mode == .Debug) std.debug.assert(gpa.deinit() == .ok);
-
- const markdowns = .{
- "app/views/books/le-monde-de-ponpon/chapter-1/",
- "app/views/books/le-monde-de-ponpon/chapter-2/",
- "app/views/books/le-monde-de-ponpon/chapter-3/",
-
- "app/views/books/le-monde-de-ponpon/chapter-1-v1/",
- };
+ var buffer: [32_768]u8 = undefined;
+ var fixed_allocator = std.heap.FixedBufferAllocator.init(&buffer);
- inline for (markdowns) |markdown| {
- const content = @embedFile(markdown ++ "content.md");
+ allocator = fixed_allocator.allocator();
- var html_content = std.ArrayList(u8).init(allocator);
- defer html_content.deinit();
+ const server_addr = try std.net.Address.parseIp4(&.{ 0, 0, 0, 0 }, 3000);
- const html_content_writer = html_content.writer();
+ var server = try server_addr.listen(.{});
+ defer server.deinit();
- var content_stream = std.io.fixedBufferStream(content);
- const content_reader = content_stream.reader();
+ while (true) {
+ const connection = try server.accept();
- try markdownToHtml(html_content_writer.any(), content_reader.any());
-
- const file = try std.fs.cwd().createFile("src/" ++ markdown ++ "index.zmpl", .{});
- defer file.close();
-
- try file.writeAll(html_content.items);
+ std.Thread.spawn(.{}, handleClientThread, .{connection});
}
-
- var app = try jetzig.init(allocator);
- defer app.deinit();
-
- try app.start(routes, .{});
}