JSPM

  • Created
  • Published
  • Downloads 26
  • Score
    100M100P100Q43982F
  • License MIT

EASY CSS framework.

Package Exports

  • easy-framework

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (easy-framework) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

CircleCI branch Known Vulnerabilities Dependency Status devDependency Status

npm downloads License codecov.io Conventional Commits

GitHub forks GitHub stars

EASY

Easy Angular Styles with a11Y

This project is a work in progress. Not all components are created or documented...yet.

Overview

EASY is a CSS framework developed on 4 core principles:

  • Flexible
  • Accessible
  • Responsive
  • Lightweight

Flexible

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.

Accessible

Most accessibility requirements are added automatically. Of course, it falls on the developer to ensure all code follows WCAG 2.1 guidelines.

Responsive

EASY was created with mobile first in mind. There are many layout options and they all look great on any device.

Lightweight

Developers can use all components or only the components needed for a particular project. This is done through module imports.

Installation

NPM: npm i easy-framework

Usage

Import core styles (base and utilities) into your app root module.

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';

import { EasyModule } from 'easy-framework';

import { AppComponent } from './app.component';
import { AppRoutingModule } from './app-routing.module';

Add the import to your app root NgModule.

app.module.ts

@NgModule({
    imports: [
        AppRoutingModule,
        BrowserModule,
        EasyModule        
    ]
})

Add the <ez-root> tag in your app root component's HTML.

app.component.html

<ez-root>
    <app-header></app-header>
    <app-nav></app-nav>
    <main>
        <router-outlet></router-outlet>
    </main>
    <app-footer></app-footer>
</ez-root>

Then, import specific module(s) where needed.

some.module.ts

import { ButtonModule, FlexboxModule } from 'easy-framework';

Add the import(s) to your NgModule.

some.module.ts

@NgModule({
    imports: [
        ButtonModule,
        FlexboxModule
    ]
})

Or, import all component and/or layout module(s).

some.module.ts

import { ComponentsModule, LayoutModule } from 'easy-framework';

Add the import(s) to your NgModule.

some.module.ts

@NgModule({
    imports: [
        ComponentsModule,
        LayoutModule
    ]
})

Documentation

Read the Documentation.

Changlog

View the Changelog.

Contributing

  1. Review the Code of Conduct
  2. Review the Contributing guidelines
  3. Fork the repo
  4. Run npm i
  5. Run npm start
  6. Open the projects/easy-framework/src/lib folder in your code editor
  7. Edit the code base
  8. Update the documentatation as needed
  9. Submit a pull request

Issues

Report an issue or a feature request.

License

Copyright (c) 2021, Paul Chehak. (MIT License).