<commit_before># Comffee : Compass, CoffeScript and SASS united

- CoffeScript : https://github.com/jashkenas/coffee-script
- Compass : https://github.com/chriseppstein/compass
- GruntJS : http://gruntjs.com/
- UglifyJS : https://github.com/mishoo/UglifyJS

## Getting Started

This project requires Grunt `~0.4.0` and `Compass`

If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins.

## Description

This is a sample GruntJS project that unites Compass, CoffeScript and SASS using GruntJS plugins.

Used GruntJS Plugins: uglify, coffee, compass, clean, watch, jasmine<commit_msg>Improving readme file<commit_after># Comffee : Compass, CoffeScript and SASS united

- [CoffeScript](https://github.com/jashkenas/coffee-script)
- [Compass](https://github.com/chriseppstein/compass)
- [GruntJS](http://gruntjs.com/)
- [NodeJS](http://nodejs.org/)
- [UglifyJS](https://github.com/mishoo/UglifyJS)

## Getting Started

This project requires Grunt `~0.4.0` and `Compass`

If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-gruntfile) as well as install and use Grunt plugins.

## Description

This is a sample GruntJS project that unites Compass, CoffeScript and SASS using GruntJS plugins.

Used GruntJS Plugins: uglify, coffee, compass, clean, watch, jasmine

## Usage

1. First things first: You will need [npm package manager](https://npmjs.org/) to install all dependencies. npm comes within NodeJS [since version 0.6.3](http://blog.nodejs.org/2011/11/25/node-v0-6-3/).

1. To use Compass and SASS, you will need to install [Ruby](http://www.ruby-lang.org/) and the gems declared in the `Gemfile`. There are many [ways to install Ruby](http://www.ruby-lang.org/en/downloads/), just choose one and be happy.

1. To install all Ruby-Comffee depencies, install Ruby and them run `bundle install`, using the [bundler gem](http://gembundler.com/) or run `gem install compass` and `gem install bootstrap-sass`.

1. To install all NodeJS-Comffee dependencies, install NodeJS and then run `npm install`. This command will install all node_modules that are necessary to run this application.

1. With all dependencies installed, run the `grunt` command and have fun :)

## Project Structure

```js
- fonts // Put your font files here
- images // Put your image files here, like the glyphicons from bootstrap
- spec // Put your tests here
- src 
	- css // Put your CSS,SASS or SCSS files here
	- js // Put your Coffee or JS files here
```

-------------------------------------

It is important to note that this project has [bootstrap-sass](https://github.com/thomas-mcdonald/bootstrap-sass) included.

With bootstrap-sass, you can require all bootstrap JS or individual modules. 

```js
// Loads all Bootstrap javascripts
//= require bootstrap
```

```js
// Loads individual modules
//= require bootstrap-scrollspy
//= require bootstrap-modal
//= require bootstrap-dropdown
```

To import bootstrap-sass in your CSS just import it.

```css
@import "bootstrap";
```

For further information you can read how to configure the [bootstrap-sass](https://github.com/thomas-mcdonald/bootstrap-sass/#css)

## Testing

Comffee uses [Jasmine plugin](https://github.com/gruntjs/grunt-contrib-jasmine) to run JS tests. 

Put your test files in the spec using "\*Spec" naming for your specs and "\*Helper" for your test helpers. Example: "dropdownSpec.coffee" and "dropdownHelper.coffee".

With Comffee you can write Jasmine specs using CoffeScript. Just write your specs inside the `spec/coffee` and your tests will be converted to JS.
{'fraction_non_alphanumeric': 0.12252252252252252, 'fraction_numerical': 0.006435006435006435, 'mean_word_length': 4.066492829204694, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 10, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2026081', 'n_tokens_mistral': 1249, 'n_tokens_neox': 1178, 'n_words': 436}