Add a philosophy doc.

This commit is contained in:
Parker Moore 2017-01-17 18:51:49 -05:00
parent 2052280ccd
commit 2c19264d08
No known key found for this signature in database
GPG Key ID: 193CDEBA72063C58
1 changed files with 41 additions and 0 deletions

41
docs/philosophy.md Normal file
View File

@ -0,0 +1,41 @@
---
title: Philosophy
---
Jekyll offers a unique philosophy when approaching the problem of static
site generation. This core philosophy drives development and product
decisions. When a contributor, maintainer, or user asks herself what Jekyll
is about, the following principles should come to mind:
### 1. No Magic
Jekyll is not magic. A user should be able to understand the underlying
processes that make up the Jekyll build without much reading. It should
behave "as you'd expect."
### 2. It "Just Works"
The out-of-the-box experience should be that it "just works." Run `gem
install jekyll` and it should build any Jekyll site that it's given.
Features like auto-regeneration and settings like the markdown renderer
should represent sane defaults that work perfectly for the vast majority of
cases. The burden of configuration should not be placed on the user.
### 3. Content is King
Why is Jekyll so loved by content creators? It focuses on content first and
foremost, making the process of publishing content on the Web easy. Users
should find the management of their content enjoyable and simple.
### 4. Stability
If a user's site builds today, it should build tomorrow.
Backwards-compatibility should be strongly preferred over breaking changes.
Upon breaking changes, provide a clear path for users to upgrade.
### 5. Small & Extensible
The core of Jekyll should be simple and small, and extensibility should be
a first-class feature to provide added functionality from community
contributors. The core should be kept to features used by at least 90% of
userseverything else should be provided as a plugin.