Skip to content

GabrieleRomeo/ES6-Professional-starter-kit

Repository files navigation

Professional ES6 Starter Kit

Latest Documentationsemantic-releaselicenseBuild Status

This repository provides a full development & build workflow for your nextvanilla ES6 Javascriptproject.

The primary goal of this project is to allow a rapid kick-start of your development process by trying to avoid the tedious task of installing tons of libraries along with the following configurations. Moreover, it helps to maintain a professional workflow during development.

Note:Default assets as thesrc,public,and__test__folders are to be considered as examples.

What does it include?

Install

git clone https://github /GabrieleRomeo/ES6-Professional-starter-kit.git
cdES6-Professional-starter-kit

Update the project's information inside thepackage.jsonfile and, if necessary,clear outthe git history of the original repo.

After that, you can start fresh withsemantic-releaseby invoking thesetuptask, like this:

Runyarn setupornpm run setup

You may also run dependencies installation manually with:

Runyarnornpm install

Build

By default thesrc/index.jsfile acts as a single point of access for the build system.

Thebuilddirectory will contain thebuild.jsandbuild.min.jsfiles. The former will be a production version of your software that you will ship and the latter will be a development version instead.

Check out the comments inside thewebpack.config.jsfile If you want to use your library directly into the browser.

Development Environment

Runyarn devornpm run dev

It will open theindex.htmlpage within your favourite browser.

Documentation

JSDoc allows us to use a markdown file as the home of the API. By default, the system uses thehome_manifest.mdfile under the__jsDoc__directory as template.

Semantic Release

To release a new version, you'll need to create a commit withChangelogtype.

To generate changelog draft runnpm run changelog:previeworyarn changelog:preview.

To commit changelog runnpm run changelog:commitoryarn changelog:commit.

More infohere


For more information about the available features / commands, please visit thefollowing webpage

Copyright 2017 © Gabriele Romeo


Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software" ), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.