A Scala project template bundled with Play 2.x + TypeScript + Webpack + Scalariform + Scalastyle + Configured security options by default.
Client side:
- altJS
- TypeScript: TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
- preprocessors:
- code quality:
- tslint: a static analysis linter for TypeScript.
- build tools:
- Webpack: Packs CommonJs/AMD modules for the browser.
- Webpack + Play integration:
- Assets are auto-reloaded by
activator run
. - Assets are minified before
activator dist
.
- Assets are auto-reloaded by
- bundled libraries:
- jQuery 2.1.4
- others:
- source map (only enabled in dev environment)
- production codes are minified.
console.log
is automatically removed from production codes.
Storages:
- ScalikeJDBC: A tidy SQL-based DB access library for Scala developers.
- MySQL Connector
Server behavior modifications:
- Google HTML Compressor: Remove unnecessary white spaces and comments from HTML in response.
- SecurityHeaders: Send headers to make apps much secure.
Code quality supports:
- Very strict scalac options.
- Scalariform: Automatic code reforming on compile.
- Scalastyle: Scala style checker with very strict rules.
- Scapegoat: Scala style checker for optional.
Others:
- Documentation is disabled to speed up compilation by default.
- npm
- node.js
Generate a new project using giter8.
g8 shouldbee/play-scala
cd yourapp
Install node modules.
make bootstrap
Then start Play server.
./activator run
Open http://localhost:9000/ with your browser and enjoy!
If you want to check in node_modules and types, you can comment out these lines of .gitignore.