⚠ This page is served via a proxy. Original site: https://github.com
This service does not collect credentials or authentication data.
Skip to content

A public application code sample for Angular that uses OAuth Authorization Code Flow with Proof Key for Code Exchange to avoid storing the SKY Application client secret in code

Notifications You must be signed in to change notification settings

blackbaud/sky-api-tutorial-public-application-angular

Repository files navigation

Blackbaud SKY Developer Public Application using Angular

This project was generated with Angular CLI version 20.2.14.

Getting started

  1. Update the clientId and subscriptionKey variables in shared/services/authorization.service.ts to the keys obtained from your Developer Account and registered application.
  2. This example takes advantage of the SKY Developer Cohort. You may may need to change the constituentId in home/home.component.ts to a valid constituent ID from the environment you selected during OAuth Authorization.

Development server

If you are building your first Angular application, follow the instructions for setting up your local environment for Angular development. Below are some additional details you may find helpful for setting up your environment.

Angular CLI SKY UX requires Angular CLI version 20. To check your version, run ng version from the command line. To install Angular CLI version 20, run npm install -g @angular/cli@20.

Node.js SKY UX requires Node.js version 20. To check your version, run node -v from the command line.

In addition, SKY UX recommends Node Version Manager (NVM) to wrap your Node.js installation. NVM installs Node.js in your user directory to avoid permissions-related issues, and it also allows you to easily upgrade and manage multiple Node.js versions.

For Mac OS X and Linux, follow the installation and update instructions in the README.md file for the NVM GitHub repo. For Windows, follow the installation and update instructions in the README.md file for the NVM for Windows GitHub repo. NPM

SKY UX requires NPM version 10, which is the default JavaScript package manager for Node.js. As of Node.js version 0.6.3, it is bundled and installed automatically with the environment. To check your version, run npm -v from the command line. To install a specific version, run npm install globally and specify the version.

Run npm install to install all the needed dependencies.

Run ng serve for a dev server. Navigate to http://localhost:5000/. The application will automatically reload if you change any of the source files.

Using the application

  1. If you have no SKY API access tokens, then the application will automatically redirect you to the Blackbaud SKY API OAuth flow to authorize the application in the environment of your choosing. If you do not have access to your own Blackbaud environment, you can request access to the following SKY Developer Cohort sandboxes.
  2. After gaining an access token, you will be redirected to the home page where constituent data is displayed.
  3. You may create a new access token or clear the existing access tokens.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

Build

Run ng build to build the project. The build artifacts will be stored in the dist/ directory.

Running unit tests

Run ng test to execute the unit tests via Karma.

Running end-to-end tests

Run ng e2e to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.

Further help

To get more help on the Angular CLI use ng help or go check out the Angular CLI Overview and Command Reference page.

About

A public application code sample for Angular that uses OAuth Authorization Code Flow with Proof Key for Code Exchange to avoid storing the SKY Application client secret in code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •