This is based off my basic HTML starter project with Sass and Gulp.js
- Built with a BEM philosophy to scale with helper classes used as seen fit for sizing, spacing, layout and overall appearance
- SVG's used to display data as a level that can scale
- Semantic markup that is accessible with tabbed navigation and follows guidelines created by Schema.org
- Progessively enhanceed elements utilizing HTML5 data attribute such a the select field with visually comparable and usable fallback and responsive table layouts
- Filterable table rows (still in progress)
- HTML5
- Sass
- jQuery
- Bootstrap Framework (Grid Only): A free and open-source front-end web framework for building responsive, mobile-first websites and web applications. (Utilized container setup but no grid used to date)
- Eric Meyers reset and Normalize.css: Makes browsers render all elements more consistently and in line with modern standards.
- Modernizer: A collection of superfast tests – or “detects” as we like to call them – which run as your web page loads, then you can use the results to tailor the experience to the user. (Fallback to be done in debugging)
- TweenMax by Greensock: Built for convenience, TweenMax provides a single JavaScript file that contains everything you will commonly need for animating DOM elements. (Omitted)
- SVG for Everybody: SVG for Everybody adds external spritemaps support to otherwise SVG-capable browsers.
Working with Gulp.js
npm is distributed with Node.js- which means that when you download Node.js, you automatically get npm installed on your computer.
- Check that you have node and npm installed by running
node -v
andnpm -v
in your terminal - If the commant is not found install them using the links above and if it doesn't work in your project's folder, try installing them globally using your
sudo
commant
- gulp.js
- package.js
- Node_modules (not created until gulp is installed by following below)
-
To install you position yourself in the project folder by traversing via terminal using the cd command and install using npm by running the command below:
$ npm install
-
To initially process javascript, sass and any gulp tasks found in the gulp.js file by running the command below:
$ gulp
-
To watch javascript, sass and any gulp tasks found in the gulp.js file by running the command below:
$ gulp watch
-
To add SVG’s to spritemap, drop any svg into the /src/svg folder. The name of the svg will become the id of the svg.
Make any changes such as fill="currentColor" to the svg inside of the /src/svg folder and Gulp will process.
-
JavaScript
/src/lib/*.js
->/js/lib
-- Any standalone JavaScript file. Usually for polyfills or large libraries independent of the projects unique scripts.
/src/plugins/*.js
->/js/plugins.js
-- All files get concat, and minified into one plugins.js
/src/partials/*.js ->
/js/scripts.js` -- All files get concat, and minified into one scripts.js -
CSS
/src/css/*
->/css/style.css
-- All files get concat into one style.css
/src/css/base
/src/css/components
/src/css/utilities
style.scss -
SVG
/src/svg/*.svg
->/img/spritemap.svg
Include SVG’s using via the code below:
<svg>
<use xlink:href="PATH/img/spritemap.svg#FILE-NAME"></use>
<svg>
The FILE-NAME above should not include .svg at the end of it just as it is above.
- *~
- *.keep
- .DS_Store
- .sass-cache
- _assets
- node_modules
- bkp
- bkp/
- bkp/*
- css/config.rb
- scss/.sass-cache
- scss/.sass-cache/*