Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"parser": "babel-eslint",
"env": {
"node": true,
"browser": false,
Expand All @@ -18,7 +19,7 @@
"plugins": [
],
"rules": {
"comma-dangle": ["error", "ignore"],
"comma-dangle": ["error", "only-multiline"],
"indent": ["error", 2],
"no-console": "off"
}
Expand Down
15 changes: 11 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
# ENVIRONNEMENT GLOBAL
# GLOBAL ENVIRONNEMENT
# -----------------------------------------------------------------------------
# Pour être sur que le fichier .gitignore n'est jamais ignorer lui-même.
# This rules should be in your global gitignore but we need it here to avoid
# to export this files in the node module package (`npm pack`).
.DS_Store

# GIT
# -----------------------------------------------------------------------------
# To be sure that the .gitignore file is never ignored itself.
!.gitignore

# MODULES TIERS
# NODE
# -----------------------------------------------------------------------------
# Ignorer les modules et logs nodes
# NPM directory, logs and packages
node_modules
logs
*.log
npm-debug.log*
*.tgz
34 changes: 15 additions & 19 deletions bin/gsk.js
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ fs.stat(gulpfile, function(err) {
console.log('Welcome in Garden-starterkit.');

// write gulpfile
fs.writeFileSync(gulpfile, 'require(\'garden-starterkit\');', 'utf-8');
fs.writeFileSync(gulpfile, 'require(\'@cleverage/gsk\');', 'utf-8');

var config = require('../config.json');

Expand All @@ -30,25 +30,21 @@ fs.stat(gulpfile, function(err) {
var inquirer = require('inquirer');

inquirer.prompt([
// {
// type: 'list',
// message: 'Select your HTML engine:',
// name: 'html',
// choices: [
// {
// name: 'Twig',
// checked: true,
// value: 'twig'
// }
// ]
// },
{
type: 'list',
message: 'Select your HTML engine:',
name: 'html',
choices: [
{
name: 'Twig',
checked: true,
value: 'twig'
},
{
name: 'Handlebars',
value: 'handlebars'
}
]
},
{
type: 'list',
message: 'Select your Css engine:',
message: 'Select your CSS engine:',
name: 'css',
choices: [
{
Expand All @@ -67,7 +63,7 @@ fs.stat(gulpfile, function(err) {
]
}
]).then(function (answers) {
config.html.engine = answers.html;
// config.html.engine = answers.html;
config.css.engine = answers.css;

require('../tools/init.js')(config);
Expand Down
1 change: 1 addition & 0 deletions config.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
},
"html" : {
"src-dir" : "./src/html",
"pattern" : "*.twig",
"dest-dir" : "./build",
"data-dir" : "./src/data",
"engine" : "twig",
Expand Down
8 changes: 4 additions & 4 deletions docs/browsersync.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@

Browsersync : Proxyfier les fichiers JS et CSS
Browsersync : Proxyfy JS and CSS files
===============================================================================

Le _Garden Starter Kit_ embarque une version de [Browsersync](https://www.browsersync.io/).
The _Garden Starter Kit_ embed a version of [Browsersync](https://www.browsersync.io/).

Browsersync permet de synchroniser la navigation (click, scroll, …) entre plusieurs devices.
Browsersync allows to synchronize navigation (click, scroll, …) between several devices.

Pour le configurer, l’outil dispose de son propre « back-office » accessible par défaut sur le port :3001 (localhost:3001) lorsque votre serveur est en route (`gulp connect` ou `gulp live`).
To configure it, this tool has his own « back-office » accessible by default on port `:3001` (localhost:3001) when your server is running (`gulp connect` or `gulp live`).
75 changes: 0 additions & 75 deletions docs/html/handlebars.md

This file was deleted.

4 changes: 2 additions & 2 deletions docs/js/webpack.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,11 @@ Les fichiers de sortie correpondants porteront le même nom.
### Bibliothèques tiers

Si vous utilisez des bibliothèques tiers (comme jQuery), il vous suffit de les
installer via NPM (notez l'utilisation de `--save` pour que les dépendances
installer via NPM (notez lutilisation de `--save` pour que les dépendances
soient proprement versionnées avec l’ensemble du projet) :

```bash
$ npm i jquery,underscore,moment --save
$ npm i jquery moment --save
```

Pour les utiliser, vous pouvez soit utiliser la fonction `require` des modules
Expand Down
13 changes: 6 additions & 7 deletions docs/kss.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,7 @@
KSS
===============================================================================

[KSS](http://warpspire.com/kss/) est une convention de documentation pour les feuilles de styles. Elle permet de structurer les commentaires afin de générer
un guide complet des styles du projet.
[KSS](http://warpspire.com/kss/) est une convention de documentation pour les feuilles de styles. Elle permet de structurer les commentaires afin de générer un guide complet des styles du projet.

Il existe plusieurs outils capable de lire les commentaires pour générer un guide des styles. Nous utilisons ici [kss-node](http://kss-node.github.io/kss-node/).

Expand All @@ -20,15 +19,15 @@ Toute la configuration pour la génération du guide des styles est centralisée
"source": "./src/sass",

// La page d’accueil statique du guide des style au format Markdown
// (le chemin est relatif à l'emplacement des sources à analyser)
// (le chemin est relatif à lemplacement des sources à analyser)
"homepage": "styleguide.md",

// L'emplacement ou le guide des style sera généré
// (le chemin est relatif à l'emplacement du fichier kss.json)
// Lemplacement ou le guide des style sera généré
// (le chemin est relatif à lemplacement du fichier kss.json)
"destination": "./build/docs/styleguide",

// L'emplacement du gabarit KSS personalisé à utiliser
// (le chemin est relatif à l'emplacement du fichier kss.json)
// Lemplacement du gabarit KSS personalisé à utiliser
// (le chemin est relatif à lemplacement du fichier kss.json)
"template": "./node_modules/garder-starterkit/kss",

// Les divers fichiers CSS à inclure dans le template
Expand Down
40 changes: 20 additions & 20 deletions docs/nproxy.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ NProxy : Proxyfier les fichiers JS et CSS
Module utilisé : [NProxy](https://github.com/stephane-tessier/nproxy)


Cette manipulation peut s'avérer très utile pour corriger un bug qui n'est pas reproductible sur la maquette, à cause de données différentes, de scripts tiers, ou tout simplement pour ne pas avoir à faire tourner une lourde VM dont on n’a pas forcément besoin en tant que développeur front.
Cette manipulation peut savérer très utile pour corriger un bug qui nest pas reproductible sur la maquette, à cause de données différentes, de scripts tiers, ou tout simplement pour ne pas avoir à faire tourner une lourde VM dont on n’a pas forcément besoin en tant que développeur front.

Proxyfier ?!
Proxyfier ?!
-------------------------------------------------------------------------------

Proxyfier signifie utiliser un élément tiers qui vient se placer entre le serveur et le navigateur. Dans notre cas, le proxy va permettre de naviguer sur un site distant (recette, pre-prod, prod, etc.), mais en chargeant les fichiers JS et/ou CSS locaux (à la place des fichiers distants).
Expand All @@ -21,7 +21,7 @@ Proxyfier signifie utiliser un élément tiers qui vient se placer entre le serv
Installation
-------------------------------------------------------------------------------

Le proxy est installé en même temps que les autres paquets NodeJS (via la commande ```npm install```).
Le proxy est installé en même temps que les autres paquets NodeJS (via la commande `npm install`).

Démarrer le proxy
-------------------------------------------------------------------------------
Expand All @@ -32,7 +32,7 @@ Pour démarrer le proxy, se placer dans le dossier racine du projet (contenant l
> gulp nproxy
```

Le proxy ```localhost:8989``` est alors accessible.
Le proxy `localhost:8989` est alors accessible.

Proxyfier le Javascript uniquement (**pas encore implémenté**) :

Expand All @@ -48,7 +48,7 @@ Proxyfier le CSS uniquement (**pas encore implémenté**) :

Désactiver les scripts externes (e.g. Google Tag Management, Facebook) (**pas encore implémenté**) :

(repectivement ''--no-gmt'', ''--no-facebook'')
(repectivement `--no-gmt`, `--no-facebook`)

```shell
> gulp --no-externals
Expand All @@ -61,15 +61,15 @@ Pour désactiver ces modules, on dessert un fichier javascript vide au lieu du f
Utiliser le proxy
--------------------------------------------------------------------------------

Vous pouvez configurer le proxy au niveau du système ou du navigateur avec le paramètre suivant : ```localhost:8989```.
Vous pouvez configurer le proxy au niveau du système ou du navigateur avec le paramètre suivant : `localhost:8989`.

Mais vous l'aurez compris, tout votre trafique va alors passer par votre proxy, ce qui n'est pas vraiment souhaitable (sauf dans le cas d'une VM dédiée, avec par exemple IE).
Mais vous laurez compris, tout votre trafique va alors passer par votre proxy, ce qui nest pas vraiment souhaitable (sauf dans le cas d'une VM dédiée, avec par exemple IE).

### Exemple de plugin

De nombreux plugins (extensions de navigateurs) permettent de facilement activer/désactiver le proxy au niveau du navigateur, ainsi que de paramétrer quelles URLs sont proxifiées, lesquelles ne le sont pas.

Voici deux exemples :
Voici deux exemples :

* [SwitchyOmega](https://chrome.google.com/webstore/detail/padekgcemlokbadohgkifijomclgjgif) sur Chrome
* [FoxyProxy](https://addons.mozilla.org/fr/firefox/addon/foxyproxy-standard/) sur Firefox
Expand All @@ -78,37 +78,37 @@ Voici deux exemples :
Configuration
--------------------------------------------------------------------------------

La configuration du proxy s'effectue dans le fichier _nproxy-conf.js_rg/fr/firefox/addon/foxyproxy-standard/) sur Firefox
La configuration du proxy seffectue dans le fichier _nproxy-conf.js_rg/fr/firefox/addon/foxyproxy-standard/) sur Firefox


Configuration
--------------------------------------------------------------------------------

La configuration du proxy s'effectue dans le fichier _nproxy-conf.js_
La configuration du proxy seffectue dans le fichier _nproxy-conf.js_

__Associé à chaque configuration du proxy, un exemple de configuration SwitchyOmega est proposé.__

Configuration du plugin navigateur
--------------------------------------------------------------------------------

__Etapes à suivre (exemple pour switchyomega)__
### Étapes à suivre (exemple pour switchyomega)

* Ouvrir les options
* Aller dans l'onglet proxy et configurer le serveur (localhost) et le port (8989)
* Aller dans longlet proxy et configurer le serveur (localhost) et le port (8989)
* Supprimer dans le textarea bypass list, en dessous le texte "<local>"
* Cliquez ensuite sous l'onglet autoswitch sur le bouton "New profile"
* Cliquez ensuite sous longlet autoswitch sur le bouton "New profile"
* Nommer le profile RSC par exemple
* Cochez le bouton radio "switch profile" puis cliquez sur create
* Cliquez sur le bouton "edit source code"
* Cochez le bouton radio « switch profile » puis cliquez sur « create »
* Cliquez sur le bouton « edit source code »
* Remplacer le contenu du textarea par les lignes en dessous.
* Demarrer nproxy : ```gulp nproxy```
* Demarrer un ```gulp connect:dev``` ou ```gulp live```
* Aller sur localhost:8000/
* Demarrer nproxy : `gulp nproxy`
* Demarrer un `gulp connect` ou `gulp live`
* Aller sur `http://localhost:8000/`
* Cliquez sur le plugin switchyomega en haut à gauche du navigateur.
* Et cliquez le profil que vous venez de creer : RSC, et voilà !
* Et cliquez le profil que vous venez de creer : RSC, et voilà !


__Lignes à copiées dans le textarea (edit source code)__
### Lignes à copier dans le textarea (edit source code)
```
[SwitchyOmega Conditions]
@with result
Expand Down
25 changes: 25 additions & 0 deletions engine/css/compass/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// Définition du LazyPipe pour utiliser compass
'use strict';

// MODULES
// ----------------------------------------------------------------------------
var lazypipe = require('lazypipe');
var compass = require('gulp-compass');

module.exports = function (ENV) {
var lazystream = lazypipe()
.pipe(compass, {
bundle_exec: true,
config_file: './config.rb',
environment: ENV.all.optimize ? 'production' : 'development',
sass: ENV.css['src-dir'],
css: ENV.css['dest-dir'],
relative: false,
// Force only if task is called via `gulp css`.
// That fixes the following bug: `--optimized` option was ignored if built
// files were already cached.
force: require('yargs').argv._[0] === 'css'
});

return lazystream();
};
File renamed without changes.
20 changes: 20 additions & 0 deletions engine/css/compass/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"name": "@cleverage/gsk-compass",
"version": "1.0.0",
"description": "gsk compass engine",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "https://github.com/cleverage/garden-starter-kit.git"
},
"author": "",
"license": "MIT",
"dependencies": {
"gulp-compass": "2.1.0",
"gulp-scss-lint": "0.6.1",
"lazypipe": "1.0.1"
}
}
Loading