# include the module
        use NOTEDB;

        # create a new NOTEDB object
        $db = new NOTEDB("text", "/home/tom/.notedb", 4096, 24);

        # decide to use encryption
        # $key is the cipher to use for encryption
        # $method must be either Crypt::IDEA or Crypt::DES
        # you need Crypt::CBC, Crypt::IDEA and Crypt::DES to have installed.

        # do not use encryption
        # this is the default

        # get a single note
        ($note, $date) = $db->get_single(1);

        # search for a certain note
        %matching_notes = $db->get_search("somewhat");
        # format of returned hash:
        #$matching_notes{$numberofnote}->{'note' => 'something', 'date' => '23.12.2000 10:33:02'}

        # get all existing notes
        %all_notes = $db->get_all();
        # format of returnes hash like the one from get_search above

        # get the next noteid available
        $next_num = $db->get_nextnum();

        # modify a certain note
        $db->set_edit(1, "any text", "23.12.2000 10:33:02");

        # create a new note
        $db->set_new(5, "any new text", "23.12.2000 10:33:02");

        # delete a certain note

        # turn on encryption. CryptMethod must be IDEA, DES or BLOWFISH
        $db->use_crypt("passphrase", "CryptMethod");

        # turn off encryption. This is the default.


You can use this module for accessing a note database. This backend uses a text file for storage and Config::General for accessing the file.

Currently, \s-1NOTEDB\s0 module is only used by note itself. But feel free to use it within your own project! Perhaps someone want to implement a webinterface to note...


please see the section \s-1SYNOPSIS\s0, it says it all.


Thomas Linden <[email protected]>.