Skip to content

Commit 7843b10

Browse files
committed
Merge branch 'dev' of https://github.com/edunumsec2/book into dev
2 parents dff6681 + 21c119f commit 7843b10

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+21103
-175
lines changed

.github/ISSUE_TEMPLATE/suggestion-contenu.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ body:
88
- type: markdown
99
attributes:
1010
value: |
11-
**Remarque**: pour les demandes plus complexes, nous vous invitons à dialoguer avec nous via [Discord](https://discord.gg/b8qu79t6HQ) ou sur [modulo-team@epfl.ch](mailto:modulo-team@epfl.ch).
11+
**Remarque**: pour les demandes plus complexes, nous vous invitons à dialoguer avec nous via [Discord](https://discord.gg/b8qu79t6HQ) ou sur [contact@modulo-info.ch](mailto:contact@modulo-info.ch).
1212
- type: input
1313
id: page
1414
attributes:

.github/workflows/main.yml renamed to .github/workflows/deploy-dev.yml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,36 @@
1-
name: deploy-book
1+
name: deploy-book-dev
22

3-
# Only run this when the master branch changes
3+
# Only run this when the dev branch changes
44
on:
55
push:
66
branches:
77
- dev
88

9-
# This job installs dependencies, builds the book, and pushes it to `gh-pages`
9+
# This job installs dependencies, builds the book, and pushes it to FTP server
1010
jobs:
1111
deploy-book-appr:
1212
runs-on: ubuntu-latest
1313
steps:
14-
- uses: actions/checkout@v2
14+
- uses: actions/checkout@v4
1515

16-
# Install dependencies
17-
- name: Set up Python 3.8
18-
uses: actions/setup-python@v1
16+
- name: Set up Python
17+
uses: actions/setup-python@v5
1918
with:
20-
python-version: 3.8
19+
python-version: '3.13'
2120

2221
- name: Install dependencies
2322
run: |
2423
pip install -r requirements.txt
2524
working-directory: .
26-
# Build the book
25+
2726
- name: Build the book
2827
run: |
2928
sphinx-build src/appr build -E
3029
working-directory: .
30+
3131
# Push the book's HTML to Infomaniak FTP
3232
- name: 📂 Sync files
33-
uses: SamKirkland/[email protected].0-beta
33+
uses: SamKirkland/[email protected].5
3434
with:
3535
server: 31826.ftp.infomaniak.com
3636
username: 31826_elliot
@@ -41,26 +41,26 @@ jobs:
4141
deploy-book-ens:
4242
runs-on: ubuntu-latest
4343
steps:
44-
- uses: actions/checkout@v2
44+
- uses: actions/checkout@v4
4545

46-
# Install dependencies
47-
- name: Set up Python 3.8
48-
uses: actions/setup-python@v1
46+
- name: Set up Python
47+
uses: actions/setup-python@v5
4948
with:
50-
python-version: 3.8
49+
python-version: '3.13'
5150

5251
- name: Install dependencies
5352
run: |
5453
pip install -r requirements.txt
5554
working-directory: .
56-
# Build the book
55+
5756
- name: Build the book
5857
run: |
5958
sphinx-build src/ens build -E
6059
working-directory: .
60+
6161
# Push the book's HTML to Infomaniak FTP
6262
- name: 📂 Sync files
63-
uses: SamKirkland/[email protected].0-beta
63+
uses: SamKirkland/[email protected].5
6464
with:
6565
server: 31826.ftp.infomaniak.com
6666
username: 31826_elliot

.github/workflows/deploy.yml

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
name: deploy-book-master
2+
3+
# Only run this when the master branch changes
4+
on:
5+
push:
6+
branches:
7+
- master
8+
9+
# This job installs dependencies, builds the book, and pushes it to FTP server
10+
jobs:
11+
deploy-landing-page:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- name: Set up Node
17+
uses: actions/setup-node@v4
18+
with:
19+
node-version: 'latest'
20+
21+
- name: Install dependencies
22+
working-directory: ./landing-page
23+
run: |
24+
npm ci
25+
26+
- name: Build the landing page
27+
working-directory: ./landing-page
28+
run: |
29+
npm run build
30+
31+
# Push the built files to Infomaniak FTP
32+
- name: 📂 Sync files
33+
uses: SamKirkland/[email protected]
34+
with:
35+
server: 31826.ftp.infomaniak.com
36+
username: 31826_elliot
37+
password: ${{ secrets.FTP_PASSWORD }}
38+
local-dir: ./landing-page/public/
39+
server-dir: web/
40+
41+
deploy-book-appr:
42+
runs-on: ubuntu-latest
43+
steps:
44+
- uses: actions/checkout@v4
45+
46+
- name: Set up Python
47+
uses: actions/setup-python@v5
48+
with:
49+
python-version: '3.13'
50+
51+
- name: Install dependencies
52+
run: |
53+
pip install -r requirements.txt
54+
working-directory: .
55+
56+
- name: Build the book
57+
run: |
58+
sphinx-build src/appr build -E
59+
working-directory: .
60+
61+
# Push the book's HTML to Infomaniak FTP
62+
- name: 📂 Sync files
63+
uses: SamKirkland/[email protected]
64+
with:
65+
server: 31826.ftp.infomaniak.com
66+
username: 31826_elliot
67+
password: ${{ secrets.FTP_PASSWORD }}
68+
local-dir: ./build/
69+
server-dir: sites/apprendre.modulo-info.ch/
70+
71+
deploy-book-ens:
72+
runs-on: ubuntu-latest
73+
steps:
74+
- uses: actions/checkout@v4
75+
76+
- name: Set up Python
77+
uses: actions/setup-python@v5
78+
with:
79+
python-version: '3.13'
80+
81+
- name: Install dependencies
82+
run: |
83+
pip install -r requirements.txt
84+
working-directory: .
85+
86+
- name: Build the book
87+
run: |
88+
sphinx-build src/ens build -E
89+
working-directory: .
90+
91+
# Push the book's HTML to Infomaniak FTP
92+
- name: 📂 Sync files
93+
uses: SamKirkland/[email protected]
94+
with:
95+
server: 31826.ftp.infomaniak.com
96+
username: 31826_elliot
97+
password: ${{ secrets.FTP_PASSWORD }}
98+
local-dir: ./build/
99+
server-dir: sites/enseigner.modulo-info.ch/

.gitignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,3 +164,11 @@ dmypy.json
164164
.pyre/
165165
edunum-sec2/content/theme/representation-information/representation-entiers/eleve.ipynb
166166
.eps
167+
168+
# Node modules
169+
**/node_modules/
170+
**/.npm
171+
172+
# Gatsby files
173+
**/.cache/
174+
**/public/

doc/migration-styles.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# Migration des balises de `sphinx-panels` vers `sphinx-design`
2+
3+
Suite au passage vers Sphinx version 5, le système de `sphinx-panels` a été remplacé par `sphinx-design`.
4+
Ça implique des changements dans la creation des éléments du style dans les pages, notamment en ce qui concerne
5+
les tabs est les panels.
6+
7+
Exemple pour illustration:
8+
9+
```
10+
````{panels}
11+
:img-top: media/Usine_avant.jpeg
12+
13+
**Usine du début du siècle dernier.** Les machines dans cette usine de métallurgie à Vallorbe dans le canton de Vaud sont au service des ouvriers. Source : https://wikivaud.ch/metallurgie-vaudoise/
14+
15+
----
16+
:img-top: media/Usine_après.jpeg
17+
18+
**Usine du début de ce siècle.** Les machines dans cette usine de montage Mistubishi en Chine ont remplacé les ouvriers. Source : https://www.lemonde.fr/blog/fredericjoignot/2015
19+
````
20+
```
21+
22+
devient
23+
24+
```
25+
:::::{grid} 1 2 2 2
26+
:gutter: 2
27+
28+
::::{grid-item}
29+
:::{card}
30+
:img-top: media/Usine_avant.jpeg
31+
32+
**Usine du début du siècle dernier.** Les machines dans cette usine de métallurgie à Vallorbe dans le canton de Vaud sont au service des ouvriers. Source : https://wikivaud.ch/metallurgie-vaudoise/
33+
34+
:::
35+
::::
36+
37+
::::{grid-item}
38+
:::{card}
39+
:img-top: media/Usine_après.jpeg
40+
41+
**Usine du début de ce siècle.** Les machines dans cette usine de montage Mistubishi en Chine ont remplacé les ouvriers. Source : https://www.lemonde.fr/blog/fredericjoignot/2015
42+
43+
:::
44+
::::
45+
:::::
46+
```
47+
48+
Pour plus d'exemples, conslutez le commit `e836c1c185f2609cfaac950acc8c3aa05992444c` et sur la page de référence de
49+
[sphinx-design](https://sphinx-design.readthedocs.io/en/latest/).

landing-page/README.md

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
<p align="center">
2+
<img alt="Logo Modulo" src="https://user-images.githubusercontent.com/12733352/187911585-9ba02dd4-3eda-4102-bbaa-45e15bdb0473.png" width="300" />
3+
</p>
4+
<h1 align="center">
5+
Site web
6+
</h1>
7+
8+
Ce répertoire contient le code source pour le site informationnel Modulo, actuellement accessible sur [https://modulo-info.ch](https://modulo-info.ch/) et hébergé chez Infomaniak. Ce projet, complémentaire aux [ressources Modulo](https://github.com/edunumsec2/book), permet de communiquer plus largement les informations importantes liées à Modulo.
9+
10+
## Technologies
11+
12+
Le site est développé avec le framework JavaScript [Gatsby](https://www.gatsbyjs.com/) (v.4.0), les styles sont gérés par le framework CSS [Tailwind](https://tailwindcss.com/), tous les deux open source. De manière similaire à [Sphinx](https://www.sphinx-doc.org/en/master/) qui génère une documentation statique pour le projet principal, Gatsby génère des fichiers HTML/CSS/JS statiques permettant une très grande portabilité - aucune technologie spécifique n'est requise du côté du serveur.
13+
14+
## 🚀 Installation
15+
16+
1. **Pré-requis**
17+
18+
[**Visual Studio Code**](https://code.visualstudio.com/) ou n'importe quel éditeur de code de votre choix.
19+
20+
[**Node.js**](https://nodejs.org/en/download/) _(v.16.x.x LTS)_ nécessaire pour l'installation de Gatsby, permet à celui-ci de générer les fichiers statiques. Node permet également d'accéder au Node Package Manager (NPM) - outil similaire à pip pour Python.
21+
22+
```shell
23+
# pour vérifier si Node est installé
24+
node --version # expected : v.16.x.x
25+
```
26+
27+
_Si la commande ne fonctionne pas, vous devez peut-être relancer un nouveau Terminal ou redémarrer la machine._
28+
29+
[**GitHub Desktop**](https://desktop.github.com/) **(recommandé)** pour cloner ce répertoire. GitHub Desktop fournit une interface graphique agréable d'utilisation pour Git, en gardant les choses simples puisqu'il enlève certaines complexités de Git (utilisation d'un agent ssh par exemple). Pour Ubuntu, voir [github_ubuntu_desktop.sh](https://gist.github.com/berkorbay/6feda478a00b0432d13f1fc0a50467f1).
30+
31+
_A la place de GitHub Desktop, vous pouvez aussi utiliser [Git](https://git-scm.com/downloads) via votre terminal, mais il faudra [se familiariser avec les commandes](https://rogerdudler.github.io/git-guide/), [générer une clé SSH](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent) et la [connecter à votre compte GitHub](https://docs.github.com/en/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account) pour pouvoir récupérer le projet._
32+
33+
2. **Gatsby CLI**
34+
35+
Installer Gatsby Command Line Interface (CLI) via NPM. Gatsby CLI permettra d'exécuter les commandes de développement ou de build (voir [utilisation](#utilisation)).
36+
37+
```shell
38+
# install gatsby cli
39+
npm install -g gatsby-cli
40+
```
41+
42+
```shell
43+
# check installation
44+
gatsby --version # expected : Gatsby CLI version: 4.16.0
45+
```
46+
47+
_Si vous êtes bloqués dans l'installation de Node, Git ou Gatsby CLI, vous pouvez trouver de l'aide supplémentaire [ici](https://www.gatsbyjs.com/docs/tutorial/part-0/)_.
48+
49+
3. **Cloner le projet**
50+
51+
Via GitHub Desktop.
52+
53+
Ou alors via votre terminal :
54+
55+
```shell
56+
57+
# aller dans votre répertoire de développement
58+
cd my-dev-repository
59+
60+
# cloner le projet
61+
git clone [email protected]:edunumsec2/modulo-website.git
62+
63+
```
64+
65+
4. **Installation des dépendances**
66+
67+
A la racine du projet, installer les [dépendances](https://github.com/edunumsec2/modulo-website/blob/master/package.json) :
68+
69+
```shell
70+
71+
# aller dans le répertoire du projet
72+
cd modulo-website
73+
74+
# installer les dépendances
75+
npm install --force
76+
77+
```
78+
79+
## Utilisation
80+
81+
todo (gatsby build, clean, develop)
82+
83+
## Structure du projet
84+
85+
todo
86+
87+
## Ressources utiles
88+
89+
todo

landing-page/gatsby-browser.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
import "./src/global.css"

landing-page/gatsby-config.js

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
module.exports = {
2+
siteMetadata: {
3+
title: `Modulo - Catalogue de ressources informatiques`,
4+
description: `Apprendre et enseigner l'informatique au gymnase grâce à un contenu didactique.`,
5+
author: `Centre LEARN - EPFL`,
6+
siteUrl: `https://www.epfl.ch/education/educational-initiatives/center-learn/`,
7+
},
8+
plugins: [
9+
`gatsby-plugin-no-sourcemaps`,
10+
`gatsby-plugin-postcss`, // used by Tailwindcss
11+
`gatsby-plugin-emotion`, // for Taliwindcss styling with styled-components
12+
{
13+
resolve: `gatsby-plugin-google-fonts`,
14+
options: {
15+
fonts: [`poppins\:200,300,400`],
16+
display: "swap",
17+
},
18+
},
19+
{
20+
resolve: "gatsby-plugin-htaccess",
21+
options: {
22+
https: true,
23+
SymLinksIfOwnerMatch: true,
24+
host: "modulo-info.ch",
25+
redirect: [
26+
"RewriteRule ^not-existing-url/?$ /existing-url [R=301,L,NE]",
27+
{
28+
from: "edunumsec2.ch",
29+
to: "modulo-info.ch",
30+
},
31+
],
32+
},
33+
},
34+
],
35+
}

0 commit comments

Comments
 (0)