Publist is a small set of PHP scripts that automates many of the chores involved in maintaining and presenting an online publication list. Here are some of Publist's main features:
- Generates pretty-printed HTML description of publications
- Allows sorting of publications by type, date, author, area, or potentially any other criterion
- Allows publication sub-lists using any selection criterion (e.g. area)
- Full support of HTML4 and CSS3 formatting
- Allows embedded HTML in publication fields (enabling URLs, colors, fonts,...)
- Includes script to read BibTeX format and convert to XML
- Automatic generation of BibTeX files from publication data
- Automatic linking to downloadable paper, presentation, BibTeX, abstract and more
- 'Reference' mode allows HTML citing of papers just like with BibTeX
- Automatically tags as 'New' publications within the last few months (configurable)
- Support for team and individual pages from same database
- XML (and JSON) input allows simple extension to new fields or types of publications
- Use macros for commonly occurring string substitutions
- Optional admin interface to edit publications directly from the web
To see how a full publication list with sort options looks like, check out my publications page. To see how you can use arbitrary selection criteria to embed partial publication lists in an HTML document, have a look at my research page. A demo page is also available to see how numbered references can be added to a page.
Clone or download the repository:
git clone https://github.com/eitanf/publist
To use publist, you need to create or convert your publication list in XML or JSON format. Instructions and examples on how to do this are found in format.html.
Having created the list, you'll need to set up publication page(s). This might be as simple as
renaming your existing HTML page to a .php extension and adding 2–5 lines to it depending on
what and how you want to present your publications. You may also want to set up directories with
downloadable files such as papers, presentations, and abstracts. Instructions on how to do all
this can be found in usage.html.
To get a feeling for what publications pages look like at the source level, you can find PHP
examples in the examples/ directory. Open them with an editor (not a browser) to see the PHP
code.
| Version | Date | Main features/changes |
|---|---|---|
| 2.1 | 2026-04-03 | JSON input support; code refactoring |
| 2.0 | 2014-08-08 | Major update: customization through .ini file and CSS; non-publication list support; admin interface; many smaller improvements |
| 1.2 | 2005-06-14 | New tag and functions to print team and author lists; string support similar to BibTeX's @string; various small fixes |
| 1.1 | 2005-03-02 | New bib2xml script converts BibTeX to Publist XML; minor presentation changes |
| 1.0a | 2005-01-01 | Changed display of "periodical" and "workshop" types; documentation fixes |
| 1.0 | 2004-12-28 | First official release: added "periodical" type; fixed bookchapter and book support |
| 0.97 | 2004-12-19 | Added "New" tagging for publications from last n months |
| 0.96 | 2004-08-09 | Added "Jump to" links bar |
| 0.95 | 2004-01-05 | Added "thesis" type |
| 0.94a | 2003-09-17 | Documentation fixes |
| 0.94 | 2003-07-07 | Added generic selection querying |
| 0.93 | 2003-06-27 | Added links to source and reviews (with password protection) |
| 0.92 | 2003-06-09 | Documentation completed, first beta |
| 0.91 | 2003-06-05 | Added Reference mode |
| 0.90 | 2003-05-15 | XML parsing, sorting, and selection querying |
Copyright 2003–2026 by Eitan Frachtenberg (email: publist@frachtenberg.org)
Distributed under the terms of the GNU General Public License v. 2 (see file COPYING). This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.