|
| 1 | +See also: <https://github.com/tony/vue-typescript-vanilla-starter> |
| 2 | + |
| 3 | +Split off of <https://github.com/tony/cv> v2 in the initial stages |
| 4 | + |
| 5 | +MIT licensed. Feel free to copy, fork, etc. |
| 6 | + |
| 7 | +# Summary |
| 8 | + |
| 9 | +Dev server, typed webpack config, typescript, jsx, babel. |
| 10 | + |
| 11 | +No SASS/SCSS/LESS. No static files. Wiring those in are highly dependent on integration. |
| 12 | + |
| 13 | +# Usage |
| 14 | + |
| 15 | +```bash |
| 16 | +npm install # install packages |
| 17 | + |
| 18 | +npm run start # launch + hot reloading + watch file changes http://localhost:3099 |
| 19 | + |
| 20 | +npm run build # build to dist/ |
| 21 | +``` |
| 22 | + |
| 23 | +## Environmental variables |
| 24 | + |
| 25 | +[Webpack's environmental variables] can be passed (`--env`): |
| 26 | + |
| 27 | +`npm run start -- --env.devServerPort 3082`, build + watch at <http://localhost:3082> |
| 28 | + |
| 29 | +`npm run start -- --env.production` |
| 30 | + |
| 31 | +`npm run start -- --open` Launch browser + build + watch files, <http://localhost:3099> |
| 32 | + |
| 33 | +[webpack's environmental variables]: https://webpack.js.org/guides/environment-variables/ |
| 34 | + |
| 35 | +# Contribution guidelines |
| 36 | + |
| 37 | +Corrections: ✔️ |
| 38 | + |
| 39 | +Package updates: ✔️ (_please QA to verify build output / watch / reloading works_) |
| 40 | + |
| 41 | +CI System: ✔️ (_get travis setup_) |
| 42 | + |
| 43 | +New feature / Loader: 🚫 (_please create a fork!_) |
| 44 | + |
| 45 | +# Weakness of most starters (e.g. create-react-app): |
| 46 | + |
| 47 | +- Opaque: No way to see the innards of what's being built |
| 48 | + |
| 49 | + Even `npm run eject` shows tons of macro code that resembles nothing like what a webpack config |
| 50 | + would look like on a project. |
| 51 | + |
| 52 | +- Labyrinthian: Tons of stuff to remove, overlapping dependencies. Many things of which aren't |
| 53 | + being used. |
| 54 | + |
| 55 | + _package.json_ riddled with stuff you don't even know they're for. |
| 56 | + |
| 57 | + You'll then go out and find starters in github repos to find they add tons of specialized stuff |
| 58 | + that wouldn't fit your unique integration. You don't want jest, or wouldn't integrate it they |
| 59 | + way they do. |
| 60 | + |
| 61 | + Same thing. _package.json_ is like Windows' _services.msc_ - everything sounds important, but |
| 62 | + you're probably not using half of them. |
| 63 | + |
| 64 | + You're really not much better off than you were with an ejected `create-react-app`. It's |
| 65 | + faster to just start anew and add what you want. |
| 66 | + |
| 67 | + But a scratch project with webpack and react is actually hard: |
| 68 | + |
| 69 | + Webpack, ts-loader, babel, webpack-dev-server, so on. There's so many projects to synthesize |
| 70 | + and all their usages every 3 months. You have to drop by each project, see the minimal example, |
| 71 | + and hope they fit and you can get a _basic build_ |
| 72 | + |
| 73 | +That's all this is. |
0 commit comments