The compiled website project is a document management engine that builds a website.
It's core philosophy is to have less "moving parts" and a shorter "chain of trust" by relying on as few intermediate steps and tools as possible. See also the compiled website reasoning.
- Like a wiki, only better
-
- Automated linking and a trivial markup language. No learning curve.
- For the full feature list, see the compiled website demo.
- No database or file format
-
- Everything is stored as plain text files, editable with your own favourite editor. No local web server or special setup needed.
- No server-scripting or hosting requirements
-
- Plain .html files are the fastest and most secure form of website possible.
- Locally-edited, remotely-mirrored
-
- The whole site is always safe on your computer and is accessed as fast as any other document. No loading screens or waiting to edit.
- No need for a net connection to surf or edit.
- Few tools/dependencies
- As powerful as you want
-
- Full HTML is always available for complex tasks. You can even use your favourite HTML editor to help.
- A simple but smart design
-
- A centralized column, with the header at the top. Left/right columns waste space.
- A body which can expand and contract to the user's screen real estate. A limit to the width it'll expand to, so lines of text don't become unreadably long on a large screen.
- Everything is passed through HTML Tidy to guarantee a standards-compliant and SEO-friendly website.
- Easily-selected styles which are remembered as the user surfs.
- Intelligent features
-
- An automated table of contents with links to each section.
- A sitemap is automatically-generated.
But it's not finished and isn't available yet. See the compiled website to do and compiled website bugs.
I have a very limited knowledge of Ruby, and so I just took what I knew and worked with it. I'm not necessarily doing anything "The Ruby Way", nor am I following best practises. For example, I do know that I should be separating things out into individual classes, but I was never able to comprehend that stuff. I'll take a stab at that much later. I'd rather be implementing some other core features before I bother.
At the moment I'm doing testing "the hard way". I know that various test suites exist, but I'd rather build my own at this point.
Usage §
Technologies §
JavaScript §
See JavaScript for those.
Alternatives and Comparisons §
There are a number of tools which I've bumped into. Some of these I've had extensive experience with, and others I've just toyed with. Maybe someone else out there would appreciate my research and can use this info.
Some wiki engines:
I've had personal experience with these and probably a half-dozen others.. I haven't thought about making a list of them until now.
Other tools:
- Shell scripting (bash, zsh) and the common *nix tools: cat, grep, sed, awk, etc.
- txt2tags is a document generator. It reads a text file with minimal markup as **bold** and //italic// and converts it to a number of formats.
- AsciiDoc is a text document format for writing short documents, articles, books and UNIX man pages. AsciiDoc files can be translated to HTML and DocBook markups.
- [1] Jekyll is a simple, blog-aware, static site generator. It takes a template directory (representing the raw form of a website), runs it through Textile or Markdown and Liquid converters, and spits out a complete, static website suitable for serving with Apache or your favorite web server. This is also the engine behind GitHub pages, which you can use to host your project's page or blog right from GitHub.


