Initial commit
This commit is contained in:
commit
ff6d829468
19 changed files with 583 additions and 0 deletions
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
*~
|
||||
.stack-work/
|
||||
_cache/
|
||||
_site/
|
9
contact.org
Normal file
9
contact.org
Normal file
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
title: Contact
|
||||
---
|
||||
|
||||
- E-mail :: [[mailto:dimitri+web@lozeve.com][dimitri+web@lozeve.com]]
|
||||
- GitHub :: [[https://github.com/dlozeve/][dlozeve]]
|
||||
- LinkedIn :: [[https://www.linkedin.com/in/dimitrilozeve][Dimitri Lozeve]]
|
||||
- StackOverflow :: [[https://stackoverflow.com/story/dimitrilozeve][dimitrilozeve]]
|
||||
- Twitter :: [[https://twitter.com/DimitriLozeve][DimitriLozeve]]
|
141
css/default.css
Normal file
141
css/default.css
Normal file
|
@ -0,0 +1,141 @@
|
|||
html {
|
||||
font-size: 62.5%;
|
||||
}
|
||||
|
||||
body {
|
||||
font-size: 1.6rem;
|
||||
color: #000;
|
||||
}
|
||||
|
||||
header {
|
||||
border-bottom: 0.2rem solid #000;
|
||||
}
|
||||
|
||||
nav {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
nav a {
|
||||
font-size: 1.8rem;
|
||||
font-weight: bold;
|
||||
color: black;
|
||||
text-decoration: none;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
footer {
|
||||
margin-top: 3rem;
|
||||
padding: 1.2rem 0;
|
||||
border-top: 0.2rem solid #000;
|
||||
font-size: 1.2rem;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2.4rem;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
article .header {
|
||||
font-size: 1.4rem;
|
||||
font-style: italic;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.logo a {
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
@media (max-width: 319px) {
|
||||
body {
|
||||
width: 90%;
|
||||
margin: 0;
|
||||
padding: 0 5%;
|
||||
}
|
||||
header {
|
||||
margin: 4.2rem 0;
|
||||
}
|
||||
nav {
|
||||
margin: 0 auto 3rem;
|
||||
text-align: center;
|
||||
}
|
||||
footer {
|
||||
text-align: center;
|
||||
}
|
||||
.logo {
|
||||
text-align: center;
|
||||
margin: 1rem auto 3rem;
|
||||
}
|
||||
.logo a {
|
||||
font-size: 2.4rem;
|
||||
}
|
||||
nav a {
|
||||
display: block;
|
||||
line-height: 1.6;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 320px) {
|
||||
body {
|
||||
width: 90%;
|
||||
margin: 0;
|
||||
padding: 0 5%;
|
||||
}
|
||||
header {
|
||||
margin: 4.2rem 0;
|
||||
}
|
||||
nav {
|
||||
margin: 0 auto 3rem;
|
||||
text-align: center;
|
||||
}
|
||||
footer {
|
||||
text-align: center;
|
||||
}
|
||||
.logo {
|
||||
text-align: center;
|
||||
margin: 1rem auto 3rem;
|
||||
}
|
||||
.logo a {
|
||||
font-size: 2.4rem;
|
||||
}
|
||||
nav a {
|
||||
display: inline;
|
||||
margin: 0 0.6rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 640px) {
|
||||
body {
|
||||
width: 60rem;
|
||||
margin: 0 auto;
|
||||
padding: 0;
|
||||
}
|
||||
header {
|
||||
margin: 0 0 3rem;
|
||||
padding: 1.2rem 0;
|
||||
}
|
||||
nav {
|
||||
margin: 0;
|
||||
text-align: right;
|
||||
}
|
||||
nav a {
|
||||
margin: 0 0 0 1.2rem;
|
||||
display: inline;
|
||||
}
|
||||
footer {
|
||||
text-align: right;
|
||||
}
|
||||
.logo {
|
||||
margin: 0;
|
||||
text-align: left;
|
||||
}
|
||||
.logo a {
|
||||
float: left;
|
||||
font-size: 1.8rem;
|
||||
}
|
||||
}
|
119
cv.org
Normal file
119
cv.org
Normal file
|
@ -0,0 +1,119 @@
|
|||
---
|
||||
title: "Curriculum Vitæ"
|
||||
---
|
||||
|
||||
|
||||
* Work experience
|
||||
|
||||
*** Destygo: R&D Data Scientist
|
||||
2018-present
|
||||
|
||||
*** Sysnav: Real-time geolocalization algorithm on an embedded device
|
||||
March-August 2017
|
||||
|
||||
- mathematical modelling of the human walk
|
||||
- step detection using artificial intelligence on inertial sensors data
|
||||
- statistical methods for trajectory reconstruction
|
||||
- /Award:/ Best Research Internship 2017, from École polytechnique
|
||||
- [[./files/sysnav_internship.pdf][Outline of the confidential report (PDF, in French)]] and [[https://dlozeve.github.io/stage3a/][slides]]
|
||||
|
||||
*** Natixis London Branch, Global Infrastructure and Projects: Intern Analyst
|
||||
June-August 2016
|
||||
|
||||
Origination and execution of project finance transactions: offshore windfarms, hydroelectric dams, and a biomass power plant now under construction in northeastern England.
|
||||
|
||||
*** French Engineering Corps: Army officer
|
||||
2014-2015
|
||||
|
||||
Operation Sangaris: Military intervention in the Central African
|
||||
Republic.
|
||||
|
||||
- Instructor for new recruits for 4 months (around 30 soldiers)
|
||||
- Security Officer during the building of a Bailey bridge in Bangui
|
||||
- Participation in an intelligence gathering mission in the Northeastern part of the country
|
||||
- /French Republic Distinctions:/ Overseas Medal, National Defence Medal
|
||||
* Education
|
||||
|
||||
*** University of Oxford: [[https://www.ox.ac.uk/admissions/graduate/courses/msc-statistical-science][MSc in Statistical Science]]
|
||||
2017-2018
|
||||
|
||||
- Applied and computational statistics, statistical machine learning and statistical inference
|
||||
|
||||
*** [[https://www.polytechnique.edu/][École polytechnique]]
|
||||
2014-2017
|
||||
|
||||
- Majors in Applied Mathematics and Data Science, Computer Science, and Physics
|
||||
- /Distinctions:/ Outstanding Investment, Outstanding Leadership
|
||||
|
||||
*** Lycée Privé Sainte-Geneviève, Versailles: Preparatory classes to French *Grandes Écoles*
|
||||
2012-2014
|
||||
|
||||
- Majors in Mathematics and Physics
|
||||
|
||||
* Scientific projects
|
||||
*** Topological Data Analysis of time-dependent networks
|
||||
2018
|
||||
|
||||
- Master's thesis, joint work with Oxford's Department of Statistics and Mathematical Institute
|
||||
- Application of the recent advances in Topological Data Analysis (TDA) and Persistent Homology to periodicity detection in temporal networks
|
||||
- [[./files/tdanetworks.pdf][Dissertation]]
|
||||
|
||||
*** Research work on Community Detection in Social Networks
|
||||
2016-2017
|
||||
|
||||
- Comparison of the performance of state-of-the-art algorithms (theory and implementations)
|
||||
- Application to large-scale, real-world social networks
|
||||
- [[./files/communitydetection.pdf][Dissertation (PDF, in French)]] and [[https://dlozeve.github.io/reveal_CommunityDetection/][slides]]
|
||||
|
||||
*** SERB X-CubeSat II program: a nano-satellite dedicated to Sun-Earth relationship
|
||||
2015-2016
|
||||
|
||||
- Solar Irradiance and Earth Radiation Budget: Payload preliminary design
|
||||
- Co-authored [[http://dx.doi.org/10.1117/12.2222660][SPIE Proceedings article]] on the project’s technical specifications
|
||||
- [[./files/serb.pdf][Dissertation (PDF, in French)]]
|
||||
|
||||
*** Research work on Markov Chains and Queuing Theory
|
||||
2013-2014
|
||||
|
||||
- Study on the convergence of queues through algebra and numerical simulations
|
||||
- [[./files/filesdattente.pdf][Dissertation (PDF, in French)]]
|
||||
|
||||
* Languages and skills
|
||||
|
||||
*** Computer science
|
||||
|
||||
*Python:*
|
||||
|
||||
- Numerical computing: [[http://www.numpy.org/][Numpy]], [[https://www.scipy.org/][Scipy]]
|
||||
- Data analysis: [[https://pandas.pydata.org/][Pandas]]
|
||||
- Machine Learning: [[http://scikit-learn.org/][Scikit-Learn]]
|
||||
- Deep Learning: [[https://www.tensorflow.org/][TensorFlow]], [[http://pytorch.org/][PyTorch]]
|
||||
- Network analysis: [[https://networkx.github.io/][NetworkX]], [[https://graph-tool.skewed.de/][graph-tool]]
|
||||
- Research projects and hackathons: [[https://github.com/dlozeve/community-detection][community detection]] and [[https://github.com/dlozeve/DocAssist][DocAssist]]
|
||||
|
||||
*R:*
|
||||
|
||||
- Statistical modelling and inference (generalised linear models, bayesian analysis)
|
||||
- Data analysis: [[https://www.tidyverse.org/][Tidyverse]]
|
||||
- Network analysis: [[http://igraph.org/][igraph]]
|
||||
|
||||
*C, Java:* Embedded and [[https://github.com/dlozeve/Satrap][network]] programming, [[https://github.com/dlozeve/topological-persistence][scientific computing]]
|
||||
|
||||
*SQL:* Basics
|
||||
|
||||
*Haskell, Lisp (Scheme):* Hobby projects ([[https://github.com/dlozeve/orbit][N-body simulation]], [[https://github.com/dlozeve/Civilisation-hs][SAT solver]], [[https://github.com/dlozeve/aoc2017][Advent of Code 2017]])
|
||||
|
||||
*Software:* Git, GNU/Linux, LaTeX, [[https://aws.amazon.com/][Amazon AWS]], [[https://www.mongodb.com/][MongoDB]], [[https://www.wolfram.com/mathematica/][Wolfram Mathematica]], Microsoft Office
|
||||
|
||||
See also [[./skills.html][a complete list of my skills in Statistics, Data Science and Machine Learning]].
|
||||
|
||||
*** Languages
|
||||
|
||||
- French
|
||||
- English
|
||||
- Basic German
|
||||
|
||||
*** Sports
|
||||
|
||||
- Fencing :: vice-president of the 2016 [[http://x-systra.com/][X-SYSTRA International Fencing Challenge]]; 29th in the 2016 sabre French Student Championships
|
||||
- Scuba-diving :: CMAS * * *, 170+ dives
|
BIN
files/communitydetection.pdf
Normal file
BIN
files/communitydetection.pdf
Normal file
Binary file not shown.
BIN
files/filesdattente.pdf
Normal file
BIN
files/filesdattente.pdf
Normal file
Binary file not shown.
BIN
files/serb.pdf
Normal file
BIN
files/serb.pdf
Normal file
Binary file not shown.
BIN
files/sysnav_internship.pdf
Normal file
BIN
files/sysnav_internship.pdf
Normal file
Binary file not shown.
BIN
files/tdanetworks.pdf
Normal file
BIN
files/tdanetworks.pdf
Normal file
Binary file not shown.
BIN
images/haskell-logo.png
Normal file
BIN
images/haskell-logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 5.5 KiB |
22
index.html
Normal file
22
index.html
Normal file
|
@ -0,0 +1,22 @@
|
|||
---
|
||||
title: Home
|
||||
---
|
||||
|
||||
<h2>Welcome</h2>
|
||||
|
||||
<img src="/images/haskell-logo.png" style="float: right; margin: 10px;" />
|
||||
|
||||
<p>Hi! I am a Data Scientist
|
||||
at <a href="https://www.destygo.com/">Destygo</a>, working on making
|
||||
chatbots smarter through Machine Learning.</p>
|
||||
|
||||
<p>During my free time, I love tinkering with functional programming
|
||||
languages for scientific simulations and with embedded development
|
||||
and electronics.</p>
|
||||
|
||||
<a href="/cv.html">See my full CV.</a>
|
||||
|
||||
<h2>Recent Posts</h2>
|
||||
$partial("templates/post-list.html")$
|
||||
|
||||
<p>Find more in the <a href="/archive.html">archives</a>.</p>
|
12
newblog.cabal
Normal file
12
newblog.cabal
Normal file
|
@ -0,0 +1,12 @@
|
|||
name: newblog
|
||||
version: 0.1.0.0
|
||||
build-type: Simple
|
||||
cabal-version: >= 1.10
|
||||
|
||||
executable site
|
||||
main-is: site.hs
|
||||
build-depends: base == 4.*
|
||||
, pandoc == 2.*
|
||||
, hakyll == 4.12.*
|
||||
ghc-options: -threaded
|
||||
default-language: Haskell2010
|
83
site.hs
Normal file
83
site.hs
Normal file
|
@ -0,0 +1,83 @@
|
|||
--------------------------------------------------------------------------------
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
import Data.Monoid (mappend)
|
||||
|
||||
import Text.Pandoc.Options
|
||||
import Text.Pandoc.Highlighting
|
||||
|
||||
import Hakyll
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
main :: IO ()
|
||||
main = hakyll $ do
|
||||
match "images/*" $ do
|
||||
route idRoute
|
||||
compile copyFileCompiler
|
||||
|
||||
match "files/*" $ do
|
||||
route idRoute
|
||||
compile copyFileCompiler
|
||||
|
||||
match "css/*" $ do
|
||||
route idRoute
|
||||
compile compressCssCompiler
|
||||
|
||||
match (fromList ["contact.org", "cv.org", "skills.org", "projects.org"]) $ do
|
||||
route $ setExtension "html"
|
||||
compile $ customPandocCompiler
|
||||
>>= loadAndApplyTemplate "templates/default.html" defaultContext
|
||||
>>= relativizeUrls
|
||||
|
||||
match "posts/*" $ do
|
||||
route $ setExtension "html"
|
||||
compile $ customPandocCompiler
|
||||
>>= loadAndApplyTemplate "templates/post.html" postCtx
|
||||
>>= loadAndApplyTemplate "templates/default.html" postCtx
|
||||
>>= relativizeUrls
|
||||
|
||||
create ["archive.html"] $ do
|
||||
route idRoute
|
||||
compile $ do
|
||||
posts <- recentFirst =<< loadAll "posts/*"
|
||||
let archiveCtx =
|
||||
listField "posts" postCtx (return posts) `mappend`
|
||||
constField "title" "Archives" `mappend`
|
||||
defaultContext
|
||||
makeItem ""
|
||||
>>= loadAndApplyTemplate "templates/archive.html" archiveCtx
|
||||
>>= loadAndApplyTemplate "templates/default.html" archiveCtx
|
||||
>>= relativizeUrls
|
||||
|
||||
|
||||
match "index.html" $ do
|
||||
route idRoute
|
||||
compile $ do
|
||||
posts <- recentFirst =<< loadAll "posts/*"
|
||||
let indexCtx =
|
||||
listField "posts" postCtx (return posts) `mappend`
|
||||
defaultContext
|
||||
getResourceBody
|
||||
>>= applyAsTemplate indexCtx
|
||||
>>= loadAndApplyTemplate "templates/default.html" indexCtx
|
||||
>>= relativizeUrls
|
||||
|
||||
match "templates/*" $ compile templateBodyCompiler
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
postCtx :: Context String
|
||||
postCtx =
|
||||
dateField "date" "%B %e, %Y" `mappend`
|
||||
defaultContext
|
||||
|
||||
customPandocCompiler :: Compiler (Item String)
|
||||
customPandocCompiler =
|
||||
let customExtensions = extensionsFromList [Ext_latex_macros]
|
||||
defaultExtensions = writerExtensions defaultHakyllWriterOptions
|
||||
newExtensions = defaultExtensions `mappend` customExtensions
|
||||
writerOptions = defaultHakyllWriterOptions
|
||||
{ writerExtensions = newExtensions
|
||||
, writerHTMLMathMethod = MathML
|
||||
}
|
||||
in pandocCompilerWith defaultHakyllReaderOptions writerOptions
|
77
skills.org
Normal file
77
skills.org
Normal file
|
@ -0,0 +1,77 @@
|
|||
---
|
||||
title: "Skills in Statistics, Data Science and Machine Learning"
|
||||
---
|
||||
|
||||
|
||||
* Statistics
|
||||
|
||||
- Knowledge of Linear Models and Generalised Linear Models
|
||||
(including logistic regression), both in theory and in
|
||||
applications
|
||||
- Classical Statistical inference (maximum likelihood estimation,
|
||||
method of moments, minimal variance unbiased estimators) and
|
||||
testing (including goodness of fit)
|
||||
- Nonparametric statistics
|
||||
- Bootstrap methods, hidden Markov models
|
||||
- Knowledge of Bayesian Analysis techniques for inference and
|
||||
testing: Markov Chain Monte Carlo, Approximate Bayesian
|
||||
Computation, Reversible Jump MCMC
|
||||
- Good knowledge of R for statistical modelling and plotting
|
||||
|
||||
* Data Analysis
|
||||
|
||||
- Experience with large datasets, for classification and regression
|
||||
- Descriptive statistics, plotting (with dimensionality reduction)
|
||||
- Data cleaning and formatting
|
||||
- Experience with unstructured data coming directly from embedded
|
||||
sensors to a microcontroller
|
||||
- Experience with large graph and network data
|
||||
- Experience with live data from APIs
|
||||
- Data analysis with Pandas, xarray (Python) and the tidyverse (R)
|
||||
- Basic knowledge of SQL
|
||||
|
||||
* Graph and Network Analysis
|
||||
|
||||
- Research project on community detection and graph clustering
|
||||
(theory and implementation)
|
||||
- Research project on Topological Data Analysis for time-dependent
|
||||
networks
|
||||
- Random graph models
|
||||
- Estimation in networks (Stein's method for Normal and Poisson
|
||||
estimation)
|
||||
- Network Analysis with NetworkX, graph-tool (Python) and igraph (R
|
||||
and Python)
|
||||
|
||||
* Time Series Analysis
|
||||
|
||||
- experience in analysing inertial sensors data (accelerometer,
|
||||
gyroscope, magnetometer), both in real-time and in post-processing
|
||||
- use of statistical method for step detection, gait detection, and
|
||||
trajectory reconstruction
|
||||
- Kalman filtering, Fourier and wavelet analysis
|
||||
- Machine Learning methods applied to time series (decision trees,
|
||||
SVMs and Recurrent Neural Networks in particular)
|
||||
- Experience with signal processing functions in Numpy and Scipy
|
||||
(Python)
|
||||
|
||||
* Machine Learning
|
||||
|
||||
- Experience in Dimensionality Reduction (PCA, MDS, Kernel PCA,
|
||||
Isomap, spectral clustering)
|
||||
- Experience with the most common methods and techniques
|
||||
- Random forests, SVMs, Neural Networks (including CNNs and RNNs),
|
||||
both theoretical knowledge and practical experience
|
||||
- Bagging and boosting estimators
|
||||
- Cross-validation
|
||||
- Kernel methods, reproducing kernel Hilbert spaces, collaborative
|
||||
filtering, variational Bayes, Gaussian processes
|
||||
- Machine Learning libraries: Scikit-Learn, PyTorch, TensorFlow,
|
||||
Keras
|
||||
|
||||
* Simulation
|
||||
|
||||
- Inversion, Transformation, Rejection, and Importance sampling
|
||||
- Gibbs sampling
|
||||
- Metropolis-Hastings
|
||||
- Reversible jump MCMC
|
||||
- Hidden Markov Models and Sequential Monte Carlo Methods
|
64
stack.yaml
Normal file
64
stack.yaml
Normal file
|
@ -0,0 +1,64 @@
|
|||
# This file was automatically generated by 'stack init'
|
||||
#
|
||||
# Some commonly used options have been documented as comments in this file.
|
||||
# For advanced use and comprehensive documentation of the format, please see:
|
||||
# https://docs.haskellstack.org/en/stable/yaml_configuration/
|
||||
|
||||
# Resolver to choose a 'specific' stackage snapshot or a compiler version.
|
||||
# A snapshot resolver dictates the compiler version and the set of packages
|
||||
# to be used for project dependencies. For example:
|
||||
#
|
||||
# resolver: lts-3.5
|
||||
# resolver: nightly-2015-09-21
|
||||
# resolver: ghc-7.10.2
|
||||
#
|
||||
# The location of a snapshot can be provided as a file or url. Stack assumes
|
||||
# a snapshot provided as a file might change, whereas a url resource does not.
|
||||
#
|
||||
# resolver: ./custom-snapshot.yaml
|
||||
# resolver: https://example.com/snapshots/2018-01-01.yaml
|
||||
resolver: lts-12.18
|
||||
|
||||
# User packages to be built.
|
||||
# Various formats can be used as shown in the example below.
|
||||
#
|
||||
# packages:
|
||||
# - some-directory
|
||||
# - https://example.com/foo/bar/baz-0.0.2.tar.gz
|
||||
# - location:
|
||||
# git: https://github.com/commercialhaskell/stack.git
|
||||
# commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a
|
||||
# - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a
|
||||
# subdirs:
|
||||
# - auto-update
|
||||
# - wai
|
||||
packages:
|
||||
- .
|
||||
# Dependency packages to be pulled from upstream that are not in the resolver
|
||||
# using the same syntax as the packages field.
|
||||
# (e.g., acme-missiles-0.3)
|
||||
# extra-deps: []
|
||||
|
||||
# Override default flag values for local packages and extra-deps
|
||||
# flags: {}
|
||||
|
||||
# Extra package databases containing global packages
|
||||
# extra-package-dbs: []
|
||||
|
||||
# Control whether we use the GHC we find on the path
|
||||
# system-ghc: true
|
||||
#
|
||||
# Require a specific version of stack, using version ranges
|
||||
# require-stack-version: -any # Default
|
||||
# require-stack-version: ">=1.9"
|
||||
#
|
||||
# Override the architecture used by stack, especially useful on Windows
|
||||
# arch: i386
|
||||
# arch: x86_64
|
||||
#
|
||||
# Extra directories used by stack for building
|
||||
# extra-include-dirs: [/path/to/dir]
|
||||
# extra-lib-dirs: [/path/to/dir]
|
||||
#
|
||||
# Allow a newer minor version of GHC than the snapshot specifies
|
||||
# compiler-check: newer-minor
|
2
templates/archive.html
Normal file
2
templates/archive.html
Normal file
|
@ -0,0 +1,2 @@
|
|||
Here you can find all my previous posts:
|
||||
$partial("templates/post-list.html")$
|
32
templates/default.html
Normal file
32
templates/default.html
Normal file
|
@ -0,0 +1,32 @@
|
|||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Dimitri Lozeve - $title$</title>
|
||||
<link rel="stylesheet" href="/css/default.css" />
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<div class="logo">
|
||||
<a href="/">Dimitri Lozeve</a>
|
||||
</div>
|
||||
<nav>
|
||||
<a href="/">Home</a>
|
||||
<a href="/contact.html">Contact</a>
|
||||
<a href="/archive.html">Archive</a>
|
||||
</nav>
|
||||
</header>
|
||||
|
||||
<main role="main">
|
||||
<h1>$title$</h1>
|
||||
$body$
|
||||
</main>
|
||||
|
||||
<footer>
|
||||
Site proudly generated by
|
||||
<a href="http://jaspervdj.be/hakyll">Hakyll</a>
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
7
templates/post-list.html
Normal file
7
templates/post-list.html
Normal file
|
@ -0,0 +1,7 @@
|
|||
<ul>
|
||||
$for(posts)$
|
||||
<li>
|
||||
<a href="$url$">$title$</a> - $date$
|
||||
</li>
|
||||
$endfor$
|
||||
</ul>
|
11
templates/post.html
Normal file
11
templates/post.html
Normal file
|
@ -0,0 +1,11 @@
|
|||
<article>
|
||||
<section class="header">
|
||||
Posted on $date$
|
||||
$if(author)$
|
||||
by $author$
|
||||
$endif$
|
||||
</section>
|
||||
<section>
|
||||
$body$
|
||||
</section>
|
||||
</article>
|
Loading…
Add table
Add a link
Reference in a new issue