December 12, 2011

Announcing: CLiki2 public beta 2

CLiki, the Common Lisp wiki, is a good resource for finding out about Common Lisp libraries and other information. However, the code behind CLiki itself is hard to maintain and add features to.

Andrey Moskvitin and I have been working on a replacement wiki web application on and off for the past eight months. The first public beta came out in the summer. Since then, I've worked the software to the point where I think it's ready as a replacement to power CLiki.

The second beta of CLiki2 is now up at http://74.207.228.11/. Please try it out and let me know what you think. Bugs can be reported at https://github.com/archimag/cliki2/issues or by sending me email: vsedach@gmail.com

Most of the new features center around spam prevention:

  • Wikipedia-style history lists and diffs for all pages
  • Lists of edits by account/IP address
  • Blacklist of accounts and IP addresses
  • Atom change feeds for individual pages (as well as all of CLiki)
  • HTML tag filtering
Other new features include:
  • Real article deletion and undeletion
  • Code coloring using cl-colorize
  • Working list of uncategorized/orphan articles
  • Pages that work well in text browsers (and hopefully screen readers)
  • No JavaScript
Pages are marked up using a mixture of HTML (with some tags and attributes filtered out) as well as a slightly simplified form of CLiki syntax.

Behind the scenes, CLiki2 is powered by Hunchentoot, BKNR-datastore, and Nathan Froyd's diff library.

Source code is at https://github.com/vsedach/cliki2, and is licensed under the Affero GPL.

15 comments:

eMBee said...

looks nice. is it possible to improve the importer to set the original change date (and the user if that is available in the old cliki)

Vladimir Sedach said...

The importer preserves the modification times (but I think the ones before 2006 are set to sometime in 2006, maybe due to a server move that didn't preserve file modified dates).

The recent pages on the old CLiki has info with dates and authors to 2001, I'll see if I can get a hold of that.

andy128k said...

Некоторые проблемы с вёрсткой остались.

Luís said...

Nice job!

urn:recursive.not.org said...

The CLiki rewrite looks fantastic! Thanks so much for bringing the effort forward.

anwyn said...

The looks are certainly an improvement. It also is quite zippy.

andy128k said...

Для beta 2 слишком много багов. Тянет самое большее на alpha.

Jim said...

Curious if you had any comments on the choice of the Affero GPL?

Vladimir Sedach said...

I just pushed fixes to all the bugs discovered so far along with the importer improvement.

The imported articles now have summary and authorship info, and more accurate edit times, when available. It looks like the old CLiki in some cases has records of old revisions, but not old revisions themselves (nothing before 2004), or has the revision files, but has no records of those revisions being made.

About the choice of AGPL, Andrey and I discussed it early on. Actually, Andrey's site lisper.ru is licensed under the AGPL, so the AGPL is something we both think is a good idea for web applications.

eMBee said...

thanks for adding the names. any chance they could be set in the actual author fields so that clicking on a name would reveal that persons edits?

the old cliki has a field to set a name without logging in which i thought was a nice feature (just like for the comments on this page) but then it doesn't seem to have accounts, making all edits technically anonymous. it's probably not worth the effort to support both, but i am wondering about it anyways.

greetings, eMBee.

eMBee said...

i think the AGPL is a fine choice. it only means that anyone making a public website needs to have a public link to download the source from the website itself. if the website is not public, the download link also does not need to be public.

however to simplify that i wonder if cliki2 includes some functionality that would automatically pack up the sources in a tar-ball or zip file when the code is compiled, so that one does not have to worry about having to update the download source when changes are made to the code.

without that it could happen that people who make a site would just include a link to your original code without sharing any local changes, thus violating the license.

greetings, eMBee.

Vladimir Sedach said...

I thought about that, but then there would be no automated way for people to come in and claim those accounts for themselves (accounts are password-protected).

The other problems is that for a while the spammers were using other people's names to hide their spamming. There's more than a few spam edits claimed under my name. :)

Vladimir Sedach said...

There's a new URL for the beta site: http://cliki2-beta.cliki.net/

I talked to Drew Crampsie, the current maintainer of cliki.net, and we're planning a switchover on Wednesday 21 December. Please submit any bugs you have by Monday 19 December.

BTW, I forgot to thank Anastasiya Sterh for coming up with the new site design! She did a very good job.

Vladimir Sedach said...

UPDATE: cliki upgrade delayed until the week of the 26th due to unrelated circumstances. Also, the ALU wiki, McCLiki and SBCL-internals will all be upgraded.

eMBee said...

i can see that claiming names would be a problem since the old site had no passwords. an alternative could be to prefix all the old names with cliki1-. not sure if it's worth the effort though...

greetings, eMBee.