FRESH MEMORY
http://freshmemory.sourceforge.net

Fresh Memory is a tool for memorizing words. It manages flash cards organized into dictionaries. Both classical word drill and the spaced repetition methods are supported.

DESCRIPTION
=============================

Fresh Memory is an educational tool for studying foreign words or terms from a specific domain. The application manages a set of dictionaries, which can be loaded, created, modified and saved. The user can take several types of tests on basis of the loaded dictionary. The main tests are:
- Word drill
- Spaced repetition.
These tests will help to memorize new words or refresh old ones. The application works with Unicode characters (UTF-8) and therefore is not restricted to Latin letters.
The supported OSes are Linux and Windows. Also the project can be theoretically compiled under MacOS, as QT is used for its graphical interface.
 
This application makes powerful use of Object-oriented programming with C++ and the QT graphical library. All windows are implemented with Model-View-Controller pattern. The QT's built-in Model/View programming capabilities are used for displaying dictionaries in a table form. Other patterns that were used in this software are: Factory, Singleton. The source code was written with internationalization in mind. All string data used in the program can be easily translated to other languages using the standard QT internationalization tools.


REQUIREMENTS
=============================

Supported operating systems:
    Linux, Windows and MacOS.

Linux:
- qt >= 4.4
- gcc
- glibc

Windows:
- qt >= 4.4 (Open-source edition)
    http://trolltech.com/downloads/opensource/appdev/windows-cpp
- MinGW
    http://www.mingw.org


COMPILATION
=============================

    qmake
    make release

The resulting binary "freshmemory" (or "freshmemory.exe") will be found in the root directory.


INSTALLATION
=============================

    make release-install

Linux: To install, use the root account or sudo environment.


DOCUMENTATION
=============================

The automatically generated documentation is available with Doxygen. To generate it, type in the root directory:

    doxygen

Doxygen requirements:
- doxygen
    http://www.stack.nl/~dimitri/doxygen
- graphviz
    http://www.graphviz.org

Start browsing the documentation from:
    doc/doxy/html/index.html


USAGE
============================

freshmemory [OPTIONS] [DICTIONARY]

Argument:
    DICTIONARY  - a dictionary filename to be loaded.

Options:
    --version, -v       Prints version information and quits.
    --help, -h          Prints help page and quits.

Dictionary files use .fmd extension. You can bind this extension to Fresh Memory for easy opening of your dictionaries.
    
On Windows, output to console is possible only in the debug version. Compile it with:
    make debug

The user's study data (.fms files) is saved to a user-specific private directory.
On Linux and MacOS, it is
    ~/.config/freshmemory/study/
On Windows, it is:
    %APPDATA%\freshmemory\study\
By default, this directory is:
    C:\Documents and Settings\<User>\Application data\freshmemory\study\
    

WEBSITE
=============================

    http://freshmemory.sourceforge.net
    
    
BUGS AND FEEDBACK
=============================

Please, post bugs here:
    https://sourceforge.net/tracker2/?group_id=203660&atid=986488    

Submit feature requests here:
    https://sourceforge.net/tracker2/?group_id=203660&atid=986491
    

SUBVERSION
=============================

Check out fresh sources:
    svn co https://freshmemory.svn.sourceforge.net/svnroot/freshmemory/trunk freshmemory

Backup the whole SVN repository:
    rsync -avz freshmemory.svn.sourceforge.net::svn/freshmemory/* freshmemory-svn
