Giter Club home page Giter Club logo

pizzeria's Introduction

Pizzeria Build Status

Pizzeria is a chart generator as a service

What is it?

The main inspiration of Pizzeria was Google deprecated chart api. We believe that sometimes developers need to have a simple way to generate image charts. A http api could be a good tool to solve this problem.

Requirements

Golang 1.6

How to install and run it ?

Prefer always a stable release found here

# Install Go compiler on https://golang.org/dl
# Download the project on some $path
cd $path
go get 
go run main.go

Examples

Pie chart

http://localhost:8080/pie?h=200&w=200&dt=1,2,3&lb=cash,credit,debit

Bar chart

http://localhost:8080/bar?h=200&w=200&dt=1,2,3&lb=cash,credit,debit

Line chart

http://localhost:8080/line?h=200&w=200&dtx=1,2,3&dty=2,4,6

Documentation

Read more about the possibilities on Doc page

pizzeria's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pizzeria's Issues

Add checksum option

As a developer keeping Pizzeria on production
I would like to avoid that other people use that api 
To decrease my servers costs. 

As We know, is easier generate a chart with pizzeria, for example when you want to put a chart image
in a newsletter template, you could to use
http://yourdomaintopizzeria.com/pie?h=200&w=300&dt=70,30&lb=etpay,corporate

but this expose the url base to the api and anyone could consume it to generate another charts.
Currently the only way to avoid it is always consume pizzeria from another api or use nginx, for example, to create alias and hide the real path.
It would be nice that Pizzeria works with a parameter checksum that is a encrypted data of all the parameters.
See below how we can do it :

  • Add parameter on config.json to decide if api will use checksum
  • Add parameter on config.json to set the secret phrase
  • Check in every endpoint if pizzeria needs to encrypt parameters in some algorithm (using the secret phrase) and if this value is equal then a checksum parameter send on request.

Add a cache layer

As a user who receive many requests per second
I would like to have a cache support using some drivers
To avoid generate the same image many times

A first implementation of this was started but it is not stable yet.

Improve the way to install Pizzeria

As a developer trying to use Pizzeria as the fist time
We need a easier way to install the tool 

It can be done with:

  • Makefile
  • bash script command like curl file | bash

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.