Giter Club home page Giter Club logo

contribute.json's Introduction

contribute.json

A JSON schema for open-source project contribution data.

This is currently a proposal and is not yet stable. Suggestions and pull-requests welcome.

This is the current draft. I'm presenting the schema as an example instance using mozilla/bedrock as the subject. Previous discussion can be found in the comments of the original gist.

{
    // required
    "name": "Bedrock",
    "description": "The app powering (most of) www.mozilla.org.",
    "repository": {
        "url": "https://github.com/mozilla/bedrock",
        "license": "MPL2",
        // optional
        "type": "git",
        "tests": "https://ci.mozilla.org/job/bedrock/",
        "clone": "https://github.com/mozilla/bedrock.git"
    },

    // optional
    "participate": {
        "home": "https://wiki.mozilla.org/Mozilla.org",
        "docs": "http://bedrock.readthedocs.org/",
        // optional
        "mailing-list": "https://www.mozilla.org/about/forums/#dev-mozilla-org",
        "irc": "irc://irc.mozilla.org/#www",
        "irc-contacts": [
            "pmac",
            "jgmize",
            "malexis",
            "cmore"
        ]
    },
    "bugs": {
        "list": "https://bugzilla.mozilla.org/buglist.cgi?query_format=advanced&bug_status=UNCONFIRMED&bug_status=NEW&product=www.mozilla.org",
        "report": "https://bugzilla.mozilla.org/enter_bug.cgi?product=www.mozilla.org&component=Bedrock",
        "mentored": "https://bugzilla.mozilla.org/buglist.cgi?f1=bug_mentor&o1=isnotempty&query_format=advanced&bug_status=NEW&product=www.mozilla.org&list_id=10866041"
    },
    "urls": {
        "prod": "https://www.mozilla.org",
        "stage": "https://www.allizom.org",
        "dev": "https://www-dev.allizom.org",
        "demo1": "https://www-demo1.allizom.org"
    },
    "keywords": [
        "python",
        "less-css",
        "django",
        "html5",
        "jquery"
    ]
}

Validation

We're currently using the JSON Schema standard and we publish our schema at schema.json.

You can, for example, use the json-schema-validator to validate your own contribute.json against this schema.

Flask app

There's a server-side app that is currently available on https://www.contributejson.org

Running the Flask app locally

# clone from the main repo
git clone https://github.com/mozilla/contribute.json.git

# go into the directory
cd contribute.json

# using virtualenv wrapper, create a new virtual environment for the project.
mkvirtualenv contribute.json

# intall the requirements
pip install -r requirements.txt

# install the npm dependencies
npm install

# generate the CSS files (use `grunt watch` to work on the LESS files)
grunt less

# You can run the app with
DEBUG=true python app

open http://localhost:5000/

NB! Most of the functionality is built as an AngularJS app.

Sentry

To use Sentry you just need to create an environment variable called SENTRY_DSN and it will be used.

contribute.json's People

Contributors

akatsoulas avatar bobsilverberg avatar cvan avatar dzc34 avatar glogiotatidis avatar jescah avatar johngian avatar koddsson avatar leplatrem avatar lmorchard avatar mozilla-github-standards avatar mstriemer avatar mythmon avatar peterbe avatar phrawzty avatar pmac avatar potch avatar shaguftamethwani avatar willkg avatar

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.