Swift pour du Front-End (ou comment remplacer php ou javascript

Je viens de finir la formation de Maxime sur Vapor et Swift pour gérer un Server Backend, et j’ai vraiment apprécier (comme d’habitude) ce cours qui ouvre de nouvelles perspectives…

cependant, dans l’optique de pouvoir gérer toute la chaine de creation en Swift, pour un site ou appli web, je n’ai pas trouvé de réponse au remplacement des (vieux) outils comme PHP, ou même javaScript (quelle horreur !).

Existe-t-il des solutions (framework, plateforme, …) qui permettrai de créer un site web interactif, avec du Swift et sans php non Javascript ?

Avez vous déjà trouver des solutions, mêmes expérimentale ?

1 « J'aime »

Salut @wakkanai ,

Si tu veux le faire avec Vapor, il y a le framework officiel qui s’appelle Leaf (https://github.com/vapor/leaf).

Par contre, ça ne remplace que le PHP, tu dois toujours utiliser le HTML, CSS et JavaScript.

Je te conseille le livre de Tibor (https://gumroad.com/l/practical-server-side-swift) pour apprendre à faire un site avec Vapor. En anglais par contre.

Tu as sont site est fait avec comme exemple : https://theswiftdev.com
Tu as aussi celui-là par contre, il a enlevé la mention JavaScript Free, donc je ne peux plus affirmer qu’il n’y a plus de JavaScript : https://www.swiftbysundell.com

Cool! Je suis ravi que le cours t’ai plu :slight_smile:

Effectivement la recommandation de @ThonyF est super, Vapor propose un moteur de génération de page en Swift. J’ai quand même l’impression qu’il n’est pas aussi mis en avant que le reste du projet et je n’ai pas vu beaucoup de doc à ce sujet d’ailleurs. Tu t’en sers @ThonyF ?

J’ai un projet de nouveau cours dans les cartons en rapport avec la création de sites web mais il est encore trop tôt pour vous en parler. Ma recommandation @wakkanai, serait que tu retardes la création de site web si tu le peux, en attendant que j’avance sur ce nouveau cours. Si c’est aussi bien que ce que je pense, ça vaudra le coup d’avoir attendu :wink:

@mbritto Utiliser c’est un grand mot, j’ai fait des tests de base, je n’ai pas poussé le truc plus loin.

Mais pour une grande majorité des cas, je pense, qu’il n’y aura pas avoir de soucis.

Bien sûr, il faut connaitre les langages Front End (HTML, CSS, JavaScript) et donc, remplacer le PHP par le Swift et connaitre la syntaxe de Leaf pour intégrer tout ça dans le HTML.

1 « J'aime »

Oui, c’est justement la partie compliquée à chaque fois, c’est pour ça que je n’ai pas poussé plus la partie Leaf. Je cherche une solution plus simple pour ceux qui n’ont pas envie d’apprendre tout ça. Rien que le CSS suffirait à décourager la plupart des développeurs motivés.

@mbritto c’est sur que ça fait des notions en plus à connaître.

Personnellement, je n’ai pas eu de soucis avec le HTML et le CSS. C’était plus compliqué avec le JavaScript.

1 « J'aime »

Et moi c’est l’inverse. A ce jour, je me considère toujours comme une chèvre en CSS :grin:
Je n’ai jamais vraiment pris le temps de m’y mettre mais le peu de temps que j’y ai passé ne m’a vraiment pas donné envie de continuer

Bonjour Anthony, et merci pour ces tuyaux.

je vais explorer ces pistes dès que j’aurai du temps.

  • SwyftbySundel : si j’ai bien tout compris, il a reussi a faire une Site web STATIQUE (par ex, un blog…) : interessant, mais mon besoin est d’avoir un site dynamique, interactif (webapp, ave des formulaires, boutons, etc …)
  • Leaf : j’essaie de l’installer sur un mini projet de test Vapor, mais j’échoue très vite:
    Doc trouvée là : Getting Started - Vapor Docs
    En fait dès que j’intègre dans mon package la ligne specifique pour Leaf, mon Scheme perd sa target (MyMac) et donc refuse même de builder …

.package(url: "https://github.com/vapor/leaf.git", from: "3.0.0"),

là je bloque… :frowning:

merci Maxime,
pour la Doc de Leaf j’ai trouvé ceci : https://docs.vapor.codes/3.0/leaf/getting-started/

Si tu as quelque chose en projet permettant la creation de site interactif, je suis impatient.
En attendant, je continue a chercher, tester, experimenter… C’est fun !
J’avais vraiment espérer au moins me dispenser de php et javaScript pour le moteur ( sachant qu’il sera toujours nécessaire de « mettre en forme » grace à html et du Css (même basic)

Ya pas photo, je préfère de loin coder des App iOS ou Mac.
L’aspect Web, c’est plus une obligation …

@mbritto Comme quoi tout le monde est différent !

@wakkanai Si tu utilises Vapor 4, il faut utiliser la version de Leaf 4.0.0-rc.1.4

Mais comme tu le vois, c’est encore une version en release, il y aura peut-être quelques changements.

Par contre, il n’y a pas encore de doc pour la v4, mais normalement tu peux suivre la v3 pour le début.

Sinon, tu peux regarder le lien suivant, c’est une introduction à Leaf en utilisant Vapor 4 : How to create your first website using Vapor 4 and Leaf? - The.Swift.Dev.

swiftbysundell, je ne sais pas, si il y est dynamique ou statique. Par contre theswiftdev le site de Tibor ou je t’ai mis le lien au-dessous pour l’introduction, il est bien dynamique. Pas pour les clients, mais il a fait une interface administrateur pour publier ses publications, avec des champs textes et des boutons pour envoyer.

PHP, tu peux l’éliminer, si tu utilises Vapor et Leaf. JavaScript étant un langage Front End, tu peux toujours l’utiliser.

EDIT : Si tu veux de l’aide, mais il faut parler anglais, il y a le chat Vapor sur Discord.

1 « J'aime »