EMBOSS: The Project Documents


Developers Documentation

These documents are subject to revision.

Browse the Source Code

The library source code is also indexed in SRS as databases. For functions you can browse EFUNC and for datatypes you can use EDATA.

Draft or Old Documents for local use only

Programs/Libraries that need work

This is a list of programs and libraries that you could usefully volunteer to work on.

Further Developers Documentation

Example Program

The first EMBOSS application written was very simple. Called "seqret", it simply asks for an input sequence and an output sequence. It reads the input sequence, and writes it to the output sequence. Both can have any file name and format supported by EMBOSS. In effect "seqret" is the EMBOSS equivalent of "readseq".

Command Syntax

The EMBOSS command syntax is defined by the AJAX Command Definition language.

AJAX Command Definitions (ACD)

All EMBOSS applications depend on a complete user interface definition in an ACD (AJAX Command Definition) file. The ACD file specifies all the information the application needs. A single library call parses the definition, checks the command line, and prompts the user for any values still needed.

The ACD specification is relatively simple at present, but covers all the major data types required by EMBOSS applications. New data types can be easily added.

Guide to Writing EMBOSS Application

There is a fine document taking you step-by-step through the various libraries, setup files, style and techniques involved in Programming EMBOSS Applications.

The AJAX Library

AJAX is the core library used by all EMBOSS applications. It covers standard data structures, including strings, sequences, filehandles, queues, hashes, heaps, lists, dictionaries, trees and dynamic arrays. It also covers standard algorithms including comparisons, pattern matching, sorting, and iterators.

AJAX will also provide a set of high level graphics functions suited to the needs of sequence analysis applications.

The NUCLEUS Library

NUCLEUS provides functions specific to sequence analysis, including sequence comparisons, translation, codon usage and annotation.

Project Documentation

Application documentation is on the applications page.

Weekly progress meetings are held on Mondays in Hinxton. Anyone visting the campus is welcome to attend.

Mailing Lists

Bug reports should be sent to the EMBOSS Support Team emboss-bug@embnet.org

In addition, there are two mailing lists for EMBOSS which users can join.