engageinteractive / Core

Licence: mit
Our Front-end baseplate, from mobile to desktop

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Core

Baseguide
Lightweight and robust CSS framework for prototyping and production code.
Stars: ✭ 127 (-57.38%)
Mutual labels:  gulp, framework, scss
Bootstrap 4 Sass Gulp 4 Boilerplate
A Bootstrap 4.5.2 boilerplate with font-awesome, sass, gulp 4 tasks
Stars: ✭ 103 (-65.44%)
Mutual labels:  gulp, scss, browsersync
Long Haul
A minimal, type-focused Jekyll theme.
Stars: ✭ 524 (+75.84%)
Mutual labels:  gulp, scss, browsersync
Web Starter Kit
Web Starter Kit is an opinionated boilerplate for web development. A solid starting point for both professionals and newcomers to the industry.
Stars: ✭ 130 (-56.38%)
Mutual labels:  gulp, scss, browsersync
bootstrap-4-boilerplate
Basic Bootstrap 4 Starter Template
Stars: ✭ 50 (-83.22%)
Mutual labels:  gulp, browsersync
frontie
Frontie is a front-end boilerplate. Gulp | Twig.js | Sass | Autoprefixer | Browsersync | Bootstrap 4 Grid System & Responsive Breakpoints
Stars: ✭ 28 (-90.6%)
Mutual labels:  gulp, browsersync
gw-starter-kit
PEPELAC - Современный инструментарий для вёрстки и создания статичных сайтов с использованием Webpack
Stars: ✭ 30 (-89.93%)
Mutual labels:  gulp, browsersync
gulp-sass-bootstrap-boilerplate
⏰📌 Boilerplate with gulp.js, Sass, Babel, and Browsersync.
Stars: ✭ 24 (-91.95%)
Mutual labels:  gulp, browsersync
Forward-Framework
A killer WordPress theme framework built using underscores, gulp, sass, bourbon neat, bower & browsersync.
Stars: ✭ 23 (-92.28%)
Mutual labels:  gulp, browsersync
sage-starter
The best starter theme with a modern front-end development workflow. Based on Sage, HTML5 Boilerplate, gulp, Bower, and Bootstrap.
Stars: ✭ 42 (-85.91%)
Mutual labels:  gulp, browsersync
gulp-starter-kit
My Gulp Starter Kit
Stars: ✭ 91 (-69.46%)
Mutual labels:  gulp, browsersync
branch
Branch Starter Theme - A WordPress starter theme based on Timber library and Bootstrap
Stars: ✭ 87 (-70.81%)
Mutual labels:  gulp, browsersync
adfab-gulp-boilerplate
A boilerplate including Gulp, Less/SASS, BrowserSync.
Stars: ✭ 17 (-94.3%)
Mutual labels:  gulp, browsersync
Frontend-StarterKit
Frontend StarterKit - [Gulp 4, Pug, SCSS, ES6+]
Stars: ✭ 13 (-95.64%)
Mutual labels:  gulp, browsersync
magento-2-gulp
Gulp for Magento 2. It works with core Magento styles (less) and structure. Uses default theme configs from dev/tools/grunt/configs/local-themes.js.
Stars: ✭ 37 (-87.58%)
Mutual labels:  gulp, browsersync
selene
A opinionated Wordpress base theme based on Sage.
Stars: ✭ 31 (-89.6%)
Mutual labels:  gulp, browsersync
Gulp-Beginners-Guide
Gulp 基本教學 - 從無到有 Gulp-Beginners-Guide
Stars: ✭ 29 (-90.27%)
Mutual labels:  gulp, browsersync
middleman-gulp
A Middleman 4 template using Gulp.js via the external pipeline
Stars: ✭ 42 (-85.91%)
Mutual labels:  gulp, browsersync
bootstrap-5-sass-gulp-4-boilerplate
A Bootstrap 5.0.0 boilerplate with bootstrap-icons, sass and gulp 4
Stars: ✭ 26 (-91.28%)
Mutual labels:  gulp, browsersync
genesis-sample-task-runner
Gulp workflow for Auto prefixing, Sass compiling, CSS minification, automatic browser reloading and more
Stars: ✭ 23 (-92.28%)
Mutual labels:  gulp, browsersync

Core

This project has now been deprecated in favour of the Engage Laravel Baseplate


The Engage Interactive website baseplate.

Features

  • Auto-prefixed CSS compiled from Sass, written using the BEM methodology
  • ESLint-ed JavaScript with source map support and native error notifications
  • Image compression using the TinyPNG API
  • SVG sprite generator
  • Browsersync-based watch script

Another?

We've all played with the latest baseplate/boilerplate/bootstrap but were never truly happy with them. We've produced somewhat of a halfway house between the HTML5 Boilerplate and something like Foundation. It contains the usual basics, plus some really useful core files and project settings.

Setup

Prerequisites

  • Node.js
    • Long-term Support (LTS) build is fine
    • Check your npm permissions (typically option 1)
  • Gulp
    • Installed globally by running npm install --global gulp-cli in Terminal
  • TinyPNG Developer API Key
    • Setup as an environment variable with key TINYPNG_KEY
    • Run echo "export TINYPNG_KEY=YOUR_KEY_HERE" >> ~/.bash_profile && source ~/.bash_profile in Terminal (replacing YOUR_KEY_HERE with your key)

Initial Project Setup

  1. Navigate to your project's root directory in Terminal(?!?)
  2. npm install
  • installs the dependencies for this project
  • can take several minutes
  • will output a lot of debugging information (including occasional deprecation warnings) that can be ignored
  1. Open gulpfile.js and check/update the config object
  • note - non-static projects (i.e. PHP) still require setting up in Apache/NGINX

Typical Development Process

  • gulp - recompiles everything (optional)
  • gulp watch - starts Browsersync and watches for file changes
    • you can + double-click the local address shown in Terminal to open the link
    • you can alternatively use your machine's network name, e.g. joe.local:5757
    • keep an eye on Terminal if it seems like changes aren't showing up in your browser
    • stop the process using ctrl + c
  • gulp clean - deletes all compiled assets

Source Files

Sass

main.scss is the top-level Sass file, which typically just imports the _variables and _import partials. This split allows for the fixed width functionality.

_import.scss

References all of the Sass partials to be included in the project.

_variables.scss

Everything from font sizes, to colours, to easing function timings.

Utility

Functions

The functions file is new. We will be using this more in the future, for now it just contains a copy of the foundation rem-calc function.

Mixins, extenders & animations

These are some really generic mixins and extenders that we use on nearly every website we create. The animations file is empty as animations tend to be very specific, but we usually end up adding them, so the file exists simply for convenience.

Grids

Initially based off the Foundation grid, we've produced a stripped down version of our own.

Resets - Normalise & Formalise

Our English spelling version of the Normalize.css file with a few very slight modifications.

Helper Classes

Useful, commonly-used classes that can be used throughout the project. If the element will never change, use a class. If you're using a helper after a certain breakpoints, it would be better to call the relevant mixin.

Fonts

This file should contain any @font-face rules or remote file URL's. By default we include Open Sans.

Core

These files contain the very basic building blocks to the project. They contain really low-specificity elements and/or classes. Examples includes form inputs, basic image styling, and base typographic styles.

Modules

The modules category should be used to style up site-wide self-contained elements. For example, forms, modal overlays, login forms, lists, pagination, twitter includes.

Layout

The layout category should contains files that affect the structure of the site, for example the navigation, site header and footer. Essentially, any distinguishable section of a design that isn't re-used elsewhere.

Pages

Finally, the pages category is used to style up page-unique content/layout. When you include the project into a framework, a kind developer will add a class to the body of the site. You can use this to namespace your styles so that you don't affect any other content.

Javascript

We've included the usual here, jQuery and Modernizr, along with some in-house plugins:

  • fitvids.js
  • loadImg.js
  • preload.js
  • simpleSelect.js
Site.js

This contains a basic JavaScript file structure with a few bits of functionality and plugins we always use. The noteable parts are:

  • Window scroll and resize listeners which keep a global object storing site metric information up-to-date.
  • External and internal link handling
  • Simple select plugin which allows you a large amount of control over the visuals of a select dropdown.
  • Buffered window resize callback.

If you don't need something, just remove it.

HTML

Included in the baseplate is a very, very, very simple example of the grid and site structure we like to start with in a lot of cases. This is by no means what we always use though, so feel free to delete it all and start again!

Other

IE8 Support

The optional fixed-width.scss Sass file outputs CSS with all the media queries removed. Set fixed-width-limit to adjust the max-width used.

Termnial Shortcut

Check you've enabled System Preferences > Keyboard > Shortcuts > Services > New Terminal at Folder, then you can right-click the project folder, choose services (at the bottom) and just click New Terminal at Folder.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].