diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..7fddac0
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+.DS_store
+node_modules
+bower_components
\ No newline at end of file
diff --git a/.npmignore b/.npmignore
new file mode 100644
index 0000000..b223111
--- /dev/null
+++ b/.npmignore
@@ -0,0 +1,4 @@
+.DS_store
+.git*
+node_modules/**
+bower_components/**
\ No newline at end of file
diff --git a/Gruntfile.js b/Gruntfile.js
new file mode 100644
index 0000000..be218bc
--- /dev/null
+++ b/Gruntfile.js
@@ -0,0 +1,164 @@
+module.exports = function(grunt) {
+ 'use strict';
+ require('load-grunt-tasks')(grunt, {
+ pattern: ['grunt-*']
+ });
+
+ grunt.initConfig({
+ pkg: grunt.file.readJSON('package.json'),
+ config: {
+ 'cssSrcDir': 'src/sass',
+ 'cssTargetDir': 'css',
+ 'jsSrcDir': 'src/js',
+ 'jsTargetDir': 'js',
+ 'jsDependencies': [
+ 'bower_components/jquery/dist/jquery.min.js',
+ 'bower_components/history.js/scripts/bundled/html4+html5/jquery.history.js',
+ 'bower_components/imagesloaded/imagesloaded.pkgd.min.js',
+ 'bower_components/masonry/dist/masonry.pkgd.min.js',
+ 'bower_components/fitvids/jquery.fitvids.js',
+ 'bower_components/highlightjs/highlight.pack.min.js',
+ 'bower_components/nprogress/nprogress.js',
+ 'src/js/vendor/gist-embed.min.js'
+ ],
+ 'cssDependencies': [
+ 'bower_components/normalize.css/normalize.css',
+ 'bower_components/highlightjs/styles/default.css',
+ 'bower_components/nprogress/nprogress.css'
+ ]
+ },
+ copy: {
+ dev: {
+ files: [{
+ dest: 'static/fonts/',
+ src: '*',
+ cwd: 'src/fonts/',
+ expand: true
+ }]
+ },
+ dist: {
+ files: [{
+ dest: 'static/fonts/',
+ src: '*',
+ cwd: 'src/fonts/',
+ expand: true
+ }]
+ }
+ },
+ clean: {
+ dist: ['static']
+ },
+ sass: {
+ dev: {
+ options: {
+ sourceMaps: true
+ },
+ files: {
+ 'static/<%= config.cssTargetDir %>/style.css': '<%= config.cssSrcDir %>/style.scss'
+ }
+ },
+ dist: {
+ options: {
+ outputStyle: 'compressed',
+ sourceMaps: false
+ },
+ files: {
+ 'static/<%= config.cssTargetDir %>/style.css': '<%= config.cssSrcDir %>/style.scss'
+ }
+ }
+ },
+ cssmin: {
+ dev: {
+ options: {
+ shorthandCompacting: false,
+ roundingPrecision: -1,
+ sourceMap: true
+ },
+ files: {
+ 'static/<%= config.cssTargetDir %>/dependencies.css': [
+ '<%= config.cssDependencies %>'
+ ]
+ }
+ },
+ dist: {
+ options: {
+ shorthandCompacting: false,
+ roundingPrecision: -1,
+ sourceMap: false
+ },
+ files: {
+ 'static/<%= config.cssTargetDir %>/dependencies.css': [
+ '<%= config.cssDependencies %>'
+ ]
+ }
+ }
+ },
+ postcss: {
+ options: {
+ map: true,
+ processors: [
+ require('autoprefixer')({ browsers: ['last 2 versions'] })
+ ]
+ },
+ files: {
+ src: 'static/<%= config.cssTargetDir %>/*.css'
+ }
+ },
+ uglify: {
+ dev: {
+ files: {
+ 'static/<%= config.jsTargetDir %>/script.js': [
+ '<%= config.jsSrcDir %>/**/*.js'
+ ],
+ 'static/<%= config.jsTargetDir %>/dependencies.js': [
+ '<%= config.jsDependencies %>'
+ ]
+ }
+ },
+ devlight: {
+ files: {
+ 'static/<%= config.jsTargetDir %>/script.js': [
+ '<%= config.jsSrcDir %>/**/*.js'
+ ]
+ }
+ },
+ dist: {
+ files: {
+ 'static/<%= config.jsTargetDir %>/script.js': [
+ '<%= config.jsSrcDir %>/**/*.js'
+ ],
+ 'static/<%= config.jsTargetDir %>/dependencies.js': [
+ '<%= config.jsDependencies %>'
+ ]
+ }
+ }
+ },
+ watch: {
+ css: {
+ files: '<%= config.cssSrcDir %>/**/*.scss',
+ tasks: ['sass:dev','copy:dev','postcss']
+ },
+ js: {
+ files: '<%= config.jsSrcDir %>/**/*.js',
+ tasks: ['uglify:devlight']
+ }
+ }
+ });
+
+ grunt.registerTask('build', [
+ 'clean:dist',
+ 'sass:dist',
+ 'cssmin:dist',
+ 'postcss',
+ 'copy:dist',
+ 'uglify:dist'
+ ]);
+ grunt.registerTask('default', [
+ 'sass:dev',
+ 'cssmin:dev',
+ 'postcss',
+ 'copy:dev',
+ 'uglify:dev',
+ 'watch'
+ ]);
+};
diff --git a/LICENSE.md b/LICENSE.md
new file mode 100644
index 0000000..0f2fc6f
--- /dev/null
+++ b/LICENSE.md
@@ -0,0 +1,7 @@
+hugo-theme-crisp (c) by Thibault NORMAND
+
+hugo-theme-crisp is licensed under a
+Creative Commons Attribution-ShareAlike 4.0 International License.
+
+You should have received a copy of the license along with this
+work. If not, see {{ .Title }}
+ {{ range $index, $page := .Paginator.Pages }}
+ {{ .Render "li" }}
+ {{ end }}
+
+ {{ partial "pagination.html" $paginator }}
+{{ .Title }}
+
Thibault Normand est un dévéloppeur et un bloggeur enthousiaste, curieux de toutes nouvelles technologies liées à la sécurité, l'architecture, et le + web. Plus d'infos... +
+