Easy Angular Styles with a11Y
EASY is a CSS framework developed on 4 core principles:
- Flexible
- Accessible
- Responsive
- Lightweight
Limited CSS selector specificity allows developers to easily override classes. Other than resets, HTML tags remain mostly untouched. This allows for additive development by adding color, spacing, and other CSS classes as needed.
All components look and behave the same in all evergreen browsers (Chrome, Edge Chromium, Firefox, and Safari).
The framework works nicely with Angular. You can use simple CSS classes to render content in different ways.
Most accessibility requirements are added automatically. Of course, it falls on the developer to ensure all code follows WCAG 2.1 guidelines.
EASY was created with mobile first in mind. There are many layout options and they all look great on any device.
Developers can use all components or only the components needed for a particular project. This is done through module imports.
NPM: npm i easy-framework
Angular CLI: ng add easy-framework
Import specific module(s) and core styles (utilities) of Easy into a shared module.
shared.module.ts
import { ButtonModule, EasyModule, FlexboxModule } from 'easy-framework';
Add the exports to your shared module's NgModule.
shared.module.ts
@NgModule({
exports: {
ButtonModule,
EasyModule,
FlexboxModule
}
})
Or, import all components and/or layout module(s) along with core styles (utilities) of Easy into a shared module.
shared.module.ts
import { ComponentsModule, EasyModule, LayoutModule } from 'easy-framework';
Add the exports(s) to your shared module's NgModule.
shared.module.ts
@NgModule({
exports: [
ComponentsModule,
EasyModule,
LayoutModule
]
})
Import the shared module into your app module.
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';
import { SharedModule } from './shared/shared.module';
Add the import to your app module's NgModule.
app.module.ts
@NgModule({
imports: [
AppRoutingModule,
BrowserModule,
SharedModule
]
})
Add the <ez-root>
tag to your app component's HTML.
app.component.html
<ez-root>
<app-header />
<app-nav />
<main>
<router-outlet />
</main>
<app-footer />
</ez-root>
Read the Documentation.
View the Changelog.
- Review the Code of Conduct
- Review the Contributing guidelines
- Fork the repo
- Run
npm i
- Open two terminal windows
- Run
npm run watch:easy
in the first andng serve
in the second - Open the projects/easy-framework/src/lib folder in your code editor
- Edit the code base
- Update the documentatation in projects/easy-docs/src/app folder as needed
- Submit a pull request
Report an issue or a feature request.
Copyright (c) 2021, Paul Chehak. (MIT License).