Skip to content

hdurand/spend-publishing-dashboard

 
 

Repository files navigation

Spend Publishing Dashboard

Spend Publishing Dashboard provides access to, and displays statistics on, a collection of published data. This collection of data is logically related: for example, data published by a single government department, or a group of departments.

Demo

We have an example dashboard deployed with dummy data:

Example Spend Publishing Dashboard

This is the data repository for the example dashboard.

Get started

# get the code
git clone https://github.com/okfn/spend-publishing-dashboard.git .

# install the dependencies
npm install

# run the server
gulp

# build the JS app from source
gulp scripts

# run jekyll locally
jekyll serve --watch

# visit http://localhost:4000/

Read on for details.

Application

The dashboard is a client-side application that hooks up to a static data repository for its data.

The site is a combination of Jekyll for static generation and Javascript is developed using the Flux application architecture. That means it implements a unidirectional data flow , and uses React for the view layer.

Everything is written in Node-style CommonJS, and the distributed code is transformed with browserify. This is an automated process, just run gulp and the magic happens.

Local development

Use gulp to manage your local workflow.

Remote deployment

Use gulp deploy to push the dist/* directory to GitHub Pages.

Data

All dashboard data is stored in CSV files (with an additional configuration file located with the data is in JSON). This data is located "elsewhere": any publicly-accessible flat file storage or git server will do.

Currently, we are managing dashboard data in git repositories on GitHub, which gives easy access to the files, and enables a version history of the data.

We then access that data via RawGit, which provides a proxy in front of GitHub with additional headers (including CORS, which we require).

RawGit works automatically with any GitHub repository. You do not need to do anything except replace the GitHub domain with the RawGit one.

For example:

  • https://github.com/okfn/spd-data-example/master

becomes:

  • https://rawgit.com/okfn/spd-data-example/master

Data for a Spend Publishing Dashboard can be generated in any way, as long as it conforms to the schema that is in use. At this stage of development, there is not extensive documentation on the schema.

To learn more, please see the SPD Example Data Repository and the SPD Admin CLI that we use to run statistical data over a set of publishers/data sources.

About

Spend Publishing Dashboard displays statistics on a collection of published data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 48.4%
  • CSS 46.9%
  • HTML 4.7%