joinpeertube fork
Find a file
JosephK d1ce3526eb Merge branch 'master' into 'master'
Newsletter 1.4 and various improvements

See merge request framasoft/peertube/joinpeertube!68
2019-09-27 08:58:12 +02:00
app Official link :) 2019-09-26 22:35:10 +02:00
zanata Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
.babelrc Upgrade deps 2019-02-06 13:08:03 +01:00
.eslintrc Vujisation 2018-09-21 23:00:42 +02:00
.gitignore Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
.gitlab-ci.yml Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
.npmrc Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
index.html Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
Makefile Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
package.json Newsletter template and various improvements 2019-09-26 22:11:50 +02:00
postcss.config.js Vujisation 2018-09-21 23:00:42 +02:00
README.md Vujisation 2018-09-21 23:00:42 +02:00
webpack.config.js Newsletter template and various improvements 2019-09-26 22:11:50 +02:00

Architecture de base pour un site statique réactif et internationalisé à laide de:

  • Vuejs 2
  • Vue-i18n + Vue-router pour linternationnalisation des pages
  • Import de jQuery, Bootstrap et ForkAwesome
  • YAML pour les fichiers de langue (plus lisible quun JSON mais automatiquement converti)
  • SASS pour lhabillage
  • Webpack 4 pour automatiser la construction de lensemble

En prod

Pour construire le site :

npm install
npm run prod

Les fichiers sont placés dans le dossier public. Le site fonctionne uniquement à la racine du domaine. Les pages sont prérendues avec les traductions dans le code html

En développement

Pour voir le site en local

npm run dev

Les changements sappliquent en temps réel et se voient sur http://localhost:8080/.

En preview

On peut forcer la construction du site en local avec la commande:

npm run preview

Mais lintérêt consiste surtout à voir le rendu sur les Gitlab Pages. Les fichiers sont placés dans un sous-dossier du dossier public correspondant au nom du dépôt. Les pages sont prérendues sans les traductions dans le code html (la fallbackLocale est utilisée). Celles-ci sont chargées dynamiquement (important à savoir lorsquil faut débugger un script).

├── app
│   ├── App.vue
│   ├── assets
│   │   ├── fonts
│   │   ├── icons
│   │   ├── img
│   │   └── scss
│   │       └── main.scss           # le fichier compilé est minifié dans /public/style.css
│   ├── components
│   │   ├── pages                   # exemple de pages (juste le titre change)
│   │   │   ├── About.vue
│   │   │   ├── Home.vue
│   │   │   └── HowItWorks.vue
│   │   └── partials
│   │       ├── Header.vue          # en-tête et menu de navigation
│   │       ├── I18n.vue            # switch en/fr
│   │       └── i18n.js             # script de changement de langue
│   ├── index.js                    # gestion de li18n + routage des pages + import des assets
│   └── locales                     # traductions
│       ├── en.yml
│       └── fr.yml
├── index.html                      # le fichier est simplement copié dans /public
├── package.json                    # liste des dépendances + définition de commandes npm run dev|prod
├── package-lock.json
├── postcss.config.js               # juste pour préfixer les css avec -webkit, -moz, -ms
├── README.md
└── webpack.config.js               # config webpack pour la construction du site