Notice: Development on this project has ended.
Automata – /aw-tom-uh-tuh/ – Machines that perform a function according to a predetermined set of coded instructions, especially ones capable of a range of programmed responses to different circumstances.
Automata is an Automated Website Generator that utilizes Jekyll for static site templating, as well as Sass for responsive CSS preprocessing with automatic vendor prefixing and minification, JavaScript concatenation and minification, GIF/JPG/PNG/SVG image optimization, Bower asset management with cache-busting, and an automated PHP development server with BrowserSync for instant browser feedback.
Additionally, Foundation and WordPress theming support is included at no extra charge!
- Download and install Node.js if needed (for Grunt).
- Download and install Ruby if needed (for Jekyll).
- Download and unzip Automata.zip where you want it.
- From the command prompt, navigate to the
Automata
folder and type the following commands:sudo gem install jekyll jekyll-paginate
sudo npm install -g grunt-cli
sudo npm install
- Note: if you're installing on Windows, you do not need to begin each command with
sudo
- That's it, now you're ready to build your web project!
- Modify the
project
directory variable at the top of theGruntfile.js
, if needed, and edit theprojects/_example.com/website/_config.yml
variables to match your projects needs. (Note: You can also duplicate the_example.com
directory to create multiple projects (example2.com, example3.com, etc...), as long as you point to the appropriateProject Directory
at the top of theGruntfile.js
file). - From the command prompt, navigate to the
Automata
folder and run any of the following Grunt tasks:grunt setup
to download the latest version of.htaccess
and install the bower components you have listed in the_config.yml
filegrunt
to develop your site with a live PHP servergrunt build
to build a production version of your site
- Markdown: Text-to-HTML conversion tool
- Node.js: JavaScript runtime platform
- Grunt: JavaScript task runner
- Grunt Dependencies:
- bower: A package manager for the web
- cssnano: A modular minifier, composed of single-responsibility PostCSS plugins
- grunt-babel: Use next generation JavaScript today
- grunt-banner: Adds a simple banner to files
- grunt-browser-sync: Grunt Task for keeping multiple browsers & devices in sync when building websites
- grunt-contrib-clean: Clear files and folders
- grunt-contrib-copy: Copy files and folders
- grunt-contrib-imagemin: Optimize GIF, JPG, and PNG images
- grunt-contrib-uglify: Minify JavaScript files
- grunt-contrib-watch: Run tasks whenever watched files change
- grunt-curl: Download files from the internet via grunt
- grunt-hashres: Hashes asset files and renames links in html/php/etc
- grunt-include-replace: Grunt task to include files and replace variables
- grunt-jsbeautifier: Beautify js, css, html and json files using Grunt and jsbeautify
- grunt-php: Start a PHP-server
- grunt-postcss: Apply several post-processors to your CSS using PostCSS
- grunt-sass: Compile Sass to CSS
- grunt-shell: Run shell commands
- load-grunt-tasks: Load multiple grunt tasks using globbing patterns
- Grunt: JavaScript task runner
- Ruby: Programming Language / Runtime Environment
Copyright (c) 2016 Michael Guerra (Automata)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.