Spécifications et conception d'interface

App Programming - Jour 1

De l'idée à la maquette

Apprenez à spécifier, concevoir et planifier votre application

Quelles applications utilisez-vous chaque jour ?

Pensez aux applications que vous avez ouvertes ce matin...

📸

Instagram

Partager des photos, des stories, des reels

🚗

Uber

Réserver une course, suivre son chauffeur

🗺️

Google Maps

Se repérer, découvrir des lieux

🎵

Spotify

Écouter de la musique, des playlists

Toute application a commencé par une idée. Cette semaine, VOTRE idée devient une application.

Votre parcours en 5 jours

De zéro à une application qui fonctionne, en une semaine

1
Concevoir
Specs et UI
2
Construire
1re application web
3
Votre projet
Lancement
4
Développer
Dév. piloté par l'IA
5
Présenter
Journée de démo

Aujourd'hui : jour 1

  • Comprendre comment on construit une application
  • Rédiger des spécifications
  • Concevoir votre application dans Figma
  • Configurer GitHub

D'ici vendredi

  • Vous aurez construit une vraie application
  • Déployée en ligne, sur Internet
  • Vous la présenterez à la classe
  • Aucune expérience préalable requise !
Projet guidé : les jours 1 et 2, nous construisons tous ensemble la même application, StudyPlanner, un gestionnaire de tâches pour étudiants. Les jours 3 à 5, vous construisez votre propre projet !

Installer Antigravity

Votre terrain de jeu pour les exercices du jour

Antigravity est un environnement de programmation simple qui fonctionne dans votre navigateur. Vous l'utiliserez toute la journée pour faire de petits exercices et voir le code en action, sans rien installer.

Installation (5 min)

Ce que vous pouvez faire

  • Écrire du HTML, du CSS et du JavaScript
  • Voir le résultat immédiatement dans l'aperçu
  • Demander à l'IA de générer du code pour vous
  • Enregistrer et partager votre travail

Test rapide

Tapez ceci dans l'éditeur et cliquez sur « Run » (exécuter) :

<h1>Hello World!</h1>
<p>My name is [your name]</p>

Si « Hello World! » s'affiche dans l'aperçu, vous êtes prêt !

Gardez cet onglet ouvert ! Vous reviendrez plusieurs fois sur Antigravity pendant le cours pour de petits exercices « À vous de jouer ! ».

Le navigateur : votre fenêtre sur le Web

Vous en utilisez un tous les jours : voyons comment il fonctionne

Un navigateur est un programme de votre ordinateur ou de votre téléphone qui permet de consulter des sites web. Chrome, Safari, Firefox et Edge sont des navigateurs. En ce moment même, vous regardez cette présentation dans un navigateur.

Votre ordinateur Navigateur (Chrome) ① Requête Le réseau Internet Serveur Un ordinateur distant qui héberge le site web ② Réponse : renvoie HTML, CSS, JS, images → le navigateur affiche la page

Qu'est-ce qu'une URL ?

L'adresse que vous tapez pour consulter un site web. Comme une adresse postale, mais pour Internet : https://www.google.com, https://github.com.

À vous de jouer ! (2 min)

Qu'est-ce qu'une application ?

Un logiciel qui résout un problème pour ses utilisateurs

Site web ou application web : quelle différence ?

Un site web vous présente des informations (comme un journal). Une application web vous permet de faire des choses : créer, modifier, organiser, partager. Gmail est une application web (vous rédigez des e-mails). Wikipédia est un site web (vous lisez des articles).

Applications web

Elles fonctionnent dans votre navigateur, sans installation

Exemples : Gmail, Notion, Google Docs, Netflix

Applications natives

Installées depuis l'App Store ou le Play Store

Exemples : WhatsApp, Instagram, TikTok

Applications hybrides

Des technologies web dans une enveloppe native

Exemples : Uber, Airbnb, Discord

À vous de jouer ! (3 min)

Prenez votre téléphone. Choisissez 3 applications. Pour chacune, déterminez :

Anatomie d'une application

Toute application comporte trois couches

👤 Utilisateur Front-end Ce que voit l'utilisateur Bouton 🍽️ La salle du restaurant HTML + CSS + JavaScript Back-end Le cerveau et la logique ⚙️ 🔧 ⚙️ 👨‍🍳 La cuisine Python, Java, Node.js Base de données La mémoire utilisateurs, tâches, réglages... 🏪 Le garde-manger SQL, JSON, MongoDB

À vous de jouer ! (2 min)

Pensez à Instagram. Savez-vous identifier chaque couche ?

Comment on construit une application

Le code n'est que l'étape 4 sur 6 !

1
Idée
Quel problème ?
2
Specs
Quelles fonctionnalités ?
3
Conception
À quoi ça ressemble ?
4
Construction
Écrire le code
5
Test
Ça marche ?
6
Déploiement
En ligne !
Surprise ! Les développeurs professionnels passent plus de temps sur les étapes 1 à 3 (la planification) que sur l'étape 4 (le code). Une bonne planification, c'est moins de bugs, moins de travail à refaire et des résultats plus rapides.

Aujourd'hui, nous nous concentrons sur les étapes 1, 2 et 3

L'idée, les spécifications et la conception. Demain, on code !

Que sont les spécifications ?

Le plan avant la construction

Définition

Une spécification (ou « spec ») est une description détaillée de ce que votre application doit faire, de son public et de son comportement. Elle répond à la question : « Que construisons-nous, et pourquoi ? »

Sans specs

  • Chacun imagine quelque chose de différent
  • Changements permanents et confusion
  • Fonctionnalités oubliées, découvertes trop tard
  • Temps et argent perdus

Avec des specs

  • Tout le monde s'accorde sur ce qu'il faut construire
  • Une liste claire des fonctionnalités
  • Les problèmes sont repérés tôt (sur le papier !)
  • Développement plus rapide, moins de surprises

Vous ne construiriez jamais une maison sans plans. Pourquoi construire une application sans spécifications ?

User stories

Décrire les fonctionnalités du point de vue de l'utilisateur

En tant que [type d'utilisateur], je veux [réaliser une action], afin de [obtenir un bénéfice].

Le format d'une user story

StudyPlanner, story 1

En tant qu'étudiant, je veux créer des tâches avec une date d'échéance, afin de suivre mes devoirs.

StudyPlanner, story 2

En tant qu'étudiant, je veux marquer des tâches comme terminées, afin de voir ma progression.

StudyPlanner, story 3

En tant qu'étudiant, je veux filtrer les tâches par matière, afin de me concentrer sur un cours à la fois.

Pourquoi des user stories ? Elles vous gardent centré sur de vraies personnes et de vrais besoins, pas sur des fonctionnalités séduisantes que personne n'a demandées.

À vous de jouer ! (3 min)

Pensez à Spotify. Rédigez 2 user stories en suivant le format ci-dessus :

Bonnes et mauvaises spécifications

Tout est dans la précision

Mauvaises spécifications

  • « L'application doit être sympa »
  • « Les utilisateurs peuvent faire des trucs avec les tâches »
  • « Ça doit marcher sur téléphone »
  • « Il faut que ce soit rapide »
  • « Ajouter des fonctions sociales »

Problème : vagues, impossibles à mesurer, sujettes à interprétation

Bonnes spécifications

  • « Les étudiants peuvent créer des tâches avec un titre, une date d'échéance et un niveau de priorité »
  • « Chaque tâche affiche une case à cocher pour la marquer comme terminée »
  • « Les tâches sont triées par date d'échéance, la plus proche en premier »
  • « Les étudiants peuvent filtrer les tâches par matière (maths, anglais, etc.) »
  • « Le tableau de bord affiche des statistiques d'avancement »

Atout : précises, testables, sans ambiguïté

Testez votre spec : peut-on cocher une case « fait » ou « pas fait » ? Si oui, c'est une bonne spec. Sinon, rendez-la plus précise.

Qu'est-ce que l'UI/UX ?

Les deux faces d'une même pièce

UI : interface utilisateur

L'apparence de l'application

  • Couleurs, polices, icônes
  • Forme et taille des boutons
  • Mise en page et espacements
  • Cohérence visuelle

« Est-ce que je le vois clairement ? »

UX : expérience utilisateur

Le ressenti à l'usage

  • Est-ce facile de s'y repérer ?
  • Est-ce que je trouve ce que je cherche ?
  • Est-ce que ça réagit vite ?
  • Le parcours est-il logique ?

« Est-ce que je l'utilise facilement ? »

L'analogie de la porte

Une superbe porte vitrée sans poignée = UI réussie, UX désastreuse. Une porte banale qui s'ouvre sans effort = UI simple, excellente UX. Les meilleures applications réussissent les deux.

4 principes de conception pour débutants

Suivez ces règles et votre application aura l'air professionnelle

1

Cohérence
Mêmes couleurs, mêmes polices et mêmes styles de boutons partout. L'utilisateur ne doit jamais se sentir « perdu ».

2

Simplicité
Supprimez tout le superflu. Si un écran paraît encombré, retirez des éléments jusqu'à ce qu'il soit clair.

3

Hiérarchie visuelle
L'élément le plus important doit être le plus grand et le plus marqué. Guidez naturellement le regard de l'utilisateur.

4

Retour visuel
Quand l'utilisateur clique sur un bouton, quelque chose doit se passer à l'écran. Ne le laissez jamais se demander « est-ce que ça a marché ? ».

Stitch AI

Générer des maquettes d'application à partir d'une description

Stitch est un outil de conception gratuit, fondé sur l'IA, proposé par Google. Vous décrivez ce que vous voulez en langage courant, et il génère en quelques secondes des écrans d'aspect professionnel. Aucune compétence en design n'est nécessaire.

①

Décrire

Dites à Stitch ce que vous voulez : « Une application de planning pour étudiants avec une liste de tâches, des cases à cocher, des dates d'échéance et des étiquettes de priorité »

②

Générer

Stitch crée une maquette professionnelle en quelques secondes. Il s'occupe pour vous de la mise en page, des espacements et de la hiérarchie visuelle.

③

Exporter

Téléchargez les écrans générés sous forme d'images. Vous les importerez dans Figma pour les affiner.

Rendez-vous sur : stitch.withgoogle.com, puis connectez-vous avec votre compte Google pour commencer.

Démo : concevoir avec Stitch

Regardez la démonstration de l'enseignant, puis essayez vous-même

Démo en direct

Suivez pas à pas :

Prompts StudyPlanner à essayer

« Une page de liste de tâches épurée pour une application de planning étudiant,
conçue d'abord pour le mobile, avec des cases à cocher, des titres de tâches,
des dates d'échéance et des étiquettes de priorité en couleur. »

« Un formulaire de création de tâche avec des champs pour le titre,
la date d'échéance, une liste déroulante de matières et un sélecteur
de niveau de priorité. Style moderne et minimaliste. »

« Un tableau de bord montrant les échéances à venir, des statistiques
d'avancement des tâches et un bouton d'ajout rapide.
Design blanc et épuré, avec des touches de bleu. »

De Stitch à Figma

Importez vos maquettes générées par l'IA et affinez-les

Figma est un outil de conception gratuit, qui fonctionne dans le navigateur, utilisé par les designers professionnels de Google, Microsoft, Uber et Airbnb. Vous y importerez vos écrans Stitch AI pour les affiner, les personnaliser et les partager.

①

Créer

Inscrivez-vous sur figma.com (gratuit) et créez un nouveau fichier de design

②

Importer

Glissez-déposez vos exports Stitch dans Figma comme point de départ

③

Affiner

Ajustez les couleurs, les textes et la mise en page. Ajoutez les éléments manquants, corrigez les détails, appropriez-vous la maquette.

④

Partager

Générez un lien de partage pour que votre enseignant et vos coéquipiers puissent voir vos maquettes

Rendez-vous sur : figma.com et créez un compte gratuit si ce n'est pas déjà fait.

Les notions clés de Figma

Les quatre briques de base à connaître

Frames (cadres)

La « toile » de chaque écran de votre application. Voyez les frames comme des pages ou des écrans distincts.

Pour commencer : un frame iPhone 14 ou Desktop

Components (composants)

Des éléments réutilisables : boutons, cartes, barres de navigation. Modifiez-en un, et toutes les copies se mettent à jour.

Comme des modèles pour les éléments répétés

Text (texte)

Ajoutez des titres, des paragraphes, des libellés. Choisissez polices, tailles et graisses pour créer une hiérarchie.

Conseil : limitez-vous à 2 ou 3 tailles de police

Layers (calques)

Les éléments s'empilent les uns sur les autres. Le panneau des calques montre leur ordre et vous permet de les organiser.

Comme des feuilles de papier transparent

Fichiers et dossiers sur votre ordinateur

Les briques de base de tout projet

Tout ce qui se trouve sur votre ordinateur est enregistré sous forme de fichiers rangés dans des dossiers. Une photo, un document Word, une chanson, une page web : ce sont tous des fichiers. Les dossiers organisent les fichiers, comme les tiroirs d'un classeur.

Qu'est-ce qu'un fichier ?

Un fichier est un document unique enregistré sur votre ordinateur. Chaque fichier a un nom et une extension (la partie après le point) qui indique à l'ordinateur de quel type il s'agit.

  • report.docx → document Word
  • photo.jpg → image
  • song.mp3 → audio
  • index.html → page web
  • style.css → règles de mise en forme

Qu'est-ce qu'un dossier ?

Un dossier est un conteneur qui regroupe des fichiers et d'autres dossiers. Les dossiers peuvent s'imbriquer les uns dans les autres et former une arborescence.

Documents/
├── School/
│   ├── essay.docx
│   └── notes.pdf
├── Photos/
│   └── vacation.jpg
└── Music/
    └── playlist.mp3

À vous de jouer ! (2 min)

Ouvrez l'Explorateur de fichiers (Windows) ou le Finder (Mac) de votre ordinateur.

Qu'est-ce que le code ?

Des instructions écrites dans un langage que l'ordinateur comprend

Le code est un texte qui dit exactement à l'ordinateur quoi faire, comme une recette indique au cuisinier comment préparer un plat. Il s'écrit dans des fichiers texte brut (ni Word, ni PDF : du texte brut, tout simplement), dans un langage de programmation.

①

Vous écrivez des instructions

« Affiche un bouton bleu avec le texte Se connecter »

②

L'ordinateur les lit

Le navigateur interprète le code ligne par ligne

③

Le résultat s'affiche

Un bouton bleu « Se connecter » apparaît à l'écran

Bonne nouvelle : dans ce cours, vous n'écrirez pas de code à la main. Un assistant IA appelé Antigravity l'écrira pour vous à partir de vos instructions en langage courant. Mais il vous faut comprendre ce qu'est le code pour piloter votre projet.

À vous de jouer ! (2 min)

Les langages de programmation

À chaque tâche son langage

Comme les humains parlent français, anglais ou espagnol, les ordinateurs comprennent différents langages de programmation. Chacun excelle dans une tâche précise. Pour une application web, il en faut trois :

HTML : la structure

Définit ce qu'il y a sur la page : titres, paragraphes, boutons, images, liens. C'est le squelette de votre page.

<h1>Welcome</h1>
<p>This is my app.</p>
<button>Sign In</button>

CSS : le design

Contrôle l'apparence : couleurs, polices, espacements, mise en page. Ce sont les vêtements et le maquillage.

button {
  background: blue;
  color: white;
  padding: 10px 20px;
}

JavaScript : le comportement

Fait se passer des choses : cliquer sur un bouton, afficher un message, charger des données. C'est le cerveau et les muscles.

button.onclick = function() {
  alert("Hello!");
}
Inutile de mémoriser tout cela. C'est seulement pour que ces mots ne vous fassent pas peur quand vous les verrez demain. Antigravity écrira tout pour vous.

À vous de jouer ! (3 min)

Dans Antigravity, collez ce HTML et cliquez sur « Run » pour voir votre première page web :

<h1>My Study Planner</h1>
<p>Welcome to my app!</p>
<button>Add Task</button>

Vibe coding : laissez l'IA écrire le code pour vous

La nouvelle façon de créer des logiciels : en décrivant ce que vous voulez

Le vibe coding consiste à décrire ce que vous voulez en langage courant et à laisser un assistant IA générer le code pour vous. Au lieu d'apprendre à écrire du code vous-même, vous apprenez à communiquer clairement avec une IA.

Vos mots deviennent du code.

Programmation traditionnelle

Vous apprenez un langage de programmation (des mois, des années), tapez chaque caractère à la main, corrigez les erreurs vous-même. Puissant, mais très long à démarrer.

Vibe coding (cette semaine !)

Vous décrivez ce que vous voulez en français, l'IA génère le code, vous relisez et affinez. Vous devenez le chef de projet, l'IA est le développeur.

Qu'est-ce que le prompt engineering ?

L'art de rédiger des instructions claires et précises pour une IA. Meilleur est votre prompt, meilleur est le résultat. C'est LA compétence que vous travaillerez cette semaine. Un peu comme un bon manager : des consignes vagues donnent des résultats vagues.

Bons et mauvais prompts

La qualité de vos instructions détermine la qualité du code

Mauvais prompts

  • « Fais-moi une appli »
  • « Ajoute une page »
  • « Rends ça joli »
  • « Corrige le bug »

Problème : trop vague. L'IA doit deviner ce que vous voulez.

Bons prompts

  • « Crée une page de liste de tâches avec un titre, une liste de tâches affichant le titre et la date d'échéance, et un bouton d'ajout »
  • « Le bouton doit être bleu (#3B82F6), avec des coins arrondis, et afficher "Ajouter une tâche" »

Atout : précis, détaillé, visuel.

À vous de jouer ! (3 min)

Rédigez un prompt demandant à une IA de créer la page d'accueil de l'application de vos rêves. Soyez aussi précis que possible sur les couleurs, la mise en page et les fonctionnalités. Montrez-le à votre voisin : arrive-t-il à visualiser exactement ce que vous avez décrit ?

Qu'est-ce qu'un projet logiciel ?

Tous les fichiers de votre application, rangés dans un seul dossier

Un projet = un dossier

Un projet logiciel, c'est simplement un dossier sur votre ordinateur qui contient tous les fichiers dont votre application a besoin pour fonctionner :

  • Fichiers HTML (structure)
  • Fichiers CSS (design)
  • Fichiers JavaScript (comportement)
  • Images, icônes, polices
  • Fichiers de configuration

Un projet de débutant typique : 10 à 30 fichiers.

Exemple de projet

study-planner/
├── src/
│   ├── app/
│   │   ├── page.tsx      (page d'accueil)
│   │   ├── tasks/
│   │   │   └── page.tsx  (page des tâches)
│   │   └── layout.tsx    (mise en page commune)
│   └── styles/
│       └── globals.css   (design)
├── public/
│   └── logo.png          (images)
├── data/
│   └── tasks.json        (données)
└── package.json          (config)
Notion clé : quand quelqu'un dit « montre-moi ton projet », il veut dire « montre-moi ce dossier ». Quand on le met sur GitHub, on envoie ce dossier en entier.

À vous de jouer ! (2 min)

Qu'est-ce que « le cloud » ?

C'est simplement l'ordinateur de quelqu'un d'autre

💻 Votre ordinateur Fichiers visibles par vous seul Panne = tout est perdu ⚠️ 📦 GitHub Stocke votre code en ligne 🚀 Vercel Fait tourner votre appli pour tous Le monde entier 👩 👨 👩‍💻 📱 Visite l'URL de votre appli depuis n'importe quel navigateur déploie
Cette semaine : vous faites un push de votre code sur GitHub (sauvegarde et partage) → Vercel le lit et déploie votre application → n'importe qui peut la consulter grâce à une URL.

À vous de jouer ! (2 min)

Vous utilisez déjà « le cloud » tous les jours ! Citez 3 services cloud que vous utilisez :

Le problème de la gestion du code

Pourquoi les projets de code exigent des outils spécifiques

Imaginez que vous rédigez une dissertation dans Word. Simple : un fichier, une personne, on enregistre et c'est fini. Maintenant, imaginez :

Plus de 30 fichiers

Votre projet compte des dizaines de fichiers qui dépendent tous les uns des autres. Modifiez-en un, et d'autres peuvent casser.

Plusieurs personnes

Trois coéquipiers modifient les mêmes fichiers en même temps. Comment fusionner le travail de chacun ?

« Ça marchait hier »

Vous avez fait 10 modifications aujourd'hui et quelque chose a cassé. Laquelle a causé le bug ? Comment revenir en arrière ?

Pas de Ctrl+Z

Ctrl+Z ne fonctionne que dans un seul fichier, pendant une seule session. Or il vous faut annuler des modifications faites il y a 3 jours dans 5 fichiers.

C'est pour cela qu'on a inventé la gestion de versions. Elle résout tous ces problèmes.

Qu'est-ce que la gestion de versions ?

Une machine à remonter le temps pour votre projet

Elle enregistre des instantanés de tout votre projet aux moments clés, pour que vous puissiez toujours revenir en arrière.

v1 Créer le projet Lun. 9 h v2 Ajouter l'accueil Lun. 14 h v3 Ajouter les tâches Mar. 10 h v4 Oups, tout est cassé ! 🐛 Mar. 15 h Retour à la v3 ! ✓ v5 Corriger et continuer Mar. 16 h Chaque cercle est un commit = un instantané enregistré de tout votre projet
✦

Historique

Voyez chaque modification jamais faite : quoi, quand et par qui

✦

Annulation

Revenez instantanément à n'importe quelle version précédente

✦

Collaboration

Plusieurs personnes travaillent ensemble sans conflit

À vous de jouer ! (2 min)

Repensez à une fois où vous auriez aimé pouvoir « annuler » quelque chose sur votre ordinateur :

Git et GitHub

Deux choses différentes qui fonctionnent ensemble

Git

Un outil installé sur votre ordinateur

  • Suit chaque modification de chaque fichier
  • Fonctionne hors ligne, en local sur votre machine
  • Enregistre des « instantanés » de votre projet appelés commits
  • Gratuit, créé par l'inventeur de Linux

En résumé : votre machine personnelle à remonter le temps pour vos fichiers

GitHub

Un site web pour stocker et partager votre code

  • Stocke votre projet dans le cloud (sauvegarde en ligne)
  • Permet à d'autres de le consulter, de le relire et d'y contribuer
  • Héberge votre projet en public ou en privé
  • Utilisé par plus de 100 millions de développeurs et par toutes les grandes entreprises

En résumé : Google Drive, mais conçu pour les projets de code

Analogie : Git, c'est comme cliquer sur « Enregistrer » sur votre ordinateur. GitHub, c'est comme envoyer cet enregistrement sur Google Drive pour qu'il soit sauvegardé en ligne et que vous puissiez le partager.

Qu'est-ce que l'open source ?

Pourquoi tant d'outils sont gratuits (et pourquoi GitHub existe)

Open source signifie que le code est public : chacun peut le lire, l'utiliser, le modifier et le partager, gratuitement. Il est construit par des communautés de bénévoles et d'entreprises convaincus que le logiciel doit être accessible à tous.

Les outils open source que nous utilisons

  • Git : gestion de versions (gratuit pour toujours)
  • Next.js : notre framework d'application (par Vercel)
  • Node.js : exécute du JavaScript en dehors du navigateur
  • Linux : fait tourner la plupart des serveurs d'Internet

En quoi est-ce important ?

  • Vous pouvez créer une application complète avec 0 € de logiciels
  • GitHub est le lieu où vivent les projets open source
  • Les entreprises recrutent des personnes qui contribuent à l'open source
  • Votre profil GitHub est votre portfolio de développeur

À vous de jouer ! (2 min)

Créer un compte GitHub

Votre premier pas dans le monde des développeurs

Pratique : créez votre compte GitHub

Suivez ces étapes pour commencer :

Conseil : choisissez un nom d'utilisateur professionnel, car vos futurs employeurs regarderont votre profil GitHub. Utilisez votre nom ou un pseudo sobre, pas « xXgamer2007Xx ».

Qu'est-ce qu'un dépôt ?

La maison de votre projet sur GitHub

Dépôt = dossier du projet

Un dépôt (repository, ou « repo ») est un dossier qui contient tous les fichiers d'un projet, ainsi que l'historique complet de toutes les modifications. Voyez-le comme un dossier intelligent qui se souvient de tout.

Un dépôt contient

  • Vos fichiers de code (HTML, CSS, JS...)
  • Un fichier README (description du projet)
  • L'historique de toutes les modifications
  • Des issues (tâches à faire et bugs)

Exemple de structure de dépôt

my-awesome-app/
├── index.html      (page principale)
├── style.css       (design)
├── script.js       (interactivité)
├── images/
│   └── logo.png
└── README.md       (description)

Créer votre premier dépôt

Faisons-le ensemble

Pratique : créez votre premier dépôt

Suivez l'enseignant pas à pas :

Félicitations ! Vous avez maintenant un projet sur GitHub. Vous faites officiellement partie de la communauté des développeurs.

Les issues GitHub

La liste de tâches de votre projet

3 ouvertes 2 fermées Ajouter une barre de navigation à l'accueil feature #1 ouverte il y a 2 heures par vous Le bouton de connexion ne marche pas sur mobile bug #2 ouverte il y a 1 heure par vous Ajouter un mode sombre nice-to-have #3 ouverte il y a 30 minutes par vous

Chaque issue peut être attribuée à quelqu'un, recevoir une étiquette (bug, feature, nice-to-have) et être fermée une fois terminée. C'est la liste de tâches de votre projet.

Conseil de pro : les équipes professionnelles créent une issue pour chaque tâche, sans exception. Pas d'issue, pas de travail.

De la maquette aux issues

Transformez vos écrans Figma en issues GitHub concrètes

Écran Figma

Vous avez conçu une page de connexion avec :

  • Un champ de saisie de l'e-mail
  • Un champ de saisie du mot de passe
  • Un bouton bleu « Se connecter »
  • Un lien vers la page d'inscription

Issues GitHub

Créez une issue par élément :

  • Issue n° 1 : créer la mise en page de la connexion
  • Issue n° 2 : ajouter la validation de l'e-mail
  • Issue n° 3 : styliser le bouton « Se connecter »
  • Issue n° 4 : lien vers l'inscription

Exemple d'issue

Titre : Créer la page de liste des tâches
Étiquette : feature

Description :
Construire la page de liste des tâches d'après la maquette Figma.

Critères d'acceptation :
- [ ] La page affiche une liste de tâches avec leur titre et leur date d'échéance
- [ ] Chaque tâche a une case à cocher pour la marquer comme terminée
- [ ] Les tâches sont triées par date d'échéance (la plus proche en premier)
- [ ] Un bouton « Ajouter une tâche » est visible en haut
Les critères d'acceptation sont une liste de conditions qui doivent être remplies pour que l'issue soit considérée comme « terminée ». Chaque critère doit être testable : on peut cocher la case, ou on ne peut pas. Les étiquettes (labels : feature, bug, ui, data) vous aident à classer vos issues.

Les livrables du jour

Ce que vous devez avoir à la fin de la journée

1

Compte GitHub
Créé et vérifié, avec un nom d'utilisateur professionnel

2

Dépôt + README
Le dépôt de votre projet, avec les specs et les user stories dans le README

3

Maquette Figma
Au moins 3 écrans conçus avec Stitch AI, puis affinés par vous

4

Au moins 5 issues GitHub
Des tâches tirées de votre maquette Figma, avec étiquettes et critères d'acceptation

Point d'étape : levez la main quand vous avez les 4 livrables. L'enseignant les relira et vous fera un retour avant votre départ.

À vous de pratiquer !

Appliquez tout ce que vous avez appris aujourd'hui

TP 1

Spécifications et conception d'interface

Ouvrir le TP →

6 exercices

GitHub, specs, Stitch AI, Figma, issues

4 à 5 heures

Tutoriel guidé pas à pas

Débutant

Aucune connaissance préalable requise

Idéation : votre propre projet d'application

Seulement une fois les diapositives et le TP ci-dessus terminés

Prérequis : vous devez avoir terminé le TP 1 et rendu les 4 livrables (compte GitHub, dépôt, maquette Figma, au moins 5 issues) avant de commencer cette activité.

1. Formez un binôme

Trouvez un partenaire. Vous travaillerez en binôme (équipe de 2) jusqu'à la fin de la semaine. Choisissez quelqu'un dont les forces complètent les vôtres : l'un sera peut-être plus créatif, l'autre plus organisé.

2. Choisissez une idée d'application

Ensemble, choisissez une idée d'application qui résout un vrai problème qui vous tient à cœur à tous les deux. Elle doit être assez simple pour être construite en 2 jours, mais assez utile pour faire l'objet d'une démo vendredi.

3. Commencez votre maquette Figma

Utilisez Stitch AI pour générer vos 3 premiers écrans, puis importez-les et affinez-les dans Figma. Posez-vous ces questions :

  • À quoi ressemble la page d'accueil ?
  • Quel est l'écran de la fonctionnalité principale ?
  • À quoi ressemble le formulaire de création / saisie ?

Des idées pour démarrer

Jour 1 terminé !

Ce que vous avez appris aujourd'hui

✓ Le fonctionnement des navigateurs, des URL et du Web
✓ Ce qu'est une application et comment on la construit
✓ Spécifications, user stories et UI/UX
✓ Concevoir avec Stitch AI et Figma
✓ Fichiers, dossiers, code et langages de programmation
✓ Le cloud, la gestion de versions et l'open source
✓ Git, GitHub, les dépôts et les issues

Demain, jour 2 : nous donnons vie à vos maquettes avec du vrai code ! Vous écrirez votre premier HTML, CSS et JavaScript, et verrez votre application tourner dans un navigateur.

Vue d'ensemble des diapositives