For discussion of Alpine Linux development and developer support

[alpine-devel] Alpine website redesign ideas

Natanael Copa
Details
Message ID
<20140704160853.7e6f6f9d@ncopa-desktop.alpinelinux.org>
Sender timestamp
1404482933
DKIM signature
missing
Download raw message
Hi,

I have played with a static website generator. Simple Lua scripts that
converts markdown and mustache template to static html pages.

The goal is to get rid of any php or any dynamic served pages for our
main website. This will make our site snappy without relying on php
cache memcached or other smart cache technologies. The data we present
is mostly static anyways and I like the idea of keeping the content in
git. Not to mention the security improvement... No sql -> no sql
injections. no code running -> runtime bugs.

Work in progress scripts here:
http://git.alpinelinux.org/cgit/ncopa/mksite-alpine/

Work in progress demo with new logo:
http://wwwtest.alpinelinux.org/


Some basic design concepts:

* the links out of the site (eg to other alpine sites like git.a.o,
  wiki.a.o etc) are collected in the header to the right. This way we
  might be able to use same header for all sites if we get to 

* The logo is a webfont so it is scalable. It should look good on the
  biggest highresolution screen and it should be small. Same with the
  icons used on page (they are from font awesome)

* Try keep design as clean and simple as possible. (this becomes a
  challenge when there comes more information to be presented)

* The bottom navigation bar is completely removed.
  (http://wiki.alpinelinux.org/wiki/Alpine_Linux:Site_improvements)

Some generator concept ideas:

* The idea is that i will git push content (news), a trigger will send a
  message to a website build server, which git pulls and runs make and
  uploads the static pages.

* A hook that pulls down information from new releases can pull release
  information from
  http://rsync.alpinelinux.org/alpine/latest-stable/releases/x86_64/latest-releases.yaml
  and generate update download links for the frontpage and downloads
  page.

* A hook that publishes either the latest packages (like we do now) on
  mirror upload event or we post last git commits as "Latest
  development". I'm not sure if we are interested to present last
  uploaded package or last commit in aports. I think git commit is more
  useful?

* Package browser can also be static pages with package information
  generated from a Makefile. I have some basic ideas how to do this.


Some unresolved things we need to fix:

* script to import release notes from drupal.

* script to generate an index of the news/posts.

* script/makefile to generate the package browser pages.

* fetch last git commits to present them on front page (or if we prefer
  the last uploaded/built packages listed)

* a script that fetches last release yaml file and generate download
  links for out 'downloads' page.

* Maybe move some of the content from wiki to www.a.o.

* What do we do with the forum? Switch to fluxbb or similar?

* create themes for redmine, mediawiki, cgit, and the forum software we
  end up with. and lists.alpinelinux.org ofcourse.

* add support for 'discuss' for user comments?

Other ideas or opinions?

If there are people with experience who would like to work on this,
please let me know.

-nc


---
Unsubscribe:  alpine-devel+unsubscribe@lists.alpinelinux.org
Help:         alpine-devel+help@lists.alpinelinux.org
---