Skip to content

Commit c4e1289

Browse files
committed
Mise à jour du projet : Renommage en 'github-actions-html-css-js', ajout d'un fichier .gitignore, mise à jour des fichiers README.md, package.json et package-lock.json, préparation pour publication open-source
1 parent bb93d0b commit c4e1289

File tree

9 files changed

+3794
-28
lines changed

9 files changed

+3794
-28
lines changed

.gitignore

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Node.js dependencies
2+
node_modules/
3+
4+
# Logs
5+
logs
6+
*.log
7+
npm-debug.log*
8+
yarn-debug.log*
9+
yarn-error.log*
10+
11+
# Deno
12+
.deno_modules/
13+
.deno_test_cache/
14+
15+
# System files
16+
.DS_Store
17+
Thumbs.db
18+
19+
# Git
20+
*.lock
21+
.idea/
22+
.vscode/
23+
24+
# Coverage
25+
coverage/
26+
27+
# Build
28+
build/
29+
dist/

README.md

Lines changed: 83 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,90 @@
1-
# GitHub Actions html/css/js
1+
# GitHub Actions HTML/CSS/JS
22

3-
# Exemple Badge
3+
## Description
4+
Ce projet est un exemple d'utilisation des GitHub Actions pour automatiser les tests, le linting et d'autres tâches pour un projet HTML/CSS/JS. Il est conçu pour être didactique et facile à utiliser.
45

5-
1. Badge GitHub
6-
``` ![nom_du_badge] (https://github.com/nom-du-repo/workflows/nom_du_workflow/badge.svg) ```
6+
## Installation
77

8-
1. Badge Shield.io
9-
``` ![nom_du_badge](https://img.shields.io/github/actions/workflow/status/<user>/<repo>/sub_directory/test.yml?branch=main) ```
10-
- Utile pour cette réalisation : https://github.com/badges/shields/issues/8671
8+
1. Clonez le dépôt :
9+
```bash
10+
git clone https://github.com/<votre-utilisateur>/<nom-du-repo>.git
11+
```
1112

12-
## Badge shield.io
13+
2. Accédez au dossier du projet :
14+
```bash
15+
cd <nom-du-repo>
16+
```
1317

14-
![SuperLinter - Shield Edition](https://img.shields.io/github/actions/workflow/status/YTBeater/action_git_HTML_CSS_JS/.github/workflows/super-linter.yml?branch=main)
18+
3. Installez les dépendances :
19+
```bash
20+
npm install
21+
```
1522

16-
## Badge jobs
23+
## Utilisation
1724

18-
![Unit-tests](https://github.com/YTBeater/action_git_HTML_CSS_JS/workflows/unit_tests/badge.svg)
19-
![Deno lint (js)](https://github.com/YTBeater/action_git_HTML_CSS_JS/workflows/deno_lint/badge.svg)
20-
![Super-linter HTML/CSS/JS](https://github.com/YTBeater/action_git_HTML_CSS_JS/workflows/super_linter_hcjs/badge.svg)
21-
![TEST_JOB](https://github.com/YTBeater/action_git_HTML_CSS_JS/workflows/test_ci/badge.svg)
25+
### Lancer les tests
26+
- Pour exécuter les tests Jest :
27+
```bash
28+
npm run test-jest
29+
```
30+
- Pour exécuter les tests Deno :
31+
```bash
32+
deno test
33+
```
34+
35+
### Lancer le linting
36+
- Pour vérifier le linting avec Super-Linter :
37+
Les erreurs de linting seront automatiquement détectées lors des pushs sur la branche `main`.
38+
39+
## Scripts disponibles
40+
41+
### Tests
42+
- **Jest** :
43+
```bash
44+
npm run test-jest
45+
```
46+
Exécute les tests unitaires pour les fichiers JavaScript avec Jest.
47+
48+
- **Deno** :
49+
```bash
50+
npm run test-deno
51+
```
52+
Exécute les tests unitaires pour les fichiers JavaScript avec Deno.
53+
54+
### Fichiers ignorés
55+
Un fichier `.gitignore` a été ajouté pour exclure les fichiers et dossiers suivants :
56+
- `node_modules/`
57+
- Fichiers de logs (`*.log`)
58+
- Dossiers spécifiques à Deno (`.deno_modules/`, `.deno_test_cache/`)
59+
- Fichiers système (`.DS_Store`, `Thumbs.db`)
60+
- Dossiers de couverture (`coverage/`)
61+
- Dossiers de build (`build/`, `dist/`)
62+
63+
## Normes de nommage
64+
65+
### HTML/CSS/JS
66+
- **HTML** : Utilisez des noms de classes et d'identifiants en kebab-case (ex. `main-container`).
67+
- **CSS** : Respectez la méthodologie BEM (Block Element Modifier).
68+
- **JavaScript** : Utilisez le camelCase pour les variables et fonctions, et PascalCase pour les classes.
69+
70+
### Nom du dépôt
71+
- Utilisez des noms descriptifs en kebab-case (ex. `action-git-html-css-js`).
72+
73+
## Badges
74+
75+
### Exemple Badge GitHub
76+
```markdown
77+
![nom_du_badge](https://github.com/<votre-utilisateur>/<nom-du-repo>/workflows/<nom_du_workflow>/badge.svg)
78+
```
79+
80+
### Exemple Badge Shield.io
81+
```markdown
82+
![nom_du_badge](https://img.shields.io/github/actions/workflow/status/<votre-utilisateur>/<nom-du-repo>/<chemin_du_workflow>.yml?branch=main)
83+
```
84+
85+
## Contribuer
86+
Les contributions sont les bienvenues ! Veuillez suivre les étapes suivantes :
87+
1. Forkez le projet.
88+
2. Créez une branche pour votre fonctionnalité : `git checkout -b feature/ma-fonctionnalite`.
89+
3. Faites vos modifications et testez-les.
90+
4. Soumettez une pull request.

app-deno.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
// Cette fonction additionne deux nombres et retourne le résultat.
2+
// Elle lève une erreur si les paramètres ne sont pas des nombres.
13
export const add_deno = (a, b) => {
24
if (isNaN(a) || isNaN(b)) {
3-
throw new Error('Les paramètres doivent être des nombres');
5+
throw new Error("Les paramètres doivent être des nombres");
46
}
57
return a + b;
68
};

app-jest.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
// Cette fonction additionne deux nombres et retourne le résultat.
2+
// Elle lève une erreur si les paramètres ne sont pas des nombres.
13
function add_jest(a, b) {
2-
if (typeof a !== 'number' || typeof b !== 'number') {
3-
throw new Error('Les paramètres doivent être des nombres');
4+
if (typeof a !== "number" || typeof b !== "number") {
5+
throw new Error("Les paramètres doivent être des nombres");
46
}
57
return a + b;
68
}

eslint.config.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
export default [
2+
{
3+
files: ["**/*.js"],
4+
languageOptions: {
5+
ecmaVersion: 2021,
6+
sourceType: "module",
7+
},
8+
rules: {
9+
"no-unused-vars": "warn",
10+
"no-console": "off",
11+
"semi": ["error", "always"],
12+
"quotes": ["error", "double"],
13+
"indent": ["error", 2],
14+
},
15+
},
16+
];

0 commit comments

Comments
 (0)