Coder Social home page Coder Social logo

kevincaradant / web-template Goto Github PK

View Code? Open in Web Editor NEW

This project forked from maxime1992/web-template

1.0 2.0 0.0 2.93 MB

Web-Template - Bootstrap / Sass / Angular / Gulp / Npm / Karma / Protractor / WebWorkers : http://kevincaradant.github.io/web-template

JavaScript 70.10% HTML 23.47% CSS 6.44%

web-template's Introduction

Web-Template

Why ?

If you often create new web projects, you know how long it can be to start from scratch. You just need to kick start your project ๐Ÿš€ ? This repo has been made for you !

What's in the magic box ?

I propose a configuration but of course, you can customize it.

Stack :

Workflow Features

  • Gulp fully automated workflow
  • Development and production environment targets
  • Unit and E2E test samples
  • Coverage to know if your code is tested enough
  • Sass linting, sourcemaps minify and concat
  • ngDocs documentation generator for AngularJS
  • Git Hook Angular commit message must follow the Angular conventions
  • Github release to create a release of your code on Github
  • Github gh-pages to publish your work on gh-pages
  • Livereload to work without pressing F5 every second

Main librairies into the project :

  • Bootstrap
  • Font-Awesome
  • Angular
    • Angular-mocks
    • Angular-translate
    • Angular-sanitize
    • Angular-ui-bootstrap
    • Angular-animate
    • Angular-ui-router
  • Rx

Install & run

$ npm install --no-optional
$ npm run dev

Global Dependencies

Dependency Version Install
NodeJS 5.x.x http://node.org
Npm 3.x.x http://node.org
Gulp CLI 0.4.x npm install gulpjs/gulp-cli#4.0 -g
PhantomJS 2.x.x npm install phantomjs-prebuilt -g

Usage

Tasks

  • $ gulp clean: Remove generated folders - build, docs, coverage, .publish, complexity_report
  • $ gulp build-doc: Generate template documentation
  • $ gulp serve-doc: Start web-server and live-reload to read the documentation
  • $ gulp build: Create distribution package for the development environment
  • $ gulp build --production: Create distribution package for the production environment
  • $ gulp serve: Start web-server and live-reload. Use the argument --PORT=XXXX to set manually the PORT
  • $ gulp unit: Execute unit tests with Karma
  • $ gulp e2e: Execute e2e tests with Protractor. Use the argument --PORT=XXXX to set manually the PORT
  • $ gulp plato: Build a static analysis and complexity report
  • $ gulp xo: Lint Javascript code
  • $ gulp release: Automate release workflow
  • $ gulp release --patch: Automate release workflow for a patch release (ex: v.0.0.+1)
  • $ gulp release --minor: Automate release workflow for a minor release (ex: v.0.+1.0)
  • $ gulp release --major: Automate release workflow for a major release (ex: v.+1.0.0)

Environments

Development:

  • $ npm run dev is equivalent to $ gulp build && gulp serve

Production:

  • $ npm run prod is equivalent to $ gulp build --production

Test:

  • $ npm run test is equivalent to $ gulp unit && gulp e2e

Documentation:

  • $ npm run doc is equivalent to $ gulp build-doc && gulp serve-doc See the browser on : http://localhost:8181

Change Log

This project generates the CHANGELOG.md from Git metadata using the conventional-changelog library. The commit message must follow the Angular conventions.

Quick custom

Before you really start your own project, I recommend you to search for "CUSTOM" occurrences in the project. Everything with CUSTOM is something you may want to change.

Contribution

I think the project has a nice & clean structure. If you have better ideas I would be glad to hear from you and why not propose a pull request.

In order to contribute, please run npm test and check you don't have any JSHint error by running gulp xo

Cheers !

web-template's People

Contributors

aeryax avatar kevincaradant avatar maxime1992 avatar

Stargazers

 avatar

Watchers

 avatar  avatar

web-template's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.