Skip to content

invot/yaffolds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

version 0.2.2 build is passing

THIS SOFTWARE IS CURRENTLY PRE-ALPHA AND NON-FUNCTIONING.

Yet-Another-Scaffolding environment, or Yaffolds, is designed to kick-start the front-end development of any modern web project.

Solid foundations for modern development

The purpose of Yaffolds is to provide a consistent file structure, easy to understand code, and methods that simply make sense and save time. A Yaffolds-based project, upon completion, should allow for an easy hand-off between front-end and back-end developers.

Philosophy

Cutting-edge technologies take a back seat to tried-and-true solutions with extensive documentation and a large user-base. It should be easy for any developer to take a look at the code and hit the ground running. Most of the complicated stuff is abstracted through easy-to-understand handlers and methods.

Yaffolds seperates your application into sub-apps that exist in a series of views and modes. A view would be list, single, and embed while a mode would be history or edit. This is similar to many popular frameworks that exist today. This serves as the basic structure for every sub-app, but can be customized in any way.

Browser support

IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
iOS Safari
iOS Safari
Samsung
Samsung
Opera
Opera
IE 11+ Yes Yes 11.1+ Yes Unoffical Yes

Features

Pug as templating system

  • Use layouts and partials to power your static content
  • Easy, lightweight and powerful syntax ensures valid markup

Handlebars to handle the dynamic content

  • Secure and easy handlebars templates to render dynamic content

SASS, Fontawesome 5, and Bootstrap 4.1

  • Customized build of Bootstrap 4.1 automatically compiled, optimized, and uglified for your convience
  • Fontawesome 5 providing an extensive library of beautiful icons

Gulp to make your life easier

  • Compiles your *.pug pages
  • Compiles your *.scss files
  • Prefixes your css
  • Bundles your *.js files
  • Minify css and uglify js
  • Serves your files
  • Synchronizes and reloads your modifications across browsers

Flat-File JSON Mock Server

Even "mock-server" might be a strong term. Simple JSON files take the place of SQL, mongo, or whatever other kind of database you'd like to use in the real world. Schemas aren't required, but these files should hint at how a backend should eventually be structured.

Aggressive request-limiting

Requesting data is expensive. Yaffolds will prevent redundant requests by only asking for data when it doesn't have a recent version. Data can be stored in localStorage or sessionStoragte or both! The information is protected by same-origin policy automatically, keeping locally-stored data secure.

Really awesome config file

Configure app settings all in one file. Timeouts, default routes, security, and other often painful-to-make changes are all managed in a single, friendly JSON file.

Universal Print Styling

Pressing ctrl+p at any time will result in something beautiful. A print-specific header and footer is loaded throughout the application.

Requirements

First, ensure that you have the latest Node.js and npm installed. Also, install Gulp and gulp-cli globally.

Install

1. Plug

Get it from github (if you're reading this, then good job!):

  • Go to your project folder, and get those required packages by running: npm install
  • Build everyting using gulp: gulp build

2. Play

To start working and serving files run gulp

  • Browser-sync will prompt the server url (localhost:3000)
  • You can now edit *.scss & *.js files, and the *.css & *.js will be overwritten

About

Yet-Another-Scaffolding environment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published