Site notes:
This site was constructed with:
- code sharing between this page, and fallback for older browsers here
- html (ejs)
- css (scss)
- javascript modules
- written in es6, compiles to es4-6
- Node JS
- as a static site generating compiler
- compiles
-
EJS to html
-
app.js (uses includes), compiles to es6 and es5 (using webpack)
-
oldBrowser.js (uses includes), compiles to es4 (using browserify
-
style.scss using node-sass (c++ module, much faster than the java compiler)
-
as a live build server
-
compiles any of the above, when a relevant file changes
-
serves to web site (over local IP or localhost is an option)
-
Sizzle
-
that's the selector engine from jQuery, but JUST that bit.
-
SCSS
-
variables and for loops are handy.
-
mixins are ok...
- most of these animations are CSS3
- unless you're on the fallback page, in which case; it's all javascript
-
post-css
-
just for automatic vendor prefixing
Build Process:
This gif shows my build script
- please note the nifty Cylon i've made, which runs in the terminal, whhile tasks are completing or the program is waiting
- building HTML from EJS
- compiling commonJS ES6 javascript (requires) to:
- ES6
- ES5
- ES4 (for a seperare fallback page)
-
shares EJS, SCSS, and JS with the main app
- compiling SCSS to CSS
- using node-sass
- written in C++, way faster than the ruby lib
-
creates an express server for the newsly created "dev" folder
- CSS and JS are both source mapped
-
creates an express server for the newsly created "prod" folder
- source maps cleaned
- files minified
-
launches a web page with links to the relevant pages
-
watches files for changes, recompiling and/or copying files as needed
Free Stuff:
Desktop Backgrounds:
HorizonBG
Just 1px wide slice of a sunset i liked, stretche
...which can also be used to make things run in sequnce, by setting the size aregument to 1
The "size" argument sets how many functions are allowed to run simultaniously
Node Packages:
FuncCon
An old strategy for executing a function after a serious of asynchronous functions run to completion.
...which can also be used to make things run in sequnce, by setting the size aregument to 1
The "size" argument sets how many functions are allowed to run simultaniously
Git Loop
This is a simple interactive CLI, which commits every 2, 5, 10, 15, 30, 45, or 60 minutes, with the date and time as the commit'
s message.
Mass Sass
A simple interactive CLI, for compiling all SCSS files in a given folder, via node-sass (way faster than the original ruby build)
Busy Cylon
A nifty little cylon, to run in the terminal; to let you know that your process is still working, and not frozen. Basically, an alternative to the 3 dots...