Skip to content

Commit 082ef94

Browse files
committed
updating static site generators page
1 parent fd8a71f commit 082ef94

File tree

4 files changed

+63
-22
lines changed

4 files changed

+63
-22
lines changed

all.html

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3047,12 +3047,13 @@ <h2>How do static website generators work?</h2>
30473047
as input then combine them to output a set of static HTML files.</p>
30483048
<p><img src="theme/img/pelican-flow.jpg" width="100%" alt="Example of how static site generators work with a markup language and templates." class="technical-diagram"></a></p>
30493049
<h2>What's the downside to using static site generators?</h2>
3050-
<p>The major downside is that the code is not dynamic, so you won't be able to
3051-
do many seemingly-necessary tasks provided by running an application created
3052-
with a traditional <a href="/web-frameworks.html">web framework</a>. Any content that
3053-
is typically powered by a database, such as comments, sessions and user data
3054-
can only be done through third party services. For example, if you want to
3055-
have comments on a static website you'd need to
3050+
<p>The major downside is that code cannot be executed after a site is created.
3051+
You are stuck with the output files so if you're used to building web
3052+
applications with a traditional <a href="/web-frameworks.html">web framework</a> you'll
3053+
have to change your expectations. </p>
3054+
<p>Content that is typically powered by a database, such as comments, sessions
3055+
and user data can only be handled through third party services. For example,
3056+
if you want to have comments on a static website you'd need to
30563057
<a href="https://disqus.com/">embed Disqus's form</a> and be completely reliant upon
30573058
their service.</p>
30583059
<p>Many web applications simply cannot be built with only a static site generator.
@@ -3061,7 +3062,7 @@ <h2>What's the downside to using static site generators?</h2>
30613062
If done right, those web applications have the potential to scale better than
30623063
if every page is rendered by the WSGI server. The complexity may or may not be
30633064
worth it for your specific application.</p>
3064-
<h2>Python static site generator implementations</h2>
3065+
<h2>Python implementations</h2>
30653066
<p>Numerous static website generators exist in many different languages. The
30663067
ones listed here are primarily coded in Python.</p>
30673068
<ul>
@@ -3074,6 +3075,14 @@ <h2>Python static site generator implementations</h2>
30743075
AsciiDoc are supported with the default configuration.</p>
30753076
</li>
30763077
<li>
3078+
<p><a href="http://www.mkdocs.org/">MkDocs</a>
3079+
(<a href="https://github.com/mkdocs/mkdocs/">source code</a>) uses a YAML configuration
3080+
file to take Markdown files and an optional theme to output a documentation
3081+
site. The templating engine is Jinja, but a user doesn't have to create her
3082+
own templates unless a custom site is desired at which point it might make
3083+
more sense to use a different static site generator instead.</p>
3084+
</li>
3085+
<li>
30773086
<p><a href="http://posativ.org/acrylamid/">Acrylamid</a>
30783087
(<a href="https://github.com/posativ/acrylamid">source code</a>) uses incremental
30793088
builds to generate static sites faster than recreating every page after
@@ -3114,6 +3123,11 @@ <h3>Static site generator resources</h3>
31143123
<a href="http://www.smashingmagazine.com/2015/11/modern-static-website-generators-next-big-thing/">why static website generators are the next big thing</a>.
31153124
I'd argue static website generators have been big for a long time now.</p>
31163125
</li>
3126+
<li>
3127+
<p><a href="http://www.mattmakai.com/introduction-to-pelican.html">Getting started with Pelican and GitHub pages</a>
3128+
is a tutorial I wrote to use the Full Stack Python source code to create
3129+
and deploy your first static site.</p>
3130+
</li>
31173131
</ul>
31183132
<h1>Data</h1>
31193133
<p>Data is an incredibly broad topic but it can be broken down into many

feeds/all.atom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<feed xmlns="http://www.w3.org/2005/Atom"><title>Matt Makai</title><link href="http://www.fullstackpython.com/" rel="alternate"></link><link href="http://www.fullstackpython.com/feeds/all.atom.xml" rel="self"></link><id>http://www.fullstackpython.com/</id><updated>2015-11-04T16:49:14Z</updated></feed>
2+
<feed xmlns="http://www.w3.org/2005/Atom"><title>Matt Makai</title><link href="http://www.fullstackpython.com/" rel="alternate"></link><link href="http://www.fullstackpython.com/feeds/all.atom.xml" rel="self"></link><id>http://www.fullstackpython.com/</id><updated>2015-11-05T09:16:58Z</updated></feed>

source/content/pages/04-web-development/16-static-site-generator.markdown

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,14 @@ as input then combine them to output a set of static HTML files.
4747

4848

4949
## What's the downside to using static site generators?
50-
The major downside is that the code is not dynamic, so you won't be able to
51-
do many seemingly-necessary tasks provided by running an application created
52-
with a traditional [web framework](/web-frameworks.html). Any content that
53-
is typically powered by a database, such as comments, sessions and user data
54-
can only be done through third party services. For example, if you want to
55-
have comments on a static website you'd need to
50+
The major downside is that code cannot be executed after a site is created.
51+
You are stuck with the output files so if you're used to building web
52+
applications with a traditional [web framework](/web-frameworks.html) you'll
53+
have to change your expectations.
54+
55+
Content that is typically powered by a database, such as comments, sessions
56+
and user data can only be handled through third party services. For example,
57+
if you want to have comments on a static website you'd need to
5658
[embed Disqus's form](https://disqus.com/) and be completely reliant upon
5759
their service.
5860

@@ -64,7 +66,7 @@ if every page is rendered by the WSGI server. The complexity may or may not be
6466
worth it for your specific application.
6567

6668

67-
## Python static site generator implementations
69+
## Python implementations
6870
Numerous static website generators exist in many different languages. The
6971
ones listed here are primarily coded in Python.
7072

@@ -75,6 +77,13 @@ ones listed here are primarily coded in Python.
7577
primary templating engine is Jinja and Markdown, reStructuredText and
7678
AsciiDoc are supported with the default configuration.
7779

80+
* [MkDocs](http://www.mkdocs.org/)
81+
([source code](https://github.com/mkdocs/mkdocs/)) uses a YAML configuration
82+
file to take Markdown files and an optional theme to output a documentation
83+
site. The templating engine is Jinja, but a user doesn't have to create her
84+
own templates unless a custom site is desired at which point it might make
85+
more sense to use a different static site generator instead.
86+
7887
* [Acrylamid](http://posativ.org/acrylamid/)
7988
([source code](https://github.com/posativ/acrylamid)) uses incremental
8089
builds to generate static sites faster than recreating every page after
@@ -108,3 +117,7 @@ ones listed here are primarily coded in Python.
108117
[why static website generators are the next big thing](http://www.smashingmagazine.com/2015/11/modern-static-website-generators-next-big-thing/).
109118
I'd argue static website generators have been big for a long time now.
110119

120+
* [Getting started with Pelican and GitHub pages](http://www.mattmakai.com/introduction-to-pelican.html)
121+
is a tutorial I wrote to use the Full Stack Python source code to create
122+
and deploy your first static site.
123+

static-site-generator.html

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,12 +63,13 @@ <h2>How do static website generators work?</h2>
6363
as input then combine them to output a set of static HTML files.</p>
6464
<p><img src="theme/img/pelican-flow.jpg" width="100%" alt="Example of how static site generators work with a markup language and templates." class="technical-diagram"></a></p>
6565
<h2>What's the downside to using static site generators?</h2>
66-
<p>The major downside is that the code is not dynamic, so you won't be able to
67-
do many seemingly-necessary tasks provided by running an application created
68-
with a traditional <a href="/web-frameworks.html">web framework</a>. Any content that
69-
is typically powered by a database, such as comments, sessions and user data
70-
can only be done through third party services. For example, if you want to
71-
have comments on a static website you'd need to
66+
<p>The major downside is that code cannot be executed after a site is created.
67+
You are stuck with the output files so if you're used to building web
68+
applications with a traditional <a href="/web-frameworks.html">web framework</a> you'll
69+
have to change your expectations. </p>
70+
<p>Content that is typically powered by a database, such as comments, sessions
71+
and user data can only be handled through third party services. For example,
72+
if you want to have comments on a static website you'd need to
7273
<a href="https://disqus.com/">embed Disqus's form</a> and be completely reliant upon
7374
their service.</p>
7475
<p>Many web applications simply cannot be built with only a static site generator.
@@ -77,7 +78,7 @@ <h2>What's the downside to using static site generators?</h2>
7778
If done right, those web applications have the potential to scale better than
7879
if every page is rendered by the WSGI server. The complexity may or may not be
7980
worth it for your specific application.</p>
80-
<h2>Python static site generator implementations</h2>
81+
<h2>Python implementations</h2>
8182
<p>Numerous static website generators exist in many different languages. The
8283
ones listed here are primarily coded in Python.</p>
8384
<ul>
@@ -90,6 +91,14 @@ <h2>Python static site generator implementations</h2>
9091
AsciiDoc are supported with the default configuration.</p>
9192
</li>
9293
<li>
94+
<p><a href="http://www.mkdocs.org/">MkDocs</a>
95+
(<a href="https://github.com/mkdocs/mkdocs/">source code</a>) uses a YAML configuration
96+
file to take Markdown files and an optional theme to output a documentation
97+
site. The templating engine is Jinja, but a user doesn't have to create her
98+
own templates unless a custom site is desired at which point it might make
99+
more sense to use a different static site generator instead.</p>
100+
</li>
101+
<li>
93102
<p><a href="http://posativ.org/acrylamid/">Acrylamid</a>
94103
(<a href="https://github.com/posativ/acrylamid">source code</a>) uses incremental
95104
builds to generate static sites faster than recreating every page after
@@ -130,6 +139,11 @@ <h3>Static site generator resources</h3>
130139
<a href="http://www.smashingmagazine.com/2015/11/modern-static-website-generators-next-big-thing/">why static website generators are the next big thing</a>.
131140
I'd argue static website generators have been big for a long time now.</p>
132141
</li>
142+
<li>
143+
<p><a href="http://www.mattmakai.com/introduction-to-pelican.html">Getting started with Pelican and GitHub pages</a>
144+
is a tutorial I wrote to use the Full Stack Python source code to create
145+
and deploy your first static site.</p>
146+
</li>
133147
</ul>
134148
<h3>What else do you want to learn about Python web dev?</h3>
135149
<div class="row">

0 commit comments

Comments
 (0)