gcss

by yosssi

yosssi / gcss

Pure Go CSS Preprocessor

438 Stars 30 Forks Last release: Not found MIT License 102 Commits 8 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

GCSS - Pure Go CSS Preprocessor

wercker status Build status Coverage Status GoDoc Gitter

Overview

GCSS is a pure Go CSS preprocessor. This is inspired by Sass and Stylus.

Syntax

Variables

$base-font: Helvetica, sans-serif
$main-color: blue

body font: 100% $base-font color: $main-color

Nesting

nav
  ul
    margin: 0
    padding: 0

a color: blue &:hover color: red

Mixins

$border-radius($radius)
  -webkit-border-radius: $radius
  -moz-border-radius: $radius
  -ms-border-radius: $radius
  border-radius: $radius

.box $border-radius(10px)

Installation

$ go get -u github.com/yosssi/gcss/...

Compile from the Command-Line

$ gcss /path/to/gcss/file

or

$ cat /path/to/gcss/file | gcss > /path/to/css/file

Compile from Go programs

You can compile a GCSS file from Go programs by invoking the

gcss.CompileFile
function.
cssPath, err := gcss.CompileFile("path_to_gcss_file")

if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) return }

http.ServeFile(w, r, cssPath)

You can invoke the

gcss.Compile
function instead of the
gcss.CompileFile
function. The
gcss.Compile
function takes
io.Writer
and
io.Reader
as a parameter, compiles the GCSS data which is read from the
io.Reader
and writes the result CSS data to the
io.Writer
. Please see the GoDoc for the details.
f, err := os.Open("path_to_gcss_file")

if err != nil { panic(err) }

defer func() { if err := f.Close(); err != nil { panic(err) } }()

n, err := gcss.Compile(os.Stdout, f)

Documentation

Syntax Highlightings

  • vim-gcss - Vim syntax highlighting for GCSS

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.