Appendix 3: The project database

The project database is an index of projects related to the Open Toolkit. Every project in the database receives a unique project page and gains access to the issue tracker and the project release service.

All registered users may submit their own projects, subject to the following restrictions:

  1. Your project must use, extend or be somehow related to the Open Toolkit library.
  2. Your project must be released under an OSI approved license.

Closed-source and / or commercial projects will be reviewed by the Open Toolkit team and approved on a case by case basis.

By submitting a project to the database, you acknowledge that:

  1. This is a free service provided to the Open Toolkit community that comes without any warranty. In case there is any doubt, the OpenT Toolkit team does not offer you any warranty, express or implied, for the behavior of the project database, nor fitness of purpose towards any application. Keep backups!
  2. The Open Toolkit team maintains the right to remove any project from the database or terminate the whole database, for whatever reason, without prior notice.

Creating a project

Only registered users are allowed to create projects. To create a project, click on Create content -> Project and complete the required information:

  1. In the "project categories" section, click "Contributed" and select all relevant categories.
    • You can use the control key to select multiple categories.
    • If your project is closed-source or commercial, you must select the relevant categories.
    • Please do not use the "Core" category. It is reserved for the Open Toolkit.
  2. In the "full project name" field, type a descriptive name for your project (e.g. The Open Toolkit library).
  3. In the "full description" field, describe what your project is, what it does and any other information you deem relevant (e.g. requirements, features).
  4. In the "short project name" field, type a compact name for your project. This will be used in the URL of the project page and the issue tracker (e.g. project/opentk). Do not use spaces or any other special characters.
  5. Upload screenshots for your project. This step is very important, as users tend to avoid projects without or with low quality screenshots. If your screenshots display 3d graphics, you can improve their quality by enabling antialiasing and anisotropic filtering.
  6. Don't forget to add a link to the homepage of the project (if any), its source code repository and license!

Creating a project release

Once you have created a project, you can create a project release by clicking on Create content -> Project release.

The first step is to select your project from the drop-down list. Click next to proceed to the actual release page:

  1. Choose which OpenTK version your project targets. For example, if your project uses relies on OpenTK 0.9.5, you should choose 0.9.x here. If your project targets OpenTK 1.0 (not yet released at the time of writing), you should choose 1.0.x. This information is important, as it indicates whether different projects can be used together. Please note that OpenTK is backwards compatible, which means you should choose the lowest OpenTK version that can support your project.
  2. Fill in the release version. This should match the actual version in your project properties (you can view this information in Visual Studio by right-clicking your project, selecting properties and then "assembly information". Likewise for SharpDevelop and MonoDevelop). You can optionally add an exta identifier to convey more information (typical identifiers include "beta", "rc", "final" and "wip").
  3. Fill in the "body" textbox with your release notes.
  4. Optionally, you can upload your release to opentk.com using the file field. Please consult with us before uploading releases bigger than 20MB! If your release is very large, consider using a torrent for distribution.

    You can also redirect the downloads to an external resource (e.g. your own homepage or sourceforge), by using a html redirect. Copy the following code to a file named [project name]-[release number].html (e.g. opentk-0.9.5.html), edit the necessary links and upload it through the "file" field:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    	<head>
    		<title>Redirecting to download.</title>
    		<meta http-equiv="REFRESH" content="0;url=http://www.example.com" />
    	</head>
    	<body>Redirecting to the <a href="http://www.example.com">download page</a>.</body>
    </html>