Skip to content

Commit

Permalink
feat: add lessons description in README
Browse files Browse the repository at this point in the history
  • Loading branch information
guhur authored Aug 7, 2020
1 parent e9d73b7 commit 82dc650
Showing 1 changed file with 78 additions and 5 deletions.
83 changes: 78 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,80 @@
# Cours React
# Cours JavaScript, React et Firebase

## Cours 3: test driven development
Ce cours est constitué de 10 projets différents pour prendre en main React à partir d'un minimum de connaissances en JavaScript.
Chaque projet est hébergé sous un repo git différent. Ce repo centralise les notes de cours.

- button: gestion des événements, du CSS, des snapshots
- timer: gestion des timers
- map: mocker une dépendance
# Notation

Pour être noté·e, l'étudiant·e doit :

- [] fork-er le repo correspondant à un projet,
- [] modifier son contenu jusqu'à respecter chaque contrainte du cahier des charges,
- [] s'assurer que les tests passent,
- [] mettre son code en production avec Netlify (ou un service équivalent) et ajouter le badge netlify dans le README du projet,
- [] faire un pull-request de son fork vers le projet de base.

Un TP est noté sur 15/20. Pour obtenir 18/20, l'étudiant·e doit partir de zéro dans son code. Pour obtenir 20/20, l'étudiant·e doit proposer un projet différent qui valide le même contenu ; dans ce cas, l'étudiant·e est appelé·e à faire d'abord un pull-request sur ce repo avec son nouveau cahier des charges.

Chaque cours correspond à environ 2h de travail. L'ensemble du cours correspond donc à environ 30h.

# Partie 1 : les bases de React

## Cours 1 : rappel en JavaScript

Les objectifs de ce cours sont de revoir les bases de la programmation (variables, conditions, boucles, fonctions et classes) et de se familiariser avec la syntatxe ES6.

## Cours 2 : écrire son premier composant

[Cours](./cours/component.md) - [TP bouton](./tp/button.md)

## Cours 3 : réutiliser des composants avec les `props`

[Cours](./cours/props.md) - [TP afficher une liste d'utilisateurs](./tp/list_user.md)

## Cours 4 : rendre un composant réactif avec les `states`

[Cours](./cours/props.md) - [TP gérer un formulaire](./tp/form.md) - [TP réveil](./tp/reveil.md)

# Partie 2 : React et son éco-système

## Cours 5 : ajoutons un peu de design avec Semantic UI

[Cours sur Semantic UI](./cours/semantic.md) - [TP une liste d'utilisateurs avec Semantic UI](./tp/semantic-ui.md)

## Cours 6 : ajoutons un peu de design avec Material UI

[Cours sur Material UI](./cours/material.md) - [TP une liste d'utilisateurs avec Material UI](./tp/material-ui.md)

## Cours 7 : exemple d'application - le pendu

[TP du pendu](./tp/pendu.md)

## Cours 8 : interargir avec un backend

[Cours sur fetch](./cours/fetch.md) - [TP charger une liste d'utilisateurs](./tp/fetch.md)

## Cours 9 : ajouter plusieurs pages à son application

[Cours sur le routeur](./cours/router.md) - [TP routeur](./tp/router.md)

## Cours 10 : les composants d'ordre supérieur

[Cours sur les HOC](./cours/hoc.md) - [TP authentification](./cours/auth.md)

## Cours 11 : partager des informations entre plusieurs composants avec les contextes

[Cours sur le contexte](./cours/context.md) - [TP sélecteur de thème](./tp/context.md)

# Partie 3 : utiliser Firebase avec React

## Cours 12 : créer des utilisateurs avec Firebase
[Cours sur Firebase](./cours/firebase.md) - [Cours sur les utilisateurs dans Firebase](./cours/firebase.md) - [TP cookies d'authentification](./tp/cookies-auth.md)

## Cours 13 : sauvegarder des informations avec Firestore
[Cours sur Firestore](./cours/firestore.md) - [TP utilisateurs avancés](./tp/advanced-users.md)

## Cours 14 : gérer les permissions dans Firebase
[Cours sur les permissions dans Firestore](./cours/firestore-permissions.md) - [TP jeu multi-joueur](./tp/multi-player.md)

## Cours 15 : maîtriser les compteurs avec Firebase
[Cours sur les compteurs dans Firestore](./cours/firestore-counters.md) - [TP jeu multi-joueur avec des points](./tp/multi-player2.md)

0 comments on commit 82dc650

Please sign in to comment.