Skip to content

travi-org/admin.travi.org

Repository files navigation

travi.org-admin

Node CI Workflow Status Codecov Code Climate travi.org-admin/travi-api Pact Status

license

Project Goals

As I continue to learn about the node and react ecosystems, my intent with this project is for it to be both a playground for exploration as well as a reference implementation of the things that I have settled on as best practices.

Since this is a side-project, some areas may be behind my progression of preferring a certain approach. Some things may also seem to go a bit far for such a small project, but please keep in mind that this is intended to be a reference implementation.

Core Concepts

  • ES6
  • Universal Rendering
  • Progressive Enhancement
  • Package management of React components to share components with npm
  • Intelligent management of client-side dependencies
    • Cut the Mustard
    • Progressive Enhancement based on browser capabilities
    • Lazy Loading
  • Performance
  • Delegated Authentication (likely Auth0)
  • Thin Hal Hypermedia client
  • OAuth/Oz client
  • API driven form construction
  • API driven form validation

Key Technology

Contribution

Commitizen friendly Renovate

Install Dependencies

$ nvm install
$ npm install

Run in development mode

Against the production API

$ npm run dev

Against a local API

$ npm run dev-local

Verification

$ npm test

Analyze the Webpack bundle

After npm run build has been run, load resources/js/stats.html in a browser