From Tim Donohue, DSpace Tech Lead, on behalf of the DSpace 7 team

Austin, TX  Over the past month, developers and technologists from DuraSpace, Atmire, 4Science, Texas A&M and other institutions have established a DSpace 7 UI Working Group with the goals of creating a new Angular 2 user interface (UI) and refactoring the REST API to support such a dynamic user experience. These efforts were born from the ideas presented at Open Repositories 2016 (see slides from the “Introducing the New DSpace User Interface” talk).

We are now on the lookout for institutions or individuals excited to join the team crafting the next generation UI for DSpace!

Specifically, we are seeking collaborators in the following areas:

  1. Developers / Technologists excited to contribute to Angular UI development are encouraged to join the DSpace 7 UI Working Group. Angular experience is not required, though we ask you come with a desire to learn! The Angular UI subteam is led by Art Lowel of Atmire, and meets biweekly (meeting attendance not required to participate).

  2. Developers / Technologists excited to contribute to REST API refactoring/development are also encouraged to also join the DSpace 7 UI Working Group. Java experience is recommended, though we are also looking for individuals with experience in designing REST APIs. The REST API subteam is led by Andrea Bollini of 4Science, and meets biweekly (meeting attendance not required to participate).

  3. Non-developers interested in joining the DSpace 7 Outreach Group to help us get the word out about DSpace 7, and generate further excitement and interest in this effort. This group meets biweekly. Contact Carol Minton Morris (cmmorris@duraspace.org) if you would like to attend.

If you are interested in joining the DSpace 7 team, please get in touch! We have recently (soft) launched a new DSpace Slack team. Invites are available by visiting https://goo.gl/forms/s70dh26zY2cSqn2K3. Sign up for Slack to participate in DSpace 7 and/or be notified of upcoming meetings.

For those interested in simply receiving updates, don’t worry. The team will also provide ongoing progress updates to all mailing lists, along with an update at the Open Repositories 2017 conference (and likely other conferences or webinars). Our first such update can be found just below.

DSpace 7 Technology Updates

As noted, we're building an Angular 2 application to serve as the new, single UI for DSpace 7. Angular 2 is a framework by Google for building large scale applications for the browser.

The app is/will be written in TypeScript, a language that extends ES6 (modern Javascript standard) with types and annotations, and “compiles” to plain JavaScript. TypeScript will look familiar to .NET and Java developers. It allows for much better IDE integration than plain JavaScript and ensures a lot of issues are prevented or detected long before the code reaches the browser.

We're also using Angular Universal, which allows an Angular 2 application to be rendered on the server as well as the client. This speeds up the initial page load, and ensures DSpace 7 instances can be crawled by any search engines and meet accessibility guidelines (e.g. readable by screen readers), even though it's a JavaScript app.

If you're interested and want to contribute, take a look at our github or wiki. If you're willing to help, but don't have any previous experience with these technologies, you're still welcome. We're gathering links to articles and tutorials on our wiki to help people get up to speed. Here’s a few developer resources to help you get started:

To better support the new Angular UI, the REST API will also be modernized. The aim is to provide a REST API that is easier to maintain, understand and extend, while also updating to utilize modern best practices and frameworks. The current discussion/analysis of technologies and goals of the REST work is available at https://docs.google.com/document/d/1dAPjq6xSy7A5Q_xXIxLXgJ2VqugFpxeSmMmvbr2mM5M/edit?usp=sharing