/front-end-architecture

Raise a Banner. Take up the Torch. It's time to make Front-end Architecture matter! #frontendarch

Front-end Architecture

Raise a Banner. Take up the Torch. It's time to make Front-end Architecture matter!

This is meant as a public space for people to contribute and show their support for the discipline of Front-end Architecture. Feel free to create pull requests to add content. Open issues to discuss ideas, or get clarification. As sections grow, we'll eventually break them into their own files.

Definition

Front-end Architecture is a collection of tools and processes that aims to improve the quality of our front-end code while creating a more efficient and sustainable workflow.

A Front-end developer's audience is the website user, a Front-end Architect's audience is the developer themselves.

Working Components of Front-end Architecture

  • Code
    • HTML5/WAI-ARIA
    • CSS/Sass Code standards and organization
    • Object-Oriented approach (how do objects break down and get put together)
    • JS frameworks/organization/performance optimization techniques
    • Asset Delivery - Front-end Ops
  • Documentation
    • Onboarding Docs
    • Styleguide/Pattern Library
    • Architecture Diagrams (code flow, tool chain)
  • Testing
    • Performance Testing
    • Visual Regression
    • Unit Testing
    • End-to-End Testing
  • Process
    • Git Workflow
    • Dependency Management (npm, Bundler, Bower)
    • Build Systems (Grunt/Gulp)
    • Deploy Process
    • Continuous Integration (Travis CI, Jenkins)

Resources

Books

General Articles

OO and Code standard Links

Testing Tools

Performance Testing

Visual Regression

Unit Testing

Documentation Tools

Automation Tools