• Stars
    star
    830
  • Rank 52,925 (Top 2 %)
  • Language
    Java
  • License
    BSD 3-Clause "New...
  • Created about 12 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

(Official) The DSpace digital asset management system that powers your Institutional Repository

DSpace

Build Status

DSpace Documentation | DSpace Releases | DSpace Wiki | Support

Overview

DSpace open source software is a turnkey repository application used by more than 2,000 organizations and institutions worldwide to provide durable access to digital resources. For more information, visit http://www.dspace.org/

DSpace consists of both a Java-based backend and an Angular-based frontend.

Prior versions of DSpace (v6.x and below) used two different UIs (XMLUI and JSPUI). Those UIs are no longer supported in v7 (and above).

  • A maintenance branch for older versions is still available, see dspace-6_x for 6.x maintenance.

Downloads

Documentation / Installation

Documentation for each release may be viewed online or downloaded via our Documentation Wiki.

The latest DSpace Installation instructions are available at: https://wiki.lyrasis.org/display/DSDOC7x/Installing+DSpace

Please be aware that, as a Java web application, DSpace requires a database (PostgreSQL) and a servlet container (usually Tomcat) in order to function. More information about these and all other prerequisites can be found in the Installation instructions above.

Running DSpace 7 in Docker

NOTE: At this time, we do not have production-ready Docker images for DSpace. That said, we do have quick-start Docker Compose scripts for development or testing purposes.

See Running DSpace 7 with Docker Compose

Contributing

See Contributing documentation

Getting Help

DSpace provides public mailing lists where you can post questions or raise topics for discussion. We welcome everyone to participate in these lists:

Great Q&A is also available under the DSpace tag on Stackoverflow

Additional support options are at https://wiki.lyrasis.org/display/DSPACE/Support

DSpace also has an active service provider network. If you'd rather hire a service provider to install, upgrade, customize or host DSpace, then we recommend getting in touch with one of our Registered Service Providers.

Issue Tracker

DSpace uses GitHub to track issues:

Testing

Running Tests

By default, in DSpace, Unit Tests and Integration Tests are disabled. However, they are run automatically by GitHub Actions for all Pull Requests and code commits.

  • How to run both Unit Tests (via maven-surefire-plugin) and Integration Tests (via maven-failsafe-plugin):
    mvn install -DskipUnitTests=false -DskipIntegrationTests=false
    
  • How to run only Unit Tests:
    mvn test -DskipUnitTests=false
    
  • How to run a single Unit Test
    # Run all tests in a specific test class
    # NOTE: failIfNoTests=false is required to skip tests in other modules
    mvn test -DskipUnitTests=false -Dtest=[full.package.testClassName] -DfailIfNoTests=false
    
    # Run one test method in a specific test class
    mvn test -DskipUnitTests=false -Dtest=[full.package.testClassName]#[testMethodName] -DfailIfNoTests=false
    
  • How to run only Integration Tests
    mvn install -DskipIntegrationTests=false
    
  • How to run a single Integration Test
    # Run all integration tests in a specific test class
    # NOTE: failIfNoTests=false is required to skip tests in other modules
    mvn install -DskipIntegrationTests=false -Dit.test=[full.package.testClassName] -DfailIfNoTests=false
    
    # Run one test method in a specific test class
    mvn install -DskipIntegrationTests=false -Dit.test=[full.package.testClassName]#[testMethodName] -DfailIfNoTests=false
    
  • How to run only tests of a specific DSpace module
    # Before you can run only one module's tests, other modules may need installing into your ~/.m2
    cd [dspace-src]
    mvn clean install
    
    # Then, move into a module subdirectory, and run the test command
    cd [dspace-src]/dspace-server-webapp
    # Choose your test command from the lists above
    

License

DSpace source code is freely available under a standard BSD 3-Clause license. The full license is available in the LICENSE file or online at http://www.dspace.org/license/

DSpace uses third-party libraries which may be distributed under different licenses. Those licenses are listed in the LICENSES_THIRD_PARTY file.

More Repositories

1

dspace-angular

DSpace 7.x (and later) User Interface built on Angular.io
TypeScript
116
star
2

vagrant-dspace

(No longer actively maintained. Replaced by Docker compose in main codebase.) DSpace + Vagrant. Quickly spin up a virtual machine (via Vagrant) which is "DSpace development ready"
Shell
39
star
3

RestContract

REST Contract for DSpace 7 (and above)
34
star
4

xoai

OAI-PMH Java Toolkit
Java
28
star
5

dspace-api-lang

API Language Packs (Multilingual Support / I18N)
Perl
17
star
6

dspace-xmlui-lang

(OBSOLETE) XMLUI Language Packs (Multilingual Support / I18N) for DSpace 6.x and below
14
star
7

DSpace-SVN-Deprecated

OBSOLETE mirror/sync of the DSpace SVN repository. This repo was previously known as DSpace/DSpace prior to 2012-03-26, but has been deprecated and renamed. Please use the Correct/Official DSpace GitHub repo now located at: https://github.com/DSpace/DSpace. You should unwatch and unfork this repo, and watch the other DSpace/DSpace repo. Please contact dspace-tech if you have questions on how to cherry-pick commits made to forks from this repo to the new DSpace/DSpace. Finally, this DSpace-SVN-Deprecated repo will be deleted in the next few weeks.
Java
10
star
8

webmvc

OBSOLETE experimental user interface called WebMVC. Uses Spring WebMVC to provide clean seperation between controller and view. Was built as a part of a Google Summer of Code project but has been unadopted/unsupported since then.
Java
5
star
9

ResourceSyncJava

Java library for creating and serialising ResourceSync documents
Java
3
star
10

puppet-dspace

(No longer actively maintained. Replaced by Docker compose in main codebase.) A basic Puppet module to install DSpace (and common prerequisites).
Puppet
3
star
11

dspace-solr

(OBSOLETE) Special, slightly-customized build of Apache Solr for DSpace 6.x and below. Replaced by out of the box Solr in DSpace 7.
Java
3
star
12

dspace-replicate

DSpace Replication Task Suite - Backup/restore DSpace to/from DuraCloud or mounted drive
Java
2
star
13

dspace-release

OBSOLETE. This was an early GitHub experiment that never came to fruition. The dspace/dspace directory which is used for source releases
XSLT
2
star
14

dspace-services

OBSOLETE codebase for DSpace Services Framework. As of version 3.0 it was merged into the main DSpace codebase and can now be found at https://github.com/DSpace/DSpace/tree/master/dspace-services.
Java
1
star
15

vagrantbox-ubuntu

(OBSOLETE. No longer maintained) A Vagrant project useful for generating a custom Vagrant base-box.
1
star
16

Remote-Handle-Resolver

A storage plugin for the Handle System resolver. It ships all operations to remote DSpace instances.
Java
1
star
17

DSpaceResourceSync

DSpace implementation of the ResourceSync standard
Java
1
star
18

dspace-geoip

(OBSOLETE. Replaced by com.maxmind.geoip2) This project builds & deploys MaxMind GeoIP releases (http://sourceforge.net/projects/geoip/) to Maven Central for DSpace
1
star