Loading app-backend/main.go +5 −8 Original line number Diff line number Diff line Loading @@ -27,18 +27,15 @@ func main() { r.HandleFunc("/squares/random", squares.Random) r.HandleFunc("/squares/:key", squares.Square) //cached r.HandleFunc("/isogrids/skeleton", isogrids.Skeleton) r.HandleFunc("/isogrids/:key", isogrids.Isogrids) r.HandleFunc("/isogrids/:colorId/:key", isogrids.Color) r.HandleFunc("/isogrids/diagonals", isogrids.Diagonals) r.HandleFunc("/isogrids/halfdiagonals", isogrids.HalfDiagonals) r.HandleFunc("/isogrids/gridbw", isogrids.GridBW) r.HandleFunc("/isogrids/grid2colors", isogrids.Grid2Colors) r.HandleFunc("/isogrids/labs/skeleton", isogrids.Skeleton) r.HandleFunc("/isogrids/labs/diagonals", isogrids.Diagonals) r.HandleFunc("/isogrids/labs/halfdiagonals", isogrids.HalfDiagonals) r.HandleFunc("/isogrids/labs/gridbw", isogrids.GridBW) r.HandleFunc("/isogrids/labs/grid2colors", isogrids.Grid2Colors) r.HandleFunc("/isogrids/random/:colorId", isogrids.RandomColor) r.HandleFunc("/isogrids/random", isogrids.Random) r.HandleFunc("/isogrids/random-mirror/:colorId", isogrids.RandomMirrorColor) r.HandleFunc("/isogrids/random-mirror", isogrids.RandomMirror) r.AddStaticResource(root) Loading app/partials/marketing/example.html +4 −4 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ <img class="featurette-image img-responsive img-thumbnail" src="/squares/tinygraphs" alt="consistent square black and white avatar"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/squares/6/tinygraphs" alt="consisent square color avatar"> <img class="featurette-image img-responsive img-thumbnail" src="/squares/tinygraphs?theme=bythepool" alt="consisent square color avatar"> </div> </div> </div> <!-- /.col-md-12 --> Loading @@ -35,16 +35,16 @@ <div class="row"> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/skeleton" alt="grid image"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/labs/skeleton" alt="grid image"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/random/1" alt="random black an white avatar"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/random?theme=sugarsweets" alt="random black an white avatar"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/tinygraphs" alt="consistent square black and white avatar"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/6/tinygraphs" alt="consisent square color avatar"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/tinygraphs?theme=duskfalling" alt="consisent square color avatar"> </div> </div> Loading controllers/isogrids/isogrids.go +11 −43 Original line number Diff line number Diff line Loading @@ -7,10 +7,9 @@ import ( "io" "log" "net/http" "strconv" "github.com/taironas/route" tgColors "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/draw" "github.com/taironas/tinygraphs/extract" "github.com/taironas/tinygraphs/write" Loading @@ -30,51 +29,20 @@ func Isogrids(w http.ResponseWriter, r *http.Request) { io.WriteString(h, key) key = fmt.Sprintf("%x", h.Sum(nil)[:]) colorMap := tgColors.MapOfColorPatterns() theme := extract.Theme(r) colorMap := colors.MapOfColorThemes() var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[0][0] bg = colorMap["base"][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[0][1] } size := extract.Size(r) write.ImageSVG(w) draw.Isogrids(w, key, bg, fg, size) fg = colorMap["base"][1] } // Color is the handler for /isogrids/:colorId/:key // builds a 10x10 grid with alternate colors based on the string passed in the url. func Color(w http.ResponseWriter, r *http.Request) { var err error var id string if id, err = route.Context.Get(r, "colorId"); err != nil { log.Println("Unable to get 'colorId' value: ", err) id = "0" } var colorId int64 if colorId, err = strconv.ParseInt(id, 0, 64); err != nil { colorId = 0 } var key string if key, err = route.Context.Get(r, "key"); err != nil { log.Println("Unable to get 'key' value: ", err) key = "" } h := md5.New() io.WriteString(h, key) key = fmt.Sprintf("%x", h.Sum(nil)[:]) colorMap := tgColors.MapOfColorPatterns() var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[int(colorId)][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[int(colorId)][1] if val, ok := colorMap[theme]; ok { bg = val[0] fg = val[1] } size := extract.Size(r) Loading @@ -84,7 +52,7 @@ func Color(w http.ResponseWriter, r *http.Request) { func GridBW(w http.ResponseWriter, r *http.Request) { colorMap := tgColors.MapOfColorPatterns() colorMap := colors.MapOfColorPatterns() var err error var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { Loading @@ -100,7 +68,7 @@ func GridBW(w http.ResponseWriter, r *http.Request) { func Grid2Colors(w http.ResponseWriter, r *http.Request) { colorMap := tgColors.MapOfColorPatterns() colorMap := colors.MapOfColorPatterns() var err error var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { Loading controllers/isogrids/random.go +8 −70 Original line number Diff line number Diff line Loading @@ -2,11 +2,8 @@ package isogrids import ( "image/color" "log" "net/http" "strconv" "github.com/taironas/route" "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/draw" "github.com/taironas/tinygraphs/extract" Loading @@ -15,83 +12,24 @@ import ( func Random(w http.ResponseWriter, r *http.Request) { colorMap := colors.MapOfColorPatterns() colorMap := colors.MapOfColorThemes() var err error theme := extract.Theme(r) var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[0][0] bg = colorMap["base"][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[0][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandom(w, "", bg, fg, size) } func RandomColor(w http.ResponseWriter, r *http.Request) { var err error var id string if id, err = route.Context.Get(r, "colorId"); err != nil { log.Println("Unable to get 'colorId' value: ", err) id = "0" fg = colorMap["base"][1] } var colorId int64 if colorId, err = strconv.ParseInt(id, 0, 64); err != nil { colorId = 0 if val, ok := colorMap[theme]; ok { bg = val[0] fg = val[1] } colorMap := colors.MapOfColorPatterns() bg, err1 := extract.Background(r) if err1 != nil { bg = colorMap[int(colorId)][0] } fg, err2 := extract.Foreground(r) if err2 != nil { fg = colorMap[int(colorId)][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandom(w, "", bg, fg, size) } func RandomMirror(w http.ResponseWriter, r *http.Request) { colorMap := colors.MapOfColorPatterns() bg, err1 := extract.Background(r) if err1 != nil { bg = colorMap[0][0] } fg, err2 := extract.Foreground(r) if err2 != nil { fg = colorMap[0][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandomMirror(w, "", bg, fg, size) } func RandomMirrorColor(w http.ResponseWriter, r *http.Request) { var err error var id string if id, err = route.Context.Get(r, "colorId"); err != nil { log.Println("Unable to get 'colorId' value: ", err) id = "0" } var colorId int64 if colorId, err = strconv.ParseInt(id, 0, 64); err != nil { colorId = 0 } colorMap := colors.MapOfColorPatterns() var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[int(colorId)][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[int(colorId)][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandomMirror(w, "", bg, fg, size) } controllers/isogrids/randomMirror.go 0 → 100644 +34 −0 Original line number Diff line number Diff line package isogrids import ( "image/color" "net/http" "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/draw" "github.com/taironas/tinygraphs/extract" "github.com/taironas/tinygraphs/write" ) func RandomMirror(w http.ResponseWriter, r *http.Request) { theme := extract.Theme(r) colorMap := colors.MapOfColorThemes() var err error var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap["base"][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap["base"][1] } if val, ok := colorMap[theme]; ok { bg = val[0] fg = val[1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandomMirror(w, "", bg, fg, size) } Loading
app-backend/main.go +5 −8 Original line number Diff line number Diff line Loading @@ -27,18 +27,15 @@ func main() { r.HandleFunc("/squares/random", squares.Random) r.HandleFunc("/squares/:key", squares.Square) //cached r.HandleFunc("/isogrids/skeleton", isogrids.Skeleton) r.HandleFunc("/isogrids/:key", isogrids.Isogrids) r.HandleFunc("/isogrids/:colorId/:key", isogrids.Color) r.HandleFunc("/isogrids/diagonals", isogrids.Diagonals) r.HandleFunc("/isogrids/halfdiagonals", isogrids.HalfDiagonals) r.HandleFunc("/isogrids/gridbw", isogrids.GridBW) r.HandleFunc("/isogrids/grid2colors", isogrids.Grid2Colors) r.HandleFunc("/isogrids/labs/skeleton", isogrids.Skeleton) r.HandleFunc("/isogrids/labs/diagonals", isogrids.Diagonals) r.HandleFunc("/isogrids/labs/halfdiagonals", isogrids.HalfDiagonals) r.HandleFunc("/isogrids/labs/gridbw", isogrids.GridBW) r.HandleFunc("/isogrids/labs/grid2colors", isogrids.Grid2Colors) r.HandleFunc("/isogrids/random/:colorId", isogrids.RandomColor) r.HandleFunc("/isogrids/random", isogrids.Random) r.HandleFunc("/isogrids/random-mirror/:colorId", isogrids.RandomMirrorColor) r.HandleFunc("/isogrids/random-mirror", isogrids.RandomMirror) r.AddStaticResource(root) Loading
app/partials/marketing/example.html +4 −4 Original line number Diff line number Diff line Loading @@ -12,7 +12,7 @@ <img class="featurette-image img-responsive img-thumbnail" src="/squares/tinygraphs" alt="consistent square black and white avatar"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/squares/6/tinygraphs" alt="consisent square color avatar"> <img class="featurette-image img-responsive img-thumbnail" src="/squares/tinygraphs?theme=bythepool" alt="consisent square color avatar"> </div> </div> </div> <!-- /.col-md-12 --> Loading @@ -35,16 +35,16 @@ <div class="row"> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/skeleton" alt="grid image"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/labs/skeleton" alt="grid image"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/random/1" alt="random black an white avatar"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/random?theme=sugarsweets" alt="random black an white avatar"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/tinygraphs" alt="consistent square black and white avatar"> </div> <div class="col-md-3"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/6/tinygraphs" alt="consisent square color avatar"> <img class="featurette-image img-responsive img-thumbnail" src="/isogrids/tinygraphs?theme=duskfalling" alt="consisent square color avatar"> </div> </div> Loading
controllers/isogrids/isogrids.go +11 −43 Original line number Diff line number Diff line Loading @@ -7,10 +7,9 @@ import ( "io" "log" "net/http" "strconv" "github.com/taironas/route" tgColors "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/draw" "github.com/taironas/tinygraphs/extract" "github.com/taironas/tinygraphs/write" Loading @@ -30,51 +29,20 @@ func Isogrids(w http.ResponseWriter, r *http.Request) { io.WriteString(h, key) key = fmt.Sprintf("%x", h.Sum(nil)[:]) colorMap := tgColors.MapOfColorPatterns() theme := extract.Theme(r) colorMap := colors.MapOfColorThemes() var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[0][0] bg = colorMap["base"][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[0][1] } size := extract.Size(r) write.ImageSVG(w) draw.Isogrids(w, key, bg, fg, size) fg = colorMap["base"][1] } // Color is the handler for /isogrids/:colorId/:key // builds a 10x10 grid with alternate colors based on the string passed in the url. func Color(w http.ResponseWriter, r *http.Request) { var err error var id string if id, err = route.Context.Get(r, "colorId"); err != nil { log.Println("Unable to get 'colorId' value: ", err) id = "0" } var colorId int64 if colorId, err = strconv.ParseInt(id, 0, 64); err != nil { colorId = 0 } var key string if key, err = route.Context.Get(r, "key"); err != nil { log.Println("Unable to get 'key' value: ", err) key = "" } h := md5.New() io.WriteString(h, key) key = fmt.Sprintf("%x", h.Sum(nil)[:]) colorMap := tgColors.MapOfColorPatterns() var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[int(colorId)][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[int(colorId)][1] if val, ok := colorMap[theme]; ok { bg = val[0] fg = val[1] } size := extract.Size(r) Loading @@ -84,7 +52,7 @@ func Color(w http.ResponseWriter, r *http.Request) { func GridBW(w http.ResponseWriter, r *http.Request) { colorMap := tgColors.MapOfColorPatterns() colorMap := colors.MapOfColorPatterns() var err error var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { Loading @@ -100,7 +68,7 @@ func GridBW(w http.ResponseWriter, r *http.Request) { func Grid2Colors(w http.ResponseWriter, r *http.Request) { colorMap := tgColors.MapOfColorPatterns() colorMap := colors.MapOfColorPatterns() var err error var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { Loading
controllers/isogrids/random.go +8 −70 Original line number Diff line number Diff line Loading @@ -2,11 +2,8 @@ package isogrids import ( "image/color" "log" "net/http" "strconv" "github.com/taironas/route" "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/draw" "github.com/taironas/tinygraphs/extract" Loading @@ -15,83 +12,24 @@ import ( func Random(w http.ResponseWriter, r *http.Request) { colorMap := colors.MapOfColorPatterns() colorMap := colors.MapOfColorThemes() var err error theme := extract.Theme(r) var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[0][0] bg = colorMap["base"][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[0][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandom(w, "", bg, fg, size) } func RandomColor(w http.ResponseWriter, r *http.Request) { var err error var id string if id, err = route.Context.Get(r, "colorId"); err != nil { log.Println("Unable to get 'colorId' value: ", err) id = "0" fg = colorMap["base"][1] } var colorId int64 if colorId, err = strconv.ParseInt(id, 0, 64); err != nil { colorId = 0 if val, ok := colorMap[theme]; ok { bg = val[0] fg = val[1] } colorMap := colors.MapOfColorPatterns() bg, err1 := extract.Background(r) if err1 != nil { bg = colorMap[int(colorId)][0] } fg, err2 := extract.Foreground(r) if err2 != nil { fg = colorMap[int(colorId)][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandom(w, "", bg, fg, size) } func RandomMirror(w http.ResponseWriter, r *http.Request) { colorMap := colors.MapOfColorPatterns() bg, err1 := extract.Background(r) if err1 != nil { bg = colorMap[0][0] } fg, err2 := extract.Foreground(r) if err2 != nil { fg = colorMap[0][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandomMirror(w, "", bg, fg, size) } func RandomMirrorColor(w http.ResponseWriter, r *http.Request) { var err error var id string if id, err = route.Context.Get(r, "colorId"); err != nil { log.Println("Unable to get 'colorId' value: ", err) id = "0" } var colorId int64 if colorId, err = strconv.ParseInt(id, 0, 64); err != nil { colorId = 0 } colorMap := colors.MapOfColorPatterns() var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap[int(colorId)][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap[int(colorId)][1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandomMirror(w, "", bg, fg, size) }
controllers/isogrids/randomMirror.go 0 → 100644 +34 −0 Original line number Diff line number Diff line package isogrids import ( "image/color" "net/http" "github.com/taironas/tinygraphs/colors" "github.com/taironas/tinygraphs/draw" "github.com/taironas/tinygraphs/extract" "github.com/taironas/tinygraphs/write" ) func RandomMirror(w http.ResponseWriter, r *http.Request) { theme := extract.Theme(r) colorMap := colors.MapOfColorThemes() var err error var bg, fg color.RGBA if bg, err = extract.Background(r); err != nil { bg = colorMap["base"][0] } if fg, err = extract.Foreground(r); err != nil { fg = colorMap["base"][1] } if val, ok := colorMap[theme]; ok { bg = val[0] fg = val[1] } size := extract.Size(r) write.ImageSVG(w) draw.IsogridsRandomMirror(w, "", bg, fg, size) }