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.
- Open SQL Server Management Studio
- Right-click the top node in the Object Explorer and select Properties
- In Server Properties, select Security
- In Server Authentication, select SQL Server and Windows Authentication Mode
- Click OK
- Click OK to message about changes not taking effect until SQL Server is restarted
- Win+R to open run dialog
- Type
services.msc
and enter (services display) - Scroll down to SQL Server (SQLEXPRESS)
- Right-click and click Restart
- Close services
- Restart SSMS and login
- In Object Explorer, expand Security
- Right-click on Logins and select New Logins
- In Login name type
ams
- Click on SQL Server authentication
- In Password and Confirm Password type
ams
- Uncheck Enforce Password Policy
- Click Server Roles (select a page)
- Check sysadmin
- Click Ok
Node.js
Node is required to develop with Angular. Generally, you should have the long-term support (LTS) version of 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