PraveenGandhi / au2-new

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Aurelia 2 Scaffolding skeleton

Build Status

Work In Progress

The scaffolding repo for Aurelia 2 used by the makes tool to create new Aurelia 2 projects.

Create an Aurelia 2 project

First, ensure that you have Node.js v8.9.0 or above installed on your system. Next, using npx, a tool distributed as part of Node.js, we'll create a new Aurelia 2 app. At a command prompt, run the following command:

npx makes aurelia

This will cause npx to download the makes tool, along with the aurelia scaffold from this repo, which it will use to guide you through creating your project.

Status

  • Aurelia convention support (boilerplate free like Aurelia v1) at bundler level
  • Basic app with webpack
  • Basic app with dumber (successor of CLI built-in bundler. Doc WIP)
  • Basic app with parcel (On hold)
    • Parcel can be done. But requires a dedicated repo (out of our mono repo) in order to write in commonjs format that Parcel wants.
    • parcel-bundler/parcel#3256
    • Parcel v2 is also very near. Might wait for the new version.
  • Basic app with browserify (On hold)
    • Browserify has technical obstacle on TypeScript (tsify) TypeStrong/tsify#34 (comment)
    • There is no problem on babelify. But we will hold browserify for now.
  • Basic app with FuseBox (On hold)
    • FuseBox v4 is coming, and it's a total rewrite. Wait for it before implement.
  • Basic less/scss setup.
  • Basic unit test setup for jasmine, mocha, tape. (jest and ava are on hold, pending implementing transformer.)
  • Basic e2e test setup for cypress
  • Basic e2e test setup for protractor

Development

This scaffolding skeleton is in very early stage, not quite ready for adding features. We want to keep feature set manageable as Aurelia 2 is constantly evolving.

There are some tests for this skeleton, setup in package.json. (totally not required by makes)

npm install
# test some top level makes hooks
npm test
# test all skeletons, take some time, not turned on in .travis.yml
npm run test:e2e

To target subset of skeletons, use env variable TARGET_FEATURES.

# only test skeletons using webpack and typescript features.
npx cross-env TARGET_FEATURES=webpack,typescript npm run test:e2e

If you forked this repo, you can run your skeleton with:

# test your master branch if your forked name is "new"
npx makes your_GitHub_name
# test some branch or commit or tag
npx makes your_GitHub_name/forked_repo_name#some-branch

License

MIT.

About

License:MIT License


Languages

Language:JavaScript 96.0%Language:HTML 4.0%