Welcome to the iVia Web site. This site hosts the iVia tools, including the iVia Virtual Library Software, the Nalanda iVia Focused Crawler, DataFountains, and the four iVia C++ libraries: the libiViaCore general-purpose library, the libiViaInvertedIndex inverted index library, the libiViaOaiPmh OAI-PMH library, and the libiViaMetadata automatic metadata assignment library.

iVia is Free Software, distributed under the terms of the GNU General Public License and the GNU Lesser General Public License. Most of our software is developed in C++ on the Debian GNU/Linux operating system.

iVia Software

The iVia Project concluded in April 2009. All source code is available for download at SourceForge.net except libiViaMetadata (Hosted locally, 1899 MB file)

The iVia Virtual Library Software

iVia is a complete Portal or Virtual Library Software package written by iVia Research and Development Group of the library of the University of California, Riverside. The INFOMINE Scholarly Internet Resource Collection was the original user.


DataFountains is a a tool for discovering and describing Internet resources through the use of three distinct Crawlers: Expert Guided Crawler, Targeted Link Crawler, and the Nalanda iVia Focused Crawler. Written in C++, Data Fountains is a powerful supplement to Digital Libraries, Internet Portals, and Library Catalogs with Portal-like capabilities. Data Fountains supports metadata export in CSV (SDF), OAI-PMH v2, MARC record, and template based XHTML.

Nalanda iVia Focused Crawler

The Nalanda iVia Focused Crawler (NIFC) is a Focused Web Crawler designed to find Web resources with the same topic as a seed set of known resources. It uses preferential focused crawling to achieve a very efficient crawl. NIFC was created by Dr. Soumen Chakrabarti at the Indian Institute of Technology (Bombay), and further developed in collaboration with the iVia team.


libiViaCore is a free C++ library containing a diverse set of utility functions and classes developed by the iVia Project. See Documentation for details.


libiViaInvertedIndex is a C++ library that can be used to implement efficient word-based, fielded searches and fast, word level, inverted indexes. See Documentation for details.


libiViaClassification is a C++ library that can contains classes, functions, and utilites related to text classification. See Documentation for details.


libiViaOaiPmh is a C++ library that can be used to implement programs that use The Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH) as servers (data providers) or clients (harvesters). See Documentation for details.


libiViaMetadata is a C++ library that provides a set of classes and functions for assigning descriptive metadata to Web pages, PDF documents, Poscript documents, and Plain text documents. See Documentation for details.


The iVia, DataFountains and NSDL iVia Projects have been generously funded by the National Science Digital Library of the National Science Foundation, the National Leadership Grant Program of the U.S. Institute of Museum and Library Services, the Fund for the Improvement of Post-Secondary Education of the U.S. Department of Education and the Library of the University of California, Riverside.


This publication is sponsored by a Sub-award with the University Corporation for Atmospheric Research (UCAR) under the sponsorship of the National Science Foundation (NSF). Any opinions, findings and conclusions or recommendations expressed in this publication are those of the author(s) and do not necessarily reflect the views of NSF or UCAR.