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.
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.
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.
IE / Edge |
Firefox |
Chrome |
Safari |
iOS Safari |
Samsung |
Opera |
---|---|---|---|---|---|---|
IE 11+ | Yes | Yes | 11.1+ | Yes | Unoffical | Yes |
- Use layouts and partials to power your static content
- Easy, lightweight and powerful syntax ensures valid markup
- Secure and easy handlebars templates to render dynamic content
- Customized build of Bootstrap 4.1 automatically compiled, optimized, and uglified for your convience
- Fontawesome 5 providing an extensive library of beautiful icons
- 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
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.
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.
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.
Pressing ctrl+p
at any time will result in something beautiful. A print-specific header and footer is loaded throughout the application.
First, ensure that you have the latest Node.js and npm installed. Also, install Gulp and gulp-cli globally.
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
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