Search results
Supported file formats
Supported file formats
Knowledge Base structure
Article to explain how the ResourceSpace Knowledge Base is structured to assist with finding content specific for the reader
Background information
ResourceSpace is a fully featured Digital Asset Management Solution released under an Open Source License
Open source
ResourceSpace Digital Asset Management System: Open Source, Open Culture, Free Software, Free Forever
Language options
ResourceSpace is a platform that supports multiple languages and allows users to change their language preferences. The platform can detect and suggest the default language based on the user's browser.
Special search terms
Special search terms help users to find content in a much more specific and controlled manner, either through giving them extra tools or using a prebuilt search.
User research requests
Research requests enable users to ask admins for help in sourcing resources. Users can fill out a form detailing what they need, and administrators can then help them to find suitable resources. This can be done by either providing them with a list of resources or by sending them links to searches or collections to help them get their search started.
Advanced metadata field configuration
This page covers the advanced options for metadata field configuration including display templates, smart featured collections, display conditions, autocomplete options and additional settings for ExifTool and IPTC metadata.
Edit filters
Edit filters are used to determine if users in a group can edit resources based on the metadata in the resource. The existing 'e0' (or e1, e2 etc.) permissions must be used first to open up edit access.
Derestrict filters
The article discusses the use of derestrict filters in ResourceSpace, which allows users to access resources that would normally be restricted to them. This feature is useful when some users need to access only a few resources within the system while being completely restricted from all others.
Video tracks
The Video Tracks plugin for ResourceSpace enables users to create custom video files in alternative formats/codecs, including subtitle and audio track files that have been uploaded as alternative files for a video resource.
do_search
The article provides a description of the do_search function, which is used to perform a search and return matching resources. The function takes several variables, including the search string, resource type IDs, results order, archive status, maximum number of rows to return, sort order, and offset.
Installing on CentOS Linux
The article provides a guide for installing ResourceSpace on CentOS Linux. The installation process involves updating the system, installing MySQL Community Repo, and then installing mysql-server. Other packages that need to be installed include httpd, php, php-dev, php-gd, php-mysql, php-mbstring, subversion, vim, nano, ghostscript, ImageMagick, poppler, ExifTool, and FFmpeg.
Installing on macOS
The article provides a step-by-step guide to install ResourceSpace on macOS. The installation process involves installing Homebrew, programs, and dependencies, PHP extensions using pecl, enabling PHP in Apache, configuring PHP, creating a database, checking out ResourceSpace, and finishing the installation via a web browser.
Customising the top level navigation
This article provides instructions on how to customise the top-level navigation in ResourceSpace. To add additional top navigation links, users can enter the code in the config.php file or in "Config Override" if setting this on a per-group basis.
Managing plugins
ResourceSpace is a digital asset management system that can be extended or modified using plugins. Plugins have a managed structure that makes it easy for third parties to write and for site administrators to maintain, even as function and bug fixes are applied to the base code.
Creating custom reports
ResourceSpace allows users to create custom reports by writing SQL queries. Reports can be created in Admin > System > Reports, and existing reports can be viewed and edited from the same location. Users can create reports that show resources pending submission, and reports that allow date range selection.
LibreOffice integration for Microsoft Office previews
The article provides instructions on how to install and use Unoconv, a utility that allows conversion between different document formats in Open Office. The article explains that in order to preview files in common office document formats such as .
StaticSync - keep your files in situ
StaticSync is a tool that allows users to keep their files in situ, meaning that they can remain in their existing folder structure. It is not intended to be used as a way to store resources externally to increase storage capability.
Translations
The article provides a guide on how to create an official standard translation and a custom translation for a system. Before starting an official translation, it is important to verify that no other translator is already working with the language.
Google Vision
The Google Vision API plugin sends images to Google's Cloud Vision API on upload and sets appropriate metadata in pre-configured fields based on what has been recognised in the image. The plugin can be found under the 'Asset processing' category.
search_get_previews
The article describes the search_get_previews function, which is used to perform a search and return matching resources including URLs for the requested preview sizes. The function takes several variables, including the search string, resource type IDs, results order, archive status, maximum number of rows to return, sort order, recent search day limit, preview sizes, and preview file extension.
Simple SAML
This plugin allows users to log on to ResourceSpace using a SAML compliant single sign-on (SSO) Identity Provider (IdP)
Google VR View
Google VR View is a plugin that displays previews of 360-degree images and videos using the Google VR View browser API. The plugin is supported on modern versions of Chrome, Opera, Safari, Firefox, IE 11 and Edge on Windows, macOS, Linux, Android and iOS.
Metadata read/write mapping
ResourceSpace can map between embedded metadata stored in original files and the metadata fields in ResourceSpace itself. This synchronisation can be two-way, so that imported metadata can be automatically extracted into a configured field, but also that metadata added to the resource after import is written back to the file at download.
How to back up your ResourceSpace installation
Ensure that your ResourceSpace open source Digital Asset Management system has appropriate backups in place.
Falcon link
The Falcon Link plugin allows users to publish resources as templates in Falcon.io. However, users must have an account with Falcon.io to use this plugin. The plugin creates a share link with no expiration date instead of copying the file itself when a resource is published to Falcon.
IIIF
IIIF is an API specification that aims to improve interoperability between digital image repositories. ResourceSpace provides basic support for the IIIF presentation API, which was originally created to link with the TMS plugin to enable publishing of resources related to a specified TMS object as a IIIF manifest.
set_node
The article provides information on the set_node function, which is used to create a new node in ResourceSpace. The function requires the ID of the node to be updated, the ID of the related metadata field, and the name of the node.
Image banks
The Image Banks plugin allows users to search external image banks for photos without having to navigate manually to the external system. Users can run searches in the external image bank using the simple search box and the dropdown selector called "Search external image banks".
General installation requirements
ResourceSpace requires a MySQL compliant database, a web server, and PHP to operate on the LAMP stack. The supported versions of PHP are 7.4, 8.0, and 8.1, and the following PHP extensions are required: php-mysqli, php-curl, php-dom, php-gd, php-intl, php-mbstring, php-xml, php-zip, php-ldap, php-imap, php-json, php-apcu, and php-cli.
What file formats can be uploaded to ResourceSpace?
ResourceSpace allows any type of file to be uploaded except for banned extensions such as php, cgi, pl, exe, asp, jsp, sh, and bash. The list of banned extensions can be changed using the config option $banned_extensions.
TMS link
Help for setting up the tms_link plugin.
Resource commenting
Resource commenting can be enabled in ResourceSpace by using the config option $comments_resource_enable. This feature adds a new area below the resource metadata, allowing users to add and respond to comments about the resource.
Google Analytics
ResourceSpace has added support for Google Analytics in its version 10.1, allowing users to track website activity such as session duration, pages visited per session, bounce rate, exit rate, and the source of traffic.
MuseumPlus
MuseumPlus is a web-based museum management system that provides real-time museum management and fully documents any type of collection and all related workflow. The system can be integrated with ResourceSpace, a digital asset management system, through its API.
Coding standards v2.1
The article provides coding standards for developers working on the ResourceSpace project. The standards cover various aspects of coding, including security, documentation, functionality, PHP version, MySQL strict mode, backward compatibility, file format, coding style, indentation, line length, control structures, function calls, function definitions, MySQL statements, readability of code blocks, returning early, and avoiding cross-site scripting vulnerabilities.
3. File sizes and formats
When we click on a resource we are shown all the available metadata for that resource, and also a list of available versions.
Complete Guide to Crafting Effective Brand Guidelines
Discover the importance of brand guidelines to differentiate your business and ensure your products stand out from competitors.
Data only resource types
Data only resources are metadata-only resources that do not have an associated file. They can be used to store a record or set of data that does not directly relate to a specific asset. Data only resources can be configured to provide a PDF of metadata based on templates that must be set up by the system administrator and placed in the filestore under system/pdf_templates as an HTML file.
Project structure
A breakdown of the folders used within ResourceSpace, and their typical contents and function.
Wordpress integration
A new WordPress plugin has been developed that allows users to embed resource files from ResourceSpace in their posts. The plugin was funded by ADRA International and developed by Codecide. To install the plugin, users should download the WordPress plugin zip file, navigate to Plugins->Add plugins from the WordPress Admin menu and click 'Upload plugin', or manually upload the zip file to the wp-content/plugins directory of the WordPress installation.
ResourceSpace software design principles
ResourceSpace, an open-source digital asset management software, has outlined its design principles for developers. The principles include the KISS (Keep It Simple Stupid) principle, which advises against implementing complex solutions when a simple one will suffice, and avoiding introducing new technology when existing technology will suffice.
Modals
Calling and using modals
save_collection
The "save_collection" API binding allows users to save collection data. The API requires a POST request to avoid URL limits being reached. The API requires two variables: "$ref" and "$coldata". "$ref" is the ID of the collection, and "$coldata" is the JSON encoded collection data.
Automatic alternative video files
ResourceSpace can be configured to automatically generate a video file in a different size or format from the uploaded original. This can be useful where a smaller size is required for uploading to the web.
relate_all_resources
The "relate_all_resources" function is used to relate all the provided resources with each other. This function is used to support the "$relate_on_upload" configuration option. The function takes a comma-separated list of resource IDs as input and returns a boolean value indicating whether the operation was successful or not.
The Digital Asset Management Buyer's Guide
In this guide we look at what DAM software actually is, the problems it solves and some questions to ask a vendor before making a buying decision.
Integrating with BrandStencil
Instantly create marketing materials from templates using your DAM images thanks to ResourceSpace's integration with BrandStencil.
Upgrading PHP versions
ResourceSpace has updated its PHP requirement to version 7.4 for its version 10.0 to maintain compatibility with the third-party file uploader library (Uppy) and to maintain security. The company has warned that PHP 7.
API Webhooks
API Webhooks is a plugin that allows developers to synchronise data between ResourceSpace and third-party systems. The plugin enables remote scripts to be called from within ResourceSpace, allowing users to drive the timing of the synchronisation between the two systems.
A Comprehensive Guide to Digital Curation: Tools and Techniques
Explore digital curation: key tools and techniques for preserving significant cultural assets.
Navigating Consent and Digital Asset Management
Discover how your organisation can navigate consent and Digital Asset Management (DAM), including ensuring legal compliance and protecting user privacy.
Can I change which fields are shown in List view?
The article explains that most metadata fields can be added as column headings in list view on the search results page. This can be done through configuration in the back end of the system. If the user has a support contract, they can ask their account manager to set it up for them.
Configuring image alternatives
The article discusses configuring image alternatives using the "$image_alternatives" configuration option, similar to video file alternatives. This setting controls the options for ImageMagick utility to create alternative image formats/sizes.
SAML
Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorisation data between parties, specifically between an identity provider and a service provider. In the context of Digital Asset Management (DAM) systems like ResourceSpace, SAML is often used to facilitate Single Sign-On (SSO) capabilities.
Managing files with Microsoft SharePoint? You could do more with DAM
Is your organisation still using Microsoft SharePoint for digital asset management? You could do so much more with a dedicated DAM system.
OpenAI Image Editing
The OpenAI image editing plugin is integrated with DALL-E 2 to enable AI image editing within ResourceSpace. Users can access the editing option in the resource tools on the resource view page. The plugin requires the OpenAI GPT plugin to be enabled with a valid key.
Creating controlled vocabularies in ResourceSpace
Controlled vocabularies in ResourceSpace standardize terminology for improved searchability. They are predefined lists of terms for metadata fields like Dublin Core elements. Benefits include consistency, search accuracy, error reduction, and interoperability.
CLIP AI Smart Search
The CLIP Visual Search plugin integrates OpenAI's CLIP model into ResourceSpace, enabling powerful visual similarity and natural language image searches based on image content rather than metadata. Features include natural language description searches, finding visually similar images by uploading examples, and detecting duplicates based on visual similarity scores.
Annotating resources
The article discusses the importance of annotating resources to enhance learning and research. It highlights how annotations can help in better understanding, organizing, and retaining information. The process involves adding notes, comments, and highlights to texts, documents, or other resources.
Whisper
Whisper is an open-source automatic speech recognition (ASR) system by OpenAI that transcribes audio and video files into text using deep learning models, all locally on your server for privacy. It ensures data security, compliance with regulations like GDPR, and can be used offline.
OpenAPI documentation
The article discusses OpenAPI documentation, specifically focusing on the endpoint /api/openapi.php. OpenAPI is a specification for building APIs, and /api/openapi.php is likely a specific endpoint for accessing OpenAPI documentation.
Table: keyword
Table: keyword
Table: report
Table: report
Table: resource_type
This article provides a table of the resource_type database schema used in ResourceSpace, a digital asset management system. The resource_type table contains information about the types of resources, such as photo, video, or case study, and determines the metadata fields that a resource has.
Table: user
The "user" table in ResourceSpace stores all user information, including their username, password, full name, email address, user group, and last activity date. It also includes information on whether the user is currently logged in, their browser user agent string, and their IP address.
Custom fields ("user" defined)
ResourceSpace, a digital asset management system, allows users to configure custom fields. These fields can be used to add additional metadata to assets, such as images or documents, and can be used to filter and search for specific assets.
iiif_get_canvases()
Developer reference for function iiif_get_canvases()
search_public_collections()
Developer reference for function search_public_collections()
collection_download_log_resource_ready()
Developer reference for function collection_download_log_resource_ready()
comments_submit()
Developer reference for function comments_submit()
process_config_options()
Developer reference for function process_config_options()
config_merge_non_image_types()
Developer reference for function config_merge_non_image_types()
get_tile_custom_style()
Developer reference for function get_tile_custom_style()
safe_file_name()
Developer reference for function safe_file_name()
sortmulti()
Developer reference for function sortmulti()
i18n_get_translated()
Developer reference for function i18n_get_translated()
node_field_options_override()
Developer reference for function node_field_options_override()
get_parent_nodes()
Developer reference for function get_parent_nodes()
resolve_pdf_language()
Developer reference for function resolve_pdf_language()
display_rsc_upload()
Developer reference for function display_rsc_upload()
get_plugin_path()
Developer reference for function get_plugin_path()
register_plugin()
Developer reference for function register_plugin()
render_search_field()
Developer reference for function render_search_field()
display_field()
Developer reference for function display_field()
render_date_range_field()
Developer reference for function render_date_range_field()
get_reports()
Developer reference for function get_reports()
do_report()
Developer reference for function do_report()
managed_collection_request()
Developer reference for function managed_collection_request()
get_resource_path()
Developer reference for function get_resource_path()
update_hitcount()
Developer reference for function update_hitcount()
set_resource_defaults()
Developer reference for function set_resource_defaults()
save_resource_data_multi()
Developer reference for function save_resource_data_multi()
update_field()
Developer reference for function update_field()
delete_resource()
Developer reference for function delete_resource()
update_resource()
Developer reference for function update_resource()
filter_match()
Developer reference for function filter_match()
get_original_imagesize()
Developer reference for function get_original_imagesize()
replace_resource_file()
Developer reference for function replace_resource_file()
copy_hitcount_to_live()
Developer reference for function copy_hitcount_to_live()
refine_searchstring()
Developer reference for function refine_searchstring()
search_special()
Developer reference for function search_special()
split_keywords()
Developer reference for function split_keywords()
resolve_keyword()
Developer reference for function resolve_keyword()
get_notification_users()
Developer reference for function get_notification_users()
featured_collection_check_access_control()
Developer reference for function featured_collection_check_access_control()
render_featured_collections_category_permissions()
Developer reference for function render_featured_collections_category_permissions()
Frequently Asked Questions (FAQs)
The most frequently asked questions about ResourceSpace, the free and open source Digital Asset Management system.
leaflet_osm_basemaps()
Description Generates OpenStreetMap basemaps for use in a Leaflet map. This function defines various tile layers from OpenStreetMap and related providers, setting properties such as caching, retina display support, maximum zoom levels, and attribution for each layer.
header_add_map_providers()
Description Adds map providers for Leaflet maps. This function generates a JavaScript snippet that defines various tile layer providers for use in Leaflet maps. It supports OpenStreetMap and ESRI basemaps, as well as custom providers defined in the global variable `$geo_leaflet_sources`.
rs_password_verify()
Description ResourceSpace verify password value is the actual value for that variable. Parameters Column Type Default Description $password string Password $hash string Password hash $data array Extra data required for matching hash expectations (e.
temp_local_download_remote_file()
Description Download remote file to the temp filestore location. Parameters Column Type Default Description $url string Source URL $key string "" Optional key to use - to prevent conflicts when simultaneous calls use same file name Return string|bool Returns the new temp filestore location or false otherwise.
Manage (system) tabs
The article provides guidance on managing system tabs in version 10+ of the system. Tabs can be used by metadata fields and resource types, and to manage them, users should go to Admin > System > Tabs.
columns_in()
The `columns_in()` function is a PHP function used in ResourceSpace, a digital asset management system. It returns a comma-separated list of table columns from a given table, with the option to use an alias instead of the table name to prefix the columns.
setup_search_chunks()
The function `setup_search_chunks()` allows `$fetchrows` to support an integer or array. If an integer is supplied, the search will receive the number of rows with no offset. If an array is supplied, the search will receive the number of rows to return and an offset, allowing for chunking of results.
admin_resource_type_field_option()
Parameters Column Type Default Description $propertyname string $propertytitle string $helptext string $type $currentvalue $fieldtype int $system_date_field bool $resource_type_array; $lang $baseurl_short $FIXED_LIST_FIELD_TYPES $daterange_edtf_support $allfields $newfield $resource_type_array $existingrestypes $regexp_slash_replace Location include/render_functions.
create_random_video()
Description Generate a random video which can be used during testing (e.g to upload, or create previews for) - duration (default: 5 seconds) - width (default: 300) - height (default: 300) - filename (default: random) - extension (default: mp4) - text -> Video content text (optional) Parameters Column Type Default Description $info: array $info array Set video parameters: Return array Returns an "error" key if something went wrong, otherwise provides some useful info (e.
compute_megapixel()
Description MP calculation Parameters Column Type Default Description $width int $height: int * 2; } /** $originalSize ?array null: string { global $lang $ffmpeg_supported_extensions; This article was last updated 12th March 2026 20:35 Europe/London time based on the source file dated 19th February 2026 15:50 Europe/London time.
render_resource_view_image()
Description Render image on view.php "access" - Resource access "edit_access" - Resource edit access Parameters Column Type Default Description $resource array Resource data $context array Array with following named elements Return void * Location include/render_functions.
set_search_order_by()
Description Validate and set the order_by for the current search from the requested values passed to do_search() Parameters Column Type Default Description $search string $order_by string $sort: string $sort string Return string * Location include/search_functions.
Brand Guidelines (v10.5+)
The article outlines the brand guidelines for version 10.5 and above. It covers essential information such as logo usage, color palette, typography, and design elements to maintain brand consistency. The guidelines emphasize the correct application of the logo in various formats and backgrounds, specifying clear space requirements and prohibited alterations.
leaflet_esri_basemaps()
Description Generates ESRI basemaps for use in a Leaflet map. This function defines various tile layers from ESRI, setting properties such as caching, retina display support, maximum zoom levels, and attribution for each layer.
cors_is_origin_allowed()
Description Checks if the origin matches a whitelist entry, supporting wildcards like ".example.com". Parameters Column Type Default Description $origin string The URL to check.
process_collection_download()
Description Generate a collection download ZIP file and the download filename This array will be updated and passed to subsidiary functions to keep track of processed file, generate text etc.
AI Faces (InsightFace)
The AI Faces plugin allows ResourceSpace to automatically detect and recognise people featured in images. This allows for quick and efficient automated tagging on upload.
TOTP (MFA via Google Authenticator)
The article introduces TOTP (Time-Based One-Time Password) as a plugin for enabling two-factor authentication (2FA) for selected user groups, adding an extra layer of security by requiring a temporary code along with the user's password.
get_annotate_fields()
Description Get (viewable) "annotate_fields" config. The configs' value is validated (e.g. view access, supported type, active RTF, excluded RT, etc.). Parameters Column Type Default Description array { : SORT_NUMERIC metadata_field_view_access.
create_annotated_pdf()
Description Create annotations PDF (old annotate plugin logic) Parameters Column Type Default Description $ref int $is_collection bool false $size string "letter" $cleanup bool false $preview bool false Location include/annotation_functions.