Centurion is a responsive framework built for speed, simplicity, and flexibility. Originally based loosely on the 960 grid built by Nathan Smith, Centurion boasted a responsive grid system that would help alleviate the headache of building responsive designs. Like all web projects it grew and started to capitalize on several different areas like: typography, buttons, tables, and more in order to create a seamless framework that could allow web developers to start up a new project easily without the need to override every little piece.
If you're concerned about browser support then we recommend either html5shiv or Modernizr to your web site or project to help support CSS3 and HTML5.
- Rebuild grid to use Flexbox and CSS Grid - Complete Guide to Flexbox and Complete Guide to CSS Grid
- Rework for responsive breakpoints
- CSS classes re-analyzed to be more semantic
- New color scheme and full greyscale for backgrounds, text, etc. - Sass Color Variables That Don’t Suck
- Better documentation
- Component and Pattern library for frequently used layouts
- SCSS to Sass linter via Hound
- Travis CI integration
- Living style guide using Nucleus
- Removal of Grunt in favor of a full Node build process (for less dependencies)
This plugin requires Grunt ^0.4.5
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install centurion-framework --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('centurion-framework');
When using Centurion with Grunt you can use one of two modules: grunt-contrib-sass
or grunt-sass
. We recommend the later since it's built on libsass and compiles much faster, but it is missing some features so the decision is yours.
For grunt-sass you can add Centurion to your project using includePaths
(as in the example below) or with grunt-contrib-sass you can change it to loadPath
for the same result. Here is an example:
'sass': {
target: {
options: {
precision: 4, // makes all decimals round to 4 places
sourcemap: 'auto', // adds a sourcemap to compiled CSS for inspecting
includePaths: ['node_modules/centurion-framework/lib/sass/']
},
files: {
'path/to.css': 'path/to.scss'
}
}
}
You can also use Centurion with Gulp. By using the module gulp-sass
add the library module to your includePaths
found in the example Gulp task below.
gulp.task('sass', function() {
return gulp.src( 'source/sass/*.scss')
.pipe(sourcemaps.init())
.pipe(sass({
includePaths: './node_modules/centurion-framework/lib/sass',
errLogToConsole: true
}))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest( 'build/css' ));
});
If you're interested in using Gulp check out a simple starter project on Github that shows you how to start using Centurion in your next web project.
Install the gem: gem install centurion-framework
If you have an existing project: require 'centurion-framework'
You also have the option of importing Centurion components as needed into your project. Start by including the entire library at the top of your Sass file:
@import "centurion-framework";
Then you can include any of the modules from Centurion that you need. For example if you wanted to only include normalize, the Centurion grid, and typography then you would add the following:
@include normalize();
@include flex-grid();
@include typography();
Read our docs or view examples on our Github page. We are always trying to improve our documentation and examples, so please submit an issue labeled docs
with the description of what needs to be updated.
Centurion no longer supports Internet Explorer 7 as of version 3.5.3
.
Review CHANGELOG for updates and changes to the framework.
If you find a bug or have a feature request you would like added to Centurion. Please search for existing and closed issues to see any similar issues. If you problem or idea is not addressed, please open a new issue.
If you're interested in contributing to Centurion simply open an issue labeled contribute
and tell us what you would like to contribute. Alternatively, you can fork Centurion and submit a pull request explaining what you are contributing.
We might have a small community in comparison to other open-source frameworks, but we're only getting started.
I would also want to thank a few people for their contributions to Centurion.
- Josh Northcott - for his tireless effort in spreading the word about responsive design and Centurion.
- Corey Hadden - for his assistance in making jQuery play nice and for sheer inspiration.
Licensed under GPL.