Skip to content

Writing your own babel.json

John Zhang edited this page Jul 20, 2019 · 2 revisions

babel.json is the description file of an extension.

{
    "name":"Template",
    "code":"template",
    "icon":"resources/[email protected]",
    "type":"virtual-judge",
    "description": "Template of Interface for NOJ",
    "license": "MIT",
    "repository":"https://github.com/NJUPTAAA/NOJ_Extensions_Template",
    "version":"0.0.1",
    "website":"https://acm.njupt.edu.cn/",
    "custom":{
        "css":"resources/custom.css"
    },
    "provider":{
        "judger":"Judger",
        "crawler":"Crawler",
        "submitter":"Submitter",
        "installer":"Installer"
    },
    "require":{
        "NOJ":"^0.3.0"
    }
}

name: The displayed name of your Online Judges.

  • example: CodeFroces POJ

code: The unique package name for your extension, it's lower-case only.

  • example: codeforces poj

icon: the icon of the path of this extension, should be 600*130 with white background.

type: Babel now supports online-judge and virtual-judge, the difference is online judge need to have Judge Server provided and Status Monitored.

  • example: online-judge virtual-judge

description: the description of this plugin.

license: the open-source license of this extension, MIT recommended.

  • example: MIT null

repository: the repository url of this extension.

  • example: https://github.com/NJUPTAAA/NOJ_Extensions_Template

version: the latest version of this extension, should be consist with release version info.

  • example: 0.1.2

website: the website of the Online Judge.

  • example: https://acm.njupt.edu.cn/ http://poj.org/

custom.css: the path of the custom css to be imported.

  • example: resources/custom.css

custom.js: the path of the custom js to be imported.

  • example: resources/custom.js

provider.judger: the path of the Judger Provider.

  • example: Judger

provider.crawler: the path of the Crawler Provider.

  • example: Crawler

provider.submitter: the path of the Submitter Provider.

  • example: Submitter

provider.installer: the path of the Installer Provider.

  • example: Installer

provider.synchronizer: the path of the Synchronizer Provider.

  • example: Synchronizer

require: the requirement of the extension.

  • example: {"NOJ":"^0.3.0"}
Clone this wiki locally