Everyone who ever wrote a scientific work knows that it is extremely important to keep track of all relevant books and articles that one encountered while researching the subject. Modern reference management software facilitates this job and helps you to make sure that all references in your manuscript are cited in the proper way. Pybliographer is a reference management application written in Python, offering both a command-line interface and a nice GUI variant, named Pybliographic.
You may choose from several different file formats, of which BibTeX is the most widely used. New database entries are added in Pybliographic by selecting the type of publication (e.g. article or book) and entering the relevant information like authors, title and year. If the fields available in the default input mask do not satisfy your needs, you may customize it by adding the desired ones. It is even possible to have a special field only for one single entry or making fields mandatory for all entries of a certain type. For BibTeX databases there is also the possibility to edit the database entries natively using a simple built-in text editor.
Once your bibliography has grown to a respectable size, you probably want to use the search function to retrieve database entries. You can search for the contents of various fields and browse the filtered bibliography database as if it were the full one. An advanced search mode allows even greater fine-tuning of the queries. Full text searches are supported as well. It is also possible to search external databases to directly import database entries. However, so far only MEDLINE is supported, effectively limiting this functionality to searches in medicine and biology.
Pybliographer lines up with many other free software projects that offer a good piece of software but poor documentation. The online help is rather sparse and mostly covers things that are self-explanatory anyway. The command-line interface is even less documented, as are the various options in the preferences dialog.
It is possible to access Pybliographer's functionality within a Python scripts. Basically this works the same way as using the command-line interface and there are a few example scripts helping to get you started.
In summary, Pybliographer is a great tool to handle small and large bibliography databases. Both undergraduate students writing their first thesis and experienced scientists should have a look at it.