Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: add information about the REST Hands-on

...

There are no installation requirements for either workshop. However, if you wish to be active in the "hands-on" portions

  • Angular: you may wish to install the DSpace 7 UI locally (and perform "hands-on" changes on your own laptop);
  • REST: you may wish to install the Postman REST Client https://www.getpostman.com/downloads/

Please be aware that, as we have over 40 workshop attendees, we unfortunately cannot promise any "hands-on" support on an individual basis.  But, we still welcome you to turn use this as an opportunity to try some "hands-on" changes.

Handons on the new DSpace UI

Optional Installation

During the code walkthrough, we will be working directly with the dspace-angular project (this is the DSpace 7 UI, built on Angular).  However, don't worry. It's rather easy to install, and you do not need to install the DSpace backend (as we will be using the public, demo REST API as our backend).

Installing the DSpace 7 UI locally

(These instructions are based on the dspace-angular README)

...

That's it! Again, there is no need to have the DSpace backend running or install a database, Java, Tomcat or any of the other usual DSpace prerequisites.

Creating a branch for the exercises

To follow along with the exercises run the following git commands in the project directory to get the correct starting point

...

  1. Revert all existing files to their state at the start:

    • git reset or2019-basic-start --hard
  2. Remove any newly created files

    • git clean -f -d
  3. Sync with the solution

    • git merge $TAG_NAME

Optional Development Tools

While not required, the following tools may make it easier to do basic development with the Angular UI.

  • Chrome web browser : When developing an Angular application, all web browsers are not created equal. While you obviously should use other browsers to help test your application, Chrome has built in debugging/visualization tools that come in handy when doing Angular development. Make sure you disable cache in your network tab and keep the inspect element open.
  • An IDE : If you wish to do much Angular development (especially for the "Advanced Workshop"), you may want an IDE (Integrated Development Environment) or an editor that understands the TypeScript language.  Here's a few we prefer. Just choose ONE. If you have no strong preference, you may want to start with Visual Studio Code.
    • Visual Studio Code (Free) : This is a TypeScript IDE from Microsoft (the makers of TypeScript). It's frequently used for Angular development, even by some of the main Angular developers, and provides an excellent debugger for Chrome (which you may also wish to install for easier debugging)
    • Intellij (Requires a license) : If you use IntelliJ already for other development work, IntelliJ IDEA Ultimate has TypeScript support. You could also use WebStorm, IntelliJ's Javascript IDE
    • Atom.io (Free) : This is an advanced text editor from the makers of GitHub. If you install the Typescript language plugin, it acts a little more like a basic IDE for TypeScript / Angular (providing autocomplete and highlighting).  However, be forewarned that it doesn't have the debugging capabilities of Visual Studio Code or IntelliJ.
    • Any other editor or IDE that provides either TypeScript or Angular 2 support.

Solution tags

Click on the commit hashes for each of the tags in the "releases" to see all code changes for each of the steps of the workshop:

https://github.com/DSpace-Labs/dspace-angular-workshops/releases

Handons on the new REST API

We will experiment with the public demo using the HAL browser and the Postman REST Client. The Postman REST Client can be downloaded from here the free version is all you need. During the code walkthrough, we will be looking directly to the dspace-spring-rest project (this is the DSpace 7 maven module providing the REST API). However, don't worry. We will not perform any real JAVA coding or compilation, and you do not need to install the DSpace backend (as we will be using the public, demo REST API).

Hands-on exercises will be based on the REST 7 Tutorial

Additional Resources

...