Contributor - gpdoud/ams-client GitHub Wiki

Being a contributor

This page explains how to contribute to the project. It should be read and understood by anyone wishing to work on this project.

Prerequisite software required

To work on the project, there is a set of software that you'll need on your workstation. It is all free, but if you don't already have it, expect to spend some time downloading and installing it. )

SQL Server

The current database for AMS is SQL Server 2017 Express though any version of SQL Server 2017 will do. You can do the express install to get everything setup.

It is very helpful, but not required, that you also install SQL Server Management Studio (SSMS) 2017. Maintaining the data in SQL Server can be done within Visual Studio, but is easier with SSMS.

SQL Server 2017 Express Download
SQL Server Management Studio 2017 Download

Configuring SQL Server for SQL Authentication

While in development mode, it is fine to rely on the default Windows authentication mode, but in production, the application uses SQL authentication which is NOT turned on by the default installation. It is suggested that, at least for future development work, the SQL Server allow SQL authentication also.

  1. Open SQL Server Management Studio
  2. Right-click the top node in the Object Explorer and select Properties
  3. In Server Properties, select Security
  4. In Server Authentication, select SQL Server and Windows Authentication Mode
  5. Click OK
  6. Click OK to message about changes not taking effect until SQL Server is restarted
  7. Win+R to open run dialog
  8. Type services.msc and enter (services display)
  9. Scroll down to SQL Server (SQLEXPRESS)
  10. Right-click and click Restart
  11. Close services
  12. Restart SSMS and login
  13. In Object Explorer, expand Security
  14. Right-click on Logins and select New Logins
  15. In Login name type ams
  16. Click on SQL Server authentication
  17. In Password and Confirm Password type ams
  18. Uncheck Enforce Password Policy
  19. Click Server Roles (select a page)
  20. Check sysadmin
  21. Click Ok

Node.js

Node is required to develop with Angular. Generally, you should have the long-term support (LTS) version of node.

Node

Typescript

Typescript is the language used to develop Angular the product and the language used to develop with Angular. It is not absolutely required to download Typescript separately for the project at this time, but it is likely that we'll want to upgrade the version of Typescript used in the application.

Note: contributors should not upgrade components like Typescript without specific tasks specifying to do so.

npm install typescript -g

Angular

Contributors should install the current version of Angular even though the project was built with an older version of Angular. We want the ability to upgrade the components at any time. Installing Angular requires the Node is installed.

npm install @angular/cli -g

Visual Studio

Visual Studio 2017 is required for the back-end development and for testing and problem diagnosis. The community edition is just fine for this project.

Visual Studio 2017 Community Edition Download

Programmer Editors

While you can work on the front-end using Visual Studio, it is recommended to use a lighter weight programmer's editor for the task. The two recommended are Sublime Text 3 and Visual Studio Code. Both of these editors provide excellent productivity and have plug-ins that provide syntax highlighting and colorizing.

Sublime Text 3 Download Visual Studio Code Download

For any editor, hopefully there are plug-ins available. You should install those related to:

  • Angular (not AngularJS)
  • Typescript

Pulling the repos from GitHub

The first step is to clone the two repos from GitHub to your workstation