Careers : un site d'offres d'emploi Laravel open source
Careers est une application open source de publication d'offres d'emploi développée avec Laravel, Tailwind et du JavaScript natif. Elle est née comme projet final du cours Laracasts 30 Days to Learn Laravel.
Un tutoriel se termine là où un produit commence
Le projet du cours fonctionne, et c'est tout ce qu'il a à faire. N'importe qui peut publier une offre, n'importe qui peut modifier l'annonce de n'importe qui, il n'existe aucun moyen de revenir dans un compte dont le mot de passe est perdu, et les données de démonstration échouent sur une clé en double. Rien de tout cela n'est un défaut du cours — un tutoriel doit s'arrêter quelque part, et il s'arrête au point où l'idée est démontrée.
Ce point est exactement là où le travail commence. Ce qui sépare une chose qui tourne d'une chose utilisable, c'est la propriété, les permissions, la récupération, la pagination, et la douzaine de petits refus qui empêchent un utilisateur d'abîmer les données d'un autre. C'est la moitié la moins spectaculaire de toute application, et c'est l'essentiel du véritable travail d'ingénierie.
J'ai donc continué. Ce qui est publié ici est ce que j'ai ajouté par-dessus, et c'est l'essentiel de ce qui la rend utilisable.
Comptes et permissions
Des capacités d'administration sur chaque offre et chaque compte.
Une page entreprises réservée aux administrateurs.
Une page de profil avec édition.
Des annonces rattachées à une entreprise, avec modification et suppression réservées au propriétaire.
Réinitialisation du mot de passe et option « se souvenir de moi ».
Recherche et navigation
Validation de la recherche.
Pagination sur la page d'accueil, les résultats et les entreprises.
Les annonces mises en avant signalées dans la grille de résultats.
Interface
Mode sombre et mode clair.
Un menu mobile coulissant.
Des messages flash après chaque création, modification et suppression.
Des corrections de mise en page, dont le centrage des dernières rangées.
Développement
Génération des logos d'entreprise reprise pour produire des données de démonstration exploitables.
Génération des étiquettes d'offres reprise pour éliminer les erreurs de clé en double.
Le code source et une démonstration en ligne sont liés dans la colonne latérale. C'est open source parce que l'écart qu'il comble est courant : la version avec laquelle la plupart des gens terminent un cours est celle dont celui-ci part.
Outils de développement
-
Laravel
-
Tailwind
-
Javascript