The Repository Module was created as part of the DotNetNuke project in 2005, whereby a third party product - created for free download by a developer - Steve Fabian, was donated to the core (which is what we call the modules that are part of the range of DotNetNuke offerings)
It's initial module format required changing to fit within the DotNetNuke methodology and a project team was put together to allow interested parties to participate in a viable and practical way to integrate this great module to be able to be managed,installed and developed in the same method as all DotNetNuke modules.
This module, with it's name that some people ask questions about - is simply a diverse download tool with the options of providing ratings, comments, multi user uploads and moderation.
The Repository Module can also be skinned and themed in different ways as displayed, to make it's functionality reach a wide range of website requirements.
Although not installed with the core DotNetNuke framework, it is in fact one of the great modules we're finding now integrating with DotNetNuke, making it an even more diverse and useful solution for many people.
It is a two module installation, with the actual management running from the repository module itself, and a dashboard, allowing you to place short information abou the downloads available on separate pages.
You'll find the word dashboard used a few times here, as we also look at ecommerce other download modules that are available.
The DotNetNuke Repository Module gives users an indication of what we know as 'templating' and 'token based management' in a module. What this means in less technical wording is it is a method in which we can reuse information in different way. For example - we might need a 'gallery' styled section on our website to allow us to display downloads, a brief description of a product, and link to a download or an external URL.
Token based methodology gives you a set of core information that can be styled and placed in different ways to allow a design to suit your site.
Sometimes there are restrictions - for example - the 'heading' section of a module that might have the title and a 20 word overview, an rss feed, and perhaps a thumbnail of the item on display, can be styled in a certain way, displayed in a certain way but can ONLY be used as a 'heading' so you can't use a 'token' that is setup for 'headings' anywhere but in the 'heading' section of the template.
Having said that - enhanced token developers may choose to put in elements in both the 'heading' and the 'content' or, perhaps the 'footer' where you can choose to show the same information but in different parts of the module.
The tokenised approach also usually allows you to hide information - so you could in fact have the same module displaying a stylish 'business card' look, or a 'download directory' or even a 'for sale' directory by mixing and matching the different pieces of code in 'templates' that come with the module.
Some modules handle this better than others. The repository is a good name for it 'generic' functionality, but I prefer the Property Agent module from http://www.ventrian.com where, as a subcriber based product, is well developed, offers a huge amount of 'customisation' and from this single Property Agent module, we have built out a jobs module, houses for sale, cars for sale, downloads directory and showcase... just to name a few.
The reason we use third party solutions in this instance is we need faster upgrade times and sometimes working with the open source projects, the time to see these upgrades takes too long and in a commercial sense, it's not practical.
However, the repository module is an excellent introduction to how token based development works.