Vestri


Authored by Krystian "Rykard" Bates for the Worldforge Project
Last Updated Friday October 26 2001 at 13:34:50 EDT

Vestri is my latest 'in-the-works' project. The goal is to create a lightweight Content Repository mini-server, suitable for use as part of the back end to the WorldForge tool suite1. It is currently being written in C++, using Atlas as a communications protocol. The concept of the project is as follows:


  1. Use the standard WorldForge protocols and libraries whenever possible
  2. Usage of Vestri should be nearly, if not totally, user transparent. No user should have to muck around with setting it up
  3. Provide version control, kind of like a multi-session "Undo"
  4. Be as portable to all major OS (Unices, Win32, Mac OS)
  5. Have the ability to sort/classify documents by the use of meta-data
  6. Provide a web-browser accessible browse/download interface2
  7. Teach this enlightened newbie about network programming and Atlas

Vestri will be developed in stages. The targets for the stages are:

  1. Initial Stage
    1. Send and receive Atlas streams
    2. Read and write Atlas streams to/from a file
    3. Support a single connection
    4. Run on Linux
  2. Second Stage
    1. Index content files by meta-data and return that index on request
    2. Encapsulate content (similar to a RPM or DEB)
    3. Run on Linux and Win32
    4. Support at least 10 simultaneous connections
  3. Third Stage
    1. Run on all OSs
    2. Search by meta-data functionality
    3. Number of connections only limited by host
    4. Provide VCS services

As it stands, only the initial steps towards an Atlas connection have been taken. This document should be considered a rough design spec, and not a final implementation. I.e. All things are subject to change, and most likely will.







1 http://www.worldforge.org/dev/eng/editors/tool_suite

2 Most likely by interfacing Eidetic to the index file, or something similar