This readme is read-only. Do not change.
This document is intended for the project manager to help guide initial project setup. This document is intended for developers who want to understand the core tooling used for this project.
All code documentation should be written inline using JSDoc syntax.
- Install plugins for your IDE to work with these tools
- EditorConfig
- TSlint / ESlint
- Typescript
- JSDoc (optional)
- Ensure you have the angular cli installed
npm i g @angular/cli
- After pulling the code, run
npm install
Storybook - npm run storybook
to develop components
Code Generation - ng [command]
to generate code templates. Use ng [command] --help
to see available options
Developing - ng serve --open
to run the project locally
These tools will be added to the core angular project along with any other tools included by the Angular CLI. Any developer may add extra tooling. However, all tools outlined here must be integrated into the project.
What is this? - Setting up an .editorconfig file helps maintain code format consistency between different IDEs and developers
Objective - Create an .editorconfig file
Installation
- Create an .editorconfig file in the project root.
- Ensure the file contains this config
What is this? - A linter ensures code styles are consistent and helps prevent developers writing bad code
Objective - Implement a system where the developers are notified when their code is written badly
Installation
- In the project root run
npm install tslint tslint-config-airbnb tslint-microsoft-contrib --save-dev
- Create a
tslint.json
andtslint.microsoft.json
file in the root of the project - Ensure the files contain this config
- If the project already has a tslint config file, rename it then add it to the beginning of the
extends
array intslint.json
What is this? - Absolute pathing means to access a file without using '../'. Our linter will throw an error if we don't
Objective - To access a file in a parent folder by pathing from the root ('app/app.module.ts' instead of '../app.module.ts')
Installation
- Add
"baseUrl": "./src/app", "paths": { "*": ["../*"] }
properties to the root tsconfig"compilerOptions"
object
What is this? - Storybook is a front end tool allowing developers to develop web components in isolation
Objective - Allow developers to open a browser window and write components independently
Installation
- Follow storybook's installation guide