[
    {
        "id": "https://github.com/MPDL/rdmorganiser.github.io",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/rdmorganiser.github.io><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmorganiser.github.io target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmorganiser.github.io</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmorganiser.github.io style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>RDMO Website</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmorganiser.github.io</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>RDMO Website</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmorganiser.github.io target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 07-12-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmorganiser.github.io/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmorganiser.github.io/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmorganiser.github.io/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/rdmorganiser.github.io/tree/master/docs target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/rdmorganiser.github.io><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmorganiser.github.io target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmorganiser.github.io</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmorganiser.github.io style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>RDMO Website</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmorganiser.github.io</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>RDMO Website</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmorganiser.github.io target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 07-12-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmorganiser.github.io/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmorganiser.github.io/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmorganiser.github.io/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/rdmorganiser.github.io/tree/master/docs target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "rdmorganiser.github.io",
        "recently_updated": 719,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "css",
            "html",
            "scss",
            "makefile",
            "ruby",
            "shell"
        ],
        "description": "RDMO  Website",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/demography-gender-miner",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/demography-gender-miner><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/demography-gender-miner target=_blank style=\"text-decoration: none;\"><h4 class=title>demography-gender-miner</h4></a><button class=copy-btn value=https://github.com/MPDL/demography-gender-miner style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Prototype for extraction of the Journal Demography publications and analyze of the authors gender structure of the Corpus</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">demography-gender-miner</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Prototype for extraction of the Journal Demography publications and analyze of the authors gender structure of the Corpus</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/demography-gender-miner target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 22-09-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/demography-gender-miner/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/demography-gender-miner/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/demography-gender-miner/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><code>git clone https://github.com/MPDL/demography-gender-miner.git</code></li><li><code>cd demography-gender-miner</code></li><li><code>gradle test run</code></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/demography-gender-miner/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/groovy.svg alt=groovy class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Groovy></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/demography-gender-miner><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/demography-gender-miner target=_blank style=\"text-decoration: none;\"><h4 class=title>demography-gender-miner</h4></a><button class=copy-btn value=https://github.com/MPDL/demography-gender-miner style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Prototype for extraction of the Journal Demography publications and analyze of the authors gender structure of the Corpus</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">demography-gender-miner</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Prototype for extraction of the Journal Demography publications and analyze of the authors gender structure of the Corpus</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/demography-gender-miner target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 22-09-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/demography-gender-miner/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/demography-gender-miner/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/demography-gender-miner/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><code>git clone https://github.com/MPDL/demography-gender-miner.git</code></li><li><code>cd demography-gender-miner</code></li><li><code>gradle test run</code></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/demography-gender-miner/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/groovy.svg alt=groovy class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Groovy></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "demography-gender-miner",
        "recently_updated": 3352,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java",
            "groovy"
        ],
        "description": "Prototype for extraction of the Journal Demography publications and analyze of the authors gender structure of the Corpus\n \n",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/rdm-homepage",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/rdm-homepage><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdm-homepage target=_blank style=\"text-decoration: none;\"><h4 class=title>rdm-homepage</h4></a><button class=copy-btn value=https://github.com/MPDL/rdm-homepage style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdm-homepage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdm-homepage target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 21-05-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdm-homepage/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdm-homepage/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdm-homepage/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>npm install\n</code></pre><pre><code>npm run serve\n</code></pre><pre><code>npm run build\n</code></pre></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/rdm-homepage><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdm-homepage target=_blank style=\"text-decoration: none;\"><h4 class=title>rdm-homepage</h4></a><button class=copy-btn value=https://github.com/MPDL/rdm-homepage style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdm-homepage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdm-homepage target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 21-05-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdm-homepage/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdm-homepage/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdm-homepage/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>npm install\n</code></pre><pre><code>npm run serve\n</code></pre><pre><code>npm run build\n</code></pre></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "rdm-homepage",
        "recently_updated": 919,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "html",
            "vue",
            "css",
            "scss"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "GNU General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/java-connector",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/java-connector><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/java-connector target=_blank style=\"text-decoration: none;\"><h4 class=title>java-connector</h4></a><button class=copy-btn value=https://github.com/MPDL/java-connector style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">java-connector</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/java-connector target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 03-09-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/java-connector/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/java-connector/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/java-connector/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Using mpdl [screenshot service]<a href=eg.>1</a> by doing</p><pre><code>Connector.getScreenshotService().captureFromURL(&quot;serviceTargetURL&quot;, &quot;url&quot;, &quot;outputFormat&quot;, &quot;outputSize&quot;, &quot;crop&quot;)\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/java-connector/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/java-connector><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/java-connector target=_blank style=\"text-decoration: none;\"><h4 class=title>java-connector</h4></a><button class=copy-btn value=https://github.com/MPDL/java-connector style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">java-connector</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/java-connector target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 03-09-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/java-connector/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/java-connector/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/java-connector/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Using mpdl [screenshot service]<a href=eg.>1</a> by doing</p><pre><code>Connector.getScreenshotService().captureFromURL(&quot;serviceTargetURL&quot;, &quot;url&quot;, &quot;outputFormat&quot;, &quot;outputSize&quot;, &quot;crop&quot;)\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/java-connector/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "java-connector",
        "recently_updated": 3371,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/upverse",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/upverse><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/upverse target=_blank style=\"text-decoration: none;\"><h4 class=title>upverse</h4></a><button class=copy-btn value=https://github.com/MPDL/upverse style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Direct upload from data files to Edmond Research Repository</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">upverse</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Direct upload from data files to Edmond Research Repository</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/upverse target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a88d62;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 28-09-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/upverse/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"Last release: v1.0.0\" alt=\"Last release: v1.0.0\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/upverse/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/upverse/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/upverse style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>cff-version: 1.2.0\ntitle: Upverse\nmessage: &gt;-\n  If you use this software, please cite it using the\n  metadata from this file.\ntype: software\nauthors:\n  <span class=k>-</span> given-names: Jos\u00e9 Daniel\n    family-names: Vila Rodr\u00edguez\n    email: vilarodriguez@mpdl.mpg.de\n    affiliation: Max Planck Digital Library\n    orcid: &#39;https://orcid.org/0000-0001-5217-1715&#39;\n  <span class=k>-</span> given-names: Markus\n    family-names: Haarl\u00e4nder\n    email: haarl\u00e4nder@mpdl.mpg.de\n    affiliation: Max Plank Digital Library \n  <span class=k>-</span> given-names: Sy Dat\n    family-names: Ho\n    email: ho@mpdl.mpg.de\n    affiliation: Max Plank Digital Library \n    orcid: &#39;https://orcid.org/0000-0002-6218-4146&#39;\nidentifiers:\n  <span class=k>-</span> type: doi\n    value: 10.17617/1.upv23\n    description: &gt;-\n      Direct upload from data files to Edmond Research\n      Repository\nkeywords:\n  <span class=k>-</span> edmond\n  <span class=k>-</span> research\n  <span class=k>-</span> data\n  <span class=k>-</span> repository\n  <span class=k>-</span> dataverse\n  <span class=k>-</span> upload\nrepository-code: &#39;https://github.com/MPDL/upverse/releases&#39;\nlicense: MIT\n</pre></div></body></html></div></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>npm install</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/upverse/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/upverse/releases target=_blank class=repo-icon><img src=repo_icons/download.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Download alt=Download></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/upverse><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/upverse target=_blank style=\"text-decoration: none;\"><h4 class=title>upverse</h4></a><button class=copy-btn value=https://github.com/MPDL/upverse style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Direct upload from data files to Edmond Research Repository</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">upverse</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Direct upload from data files to Edmond Research Repository</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/upverse target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a88d62;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 28-09-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/upverse/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"Last release: v1.0.0\" alt=\"Last release: v1.0.0\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/upverse/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/upverse/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/upverse style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>cff-version: 1.2.0\ntitle: Upverse\nmessage: &gt;-\n  If you use this software, please cite it using the\n  metadata from this file.\ntype: software\nauthors:\n  <span class=k>-</span> given-names: Jos\u00e9 Daniel\n    family-names: Vila Rodr\u00edguez\n    email: vilarodriguez@mpdl.mpg.de\n    affiliation: Max Planck Digital Library\n    orcid: &#39;https://orcid.org/0000-0001-5217-1715&#39;\n  <span class=k>-</span> given-names: Markus\n    family-names: Haarl\u00e4nder\n    email: haarl\u00e4nder@mpdl.mpg.de\n    affiliation: Max Plank Digital Library \n  <span class=k>-</span> given-names: Sy Dat\n    family-names: Ho\n    email: ho@mpdl.mpg.de\n    affiliation: Max Plank Digital Library \n    orcid: &#39;https://orcid.org/0000-0002-6218-4146&#39;\nidentifiers:\n  <span class=k>-</span> type: doi\n    value: 10.17617/1.upv23\n    description: &gt;-\n      Direct upload from data files to Edmond Research\n      Repository\nkeywords:\n  <span class=k>-</span> edmond\n  <span class=k>-</span> research\n  <span class=k>-</span> data\n  <span class=k>-</span> repository\n  <span class=k>-</span> dataverse\n  <span class=k>-</span> upload\nrepository-code: &#39;https://github.com/MPDL/upverse/releases&#39;\nlicense: MIT\n</pre></div></body></html></div></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>npm install</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/upverse/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/upverse/releases target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/download.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Download alt=Download></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "upverse",
        "recently_updated": 59,
        "stargazersCount": 1,
        "releases": 1,
        "languages": [
            "html",
            "typescript",
            "css"
        ],
        "description": "Direct upload from data files to Edmond Research Repository",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": {
            "cff": "cff-version: 1.2.0\ntitle: Upverse\nmessage: >-\n  If you use this software, please cite it using the\n  metadata from this file.\ntype: software\nauthors:\n  - given-names: Jos\u00e9 Daniel\n    family-names: Vila Rodr\u00edguez\n    email: vilarodriguez@mpdl.mpg.de\n    affiliation: Max Planck Digital Library\n    orcid: 'https://orcid.org/0000-0001-5217-1715'\n  - given-names: Markus\n    family-names: Haarl\u00e4nder\n    email: haarl\u00e4nder@mpdl.mpg.de\n    affiliation: Max Plank Digital Library \n  - given-names: Sy Dat\n    family-names: Ho\n    email: ho@mpdl.mpg.de\n    affiliation: Max Plank Digital Library \n    orcid: 'https://orcid.org/0000-0002-6218-4146'\nidentifiers:\n  - type: doi\n    value: 10.17617/1.upv23\n    description: >-\n      Direct upload from data files to Edmond Research\n      Repository\nkeywords:\n  - edmond\n  - research\n  - data\n  - repository\n  - dataverse\n  - upload\nrepository-code: 'https://github.com/MPDL/upverse/releases'\nlicense: MIT",
            "bibtex": null,
            "citation": []
        },
        "citationText": [],
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": true,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/Service-api-webpage",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/Service-api-webpage><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/Service-api-webpage target=_blank style=\"text-decoration: none;\"><h4 class=title>Service-api-webpage</h4></a><button class=copy-btn value=https://github.com/MPDL/Service-api-webpage style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Service-api-webpage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/Service-api-webpage target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=repo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-02-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/Service-api-webpage/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/Service-api-webpage/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/Service-api-webpage/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/Service-api-webpage/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/Service-api-webpage><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/Service-api-webpage target=_blank style=\"text-decoration: none;\"><h4 class=title>Service-api-webpage</h4></a><button class=copy-btn value=https://github.com/MPDL/Service-api-webpage style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Service-api-webpage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/Service-api-webpage target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-02-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/Service-api-webpage/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/Service-api-webpage/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/Service-api-webpage/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/Service-api-webpage/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "Service-api-webpage",
        "recently_updated": 2839,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "html",
            "css"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": true,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/LabCam",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/LabCam><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Upgrading to a new version of React Native requires updating the <code>react-native</code>, <code>react</code>, and <code>expo</code> package versions, and setting the correct <code>sdkVersion</code> in <code>app.json</code>. See the <a href=https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md>versioning guide</a> for up-to-date information about package version compatibility.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Upgrading to a new version of React Native requires updating the <code>react-native</code>, <code>react</code>, and <code>expo</code> package versions, and setting the correct <code>sdkVersion</code> in <code>app.json</code>. See the <a href=https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md>versioning guide</a> for up-to-date information about package version compatibility.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>If Yarn was installed when the project was initialized, then dependencies will have been installed via Yarn, and you should probably use it to run these commands as well. Unlike dependency installation, command running syntax is identical for Yarn and NPM at the time of this writing.</p><p>In some cases, this is less than ideal. This might be the case if you need to run your project inside of a virtual machine and you have to access the packager via a different IP address than the one which prints by default. In order to override the IP address or hostname that is detected by Create React Native App, you can specify your own hostname via the <code>REACT_NATIVE_PACKAGER_HOSTNAME</code> environment variable: Windows:</p><pre><code>set REACT_NATIVE_PACKAGER_HOSTNAME='my-custom-ip-address-or-hostname'\nnpm start\n</code></pre><ol><li>Find the Flow <code>[version]</code> at the bottom of the included <a href=.flowconfig>.flowconfig</a></li><li>Run <code>npm install --save-dev flow-bin@x.y.z</code> (or <code>yarn add --dev flow-bin@x.y.z</code>), where <code>x.y.z</code> is the .flowconfig version number.</li><li>Add <code>&quot;flow&quot;: &quot;flow&quot;</code> to the <code>scripts</code> section of your <code>package.json</code>.</li><li>Add <code>// @flow</code> to any files you want to type check (for example, to <code>App.js</code>). Now you can run <code>npm run flow</code> (or <code>yarn flow</code>) to check the files for type errors. You can optionally use a <a href=https://flow.org/en/docs/editors/ >plugin for your IDE or editor</a> for a better integrated experience.</li></ol><p>If you're on a Mac, there are a few errors that users sometimes see when attempting to <code>npm run ios</code>:</p><p>If this causes problems for you, you may want to try changing your terminal's color theme to have more contrast, or running Create React Native App from a different terminal. You can also manually enter the URL printed by the packager script in the Expo app's search bar to load it manually.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Runs your app in development mode.</p><p>Open it in the <a href=https://expo.io>Expo app</a> on your phone to view it. It will reload if you save edits to your files, and you will see build errors and logs in the terminal.</p><p>Sometimes you may need to reset or clear the React Native packager's cache. To do so, you can pass the <code>--reset-cache</code> flag to the start script:</p><pre><code>npm start --reset-cache\n# or\nyarn start --reset-cache\n</code></pre><p>Runs the <a href=https://github.com/facebook/jest>jest</a> test runner on your tests.</p><ol><li><p>Make sure that you can run adb from your terminal.</p></li><li><p>Open Genymotion and navigate to <code>Settings -&gt; ADB</code>. Select \u201cUse custom Android SDK tools\u201d and update with your <a href=https://stackoverflow.com/questions/25176594/android-sdk-location>Android SDK directory</a>.</p></li><li><p>Find Genymotion\u2019s copy of adb. On macOS for example, this is normally <code>/Applications/Genymotion.app/Contents/MacOS/tools/</code>.</p></li><li><p>Add the Genymotion tools directory to your path (instructions for <a href=http://osxdaily.com/2014/08/14/add-new-path-to-path-command-line/ >Mac</a>, <a href=http://www.computerhope.com/issues/ch001647.htm>Linux</a>, and <a href=https://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/ >Windows</a>).</p></li><li><p>Make sure that you can run adb from your terminal.</p></li></ol><p>If you have made use of Expo APIs while working on your project, then those API calls will stop working if you eject to a regular React Native project. If you want to continue using those APIs, you can eject to &quot;React Native + ExpoKit&quot; which will still allow you to build your own native code and continue using the Expo APIs. See the <a href=https://github.com/react-community/create-react-native-app/blob/master/EJECTING.md>ejecting guide</a> for more details about this option.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/LabCam><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Upgrading to a new version of React Native requires updating the <code>react-native</code>, <code>react</code>, and <code>expo</code> package versions, and setting the correct <code>sdkVersion</code> in <code>app.json</code>. See the <a href=https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md>versioning guide</a> for up-to-date information about package version compatibility.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Upgrading to a new version of React Native requires updating the <code>react-native</code>, <code>react</code>, and <code>expo</code> package versions, and setting the correct <code>sdkVersion</code> in <code>app.json</code>. See the <a href=https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md>versioning guide</a> for up-to-date information about package version compatibility.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>If Yarn was installed when the project was initialized, then dependencies will have been installed via Yarn, and you should probably use it to run these commands as well. Unlike dependency installation, command running syntax is identical for Yarn and NPM at the time of this writing.</p><p>In some cases, this is less than ideal. This might be the case if you need to run your project inside of a virtual machine and you have to access the packager via a different IP address than the one which prints by default. In order to override the IP address or hostname that is detected by Create React Native App, you can specify your own hostname via the <code>REACT_NATIVE_PACKAGER_HOSTNAME</code> environment variable: Windows:</p><pre><code>set REACT_NATIVE_PACKAGER_HOSTNAME='my-custom-ip-address-or-hostname'\nnpm start\n</code></pre><ol><li>Find the Flow <code>[version]</code> at the bottom of the included <a href=.flowconfig>.flowconfig</a></li><li>Run <code>npm install --save-dev flow-bin@x.y.z</code> (or <code>yarn add --dev flow-bin@x.y.z</code>), where <code>x.y.z</code> is the .flowconfig version number.</li><li>Add <code>&quot;flow&quot;: &quot;flow&quot;</code> to the <code>scripts</code> section of your <code>package.json</code>.</li><li>Add <code>// @flow</code> to any files you want to type check (for example, to <code>App.js</code>). Now you can run <code>npm run flow</code> (or <code>yarn flow</code>) to check the files for type errors. You can optionally use a <a href=https://flow.org/en/docs/editors/ >plugin for your IDE or editor</a> for a better integrated experience.</li></ol><p>If you're on a Mac, there are a few errors that users sometimes see when attempting to <code>npm run ios</code>:</p><p>If this causes problems for you, you may want to try changing your terminal's color theme to have more contrast, or running Create React Native App from a different terminal. You can also manually enter the URL printed by the packager script in the Expo app's search bar to load it manually.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Runs your app in development mode.</p><p>Open it in the <a href=https://expo.io>Expo app</a> on your phone to view it. It will reload if you save edits to your files, and you will see build errors and logs in the terminal.</p><p>Sometimes you may need to reset or clear the React Native packager's cache. To do so, you can pass the <code>--reset-cache</code> flag to the start script:</p><pre><code>npm start --reset-cache\n# or\nyarn start --reset-cache\n</code></pre><p>Runs the <a href=https://github.com/facebook/jest>jest</a> test runner on your tests.</p><ol><li><p>Make sure that you can run adb from your terminal.</p></li><li><p>Open Genymotion and navigate to <code>Settings -&gt; ADB</code>. Select \u201cUse custom Android SDK tools\u201d and update with your <a href=https://stackoverflow.com/questions/25176594/android-sdk-location>Android SDK directory</a>.</p></li><li><p>Find Genymotion\u2019s copy of adb. On macOS for example, this is normally <code>/Applications/Genymotion.app/Contents/MacOS/tools/</code>.</p></li><li><p>Add the Genymotion tools directory to your path (instructions for <a href=http://osxdaily.com/2014/08/14/add-new-path-to-path-command-line/ >Mac</a>, <a href=http://www.computerhope.com/issues/ch001647.htm>Linux</a>, and <a href=https://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/ >Windows</a>).</p></li><li><p>Make sure that you can run adb from your terminal.</p></li></ol><p>If you have made use of Expo APIs while working on your project, then those API calls will stop working if you eject to a regular React Native project. If you want to continue using those APIs, you can eject to &quot;React Native + ExpoKit&quot; which will still allow you to build your own native code and continue using the Expo APIs. See the <a href=https://github.com/react-community/create-react-native-app/blob/master/EJECTING.md>ejecting guide</a> for more details about this option.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "LabCam",
        "recently_updated": 1203,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "java",
            "objective-c",
            "c#",
            "python",
            "ruby"
        ],
        "description": "Upgrading to a new version of React Native requires updating the `react-native`, `react`, and `expo` package versions, and setting the correct `sdkVersion` in `app.json`. See the [versioning guide](https://github.com/react-community/create-react-native-app/blob/master/VERSIONS.md) for up-to-date information about package version compatibility.\n \n",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/Edmond-Example-Data-Visualizer",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/Edmond-Example-Data-Visualizer><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer target=_blank style=\"text-decoration: none;\"><h4 class=title>Edmond-Example-Data-Visualizer</h4></a><button class=copy-btn value=https://github.com/MPDL/Edmond-Example-Data-Visualizer style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This repository includes a Jupyter notebook that provides an illustrative example of a research data visualization methodology that can facilitate understanding of complex information. The research data were drawn from the Edmond Research Data Repository from the publication Majorities for Minorities: Participatory Constitution Making and the Protection of Minority Rights (https://doi.org/10.17617/3.0XWBTA). As an example, key variables from the paper, such as the minority rights index and population participation for different countries, were plotted on a map for better understanding. Charts were also created to illustrate the hypotheses proposed in the study.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Edmond-Example-Data-Visualizer</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This repository includes a Jupyter notebook that provides an illustrative example of a research data visualization methodology that can facilitate understanding of complex information. The research data were drawn from the Edmond Research Data Repository from the publication Majorities for Minorities: Participatory Constitution Making and the Protection of Minority Rights (https://doi.org/10.17617/3.0XWBTA). As an example, key variables from the paper, such as the minority rights index and population participation for different countries, were plotted on a map for better understanding. Charts were also created to illustrate the hypotheses proposed in the study.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-03-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/notebook.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Notebook alt=Notebook></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Notebook</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_GSH.ipynb>https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_GSH.ipynb</a></li><li><a href=https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_CPT.ipynb>https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_CPT.ipynb</a></li><li><a href=https://mybinder.org/v2/gh/MPDL/Edmond-Example-Data-Visualizer/HEAD>https://mybinder.org/v2/gh/MPDL/Edmond-Example-Data-Visualizer/HEAD</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/Edmond-Example-Data-Visualizer style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>cff-version: 1.2.0\ntitle: Edmond-Example-Data-Visualizer\nmessage: &gt;-\n  If you use this software, please cite it using the\n  metadata from this file.\ntype: software\nauthors:\n  <span class=k>-</span> given-names: Jan Oliver\n    family-names: Matthiesen\n    email: matthiesen@mpdl.mpg.de\n    orcid: &#39;https://orcid.org/0000-0001-6548-3654&#39;\n    affiliation: Max Planck Digital Library\nidentifiers:\n  <span class=k>-</span> type: doi\n    value: 10.17617/1.99\nrepository-code: &#39;https://github.com/MPDL/Edmond-Example-Data-Visualizer&#39;\nlicense: MIT\n</pre></div></body></html></div></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/Edmond-Example-Data-Visualizer><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer target=_blank style=\"text-decoration: none;\"><h4 class=title>Edmond-Example-Data-Visualizer</h4></a><button class=copy-btn value=https://github.com/MPDL/Edmond-Example-Data-Visualizer style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This repository includes a Jupyter notebook that provides an illustrative example of a research data visualization methodology that can facilitate understanding of complex information. The research data were drawn from the Edmond Research Data Repository from the publication Majorities for Minorities: Participatory Constitution Making and the Protection of Minority Rights (https://doi.org/10.17617/3.0XWBTA). As an example, key variables from the paper, such as the minority rights index and population participation for different countries, were plotted on a map for better understanding. Charts were also created to illustrate the hypotheses proposed in the study.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Edmond-Example-Data-Visualizer</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This repository includes a Jupyter notebook that provides an illustrative example of a research data visualization methodology that can facilitate understanding of complex information. The research data were drawn from the Edmond Research Data Repository from the publication Majorities for Minorities: Participatory Constitution Making and the Protection of Minority Rights (https://doi.org/10.17617/3.0XWBTA). As an example, key variables from the paper, such as the minority rights index and population participation for different countries, were plotted on a map for better understanding. Charts were also created to illustrate the hypotheses proposed in the study.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-03-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/Edmond-Example-Data-Visualizer/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/notebook.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Notebook alt=Notebook></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Notebook</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_GSH.ipynb>https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_GSH.ipynb</a></li><li><a href=https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_CPT.ipynb>https://raw.githubusercontent.com/MPDL/Edmond-Example-Data-Visualizer/main/Visualization_CPT.ipynb</a></li><li><a href=https://mybinder.org/v2/gh/MPDL/Edmond-Example-Data-Visualizer/HEAD>https://mybinder.org/v2/gh/MPDL/Edmond-Example-Data-Visualizer/HEAD</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/Edmond-Example-Data-Visualizer style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>cff-version: 1.2.0\ntitle: Edmond-Example-Data-Visualizer\nmessage: &gt;-\n  If you use this software, please cite it using the\n  metadata from this file.\ntype: software\nauthors:\n  <span class=k>-</span> given-names: Jan Oliver\n    family-names: Matthiesen\n    email: matthiesen@mpdl.mpg.de\n    orcid: &#39;https://orcid.org/0000-0001-6548-3654&#39;\n    affiliation: Max Planck Digital Library\nidentifiers:\n  <span class=k>-</span> type: doi\n    value: 10.17617/1.99\nrepository-code: &#39;https://github.com/MPDL/Edmond-Example-Data-Visualizer&#39;\nlicense: MIT\n</pre></div></body></html></div></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "Edmond-Example-Data-Visualizer",
        "recently_updated": 247,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "jupyter notebook"
        ],
        "description": "This repository includes a Jupyter notebook that provides an illustrative example of a research data visualization methodology that can facilitate understanding of complex information. The research data were drawn from the Edmond Research Data Repository from the publication Majorities for Minorities: Participatory Constitution Making and the Protection of Minority Rights (https://doi.org/10.17617/3.0XWBTA). As an example, key variables from the paper, such as the minority rights index and population participation for different countries, were plotted on a map for better understanding. Charts were also created to illustrate the hypotheses proposed in the study. \n",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": true,
        "citation": {
            "cff": "cff-version: 1.2.0\ntitle: Edmond-Example-Data-Visualizer\nmessage: >-\n  If you use this software, please cite it using the\n  metadata from this file.\ntype: software\nauthors:\n  - given-names: Jan Oliver\n    family-names: Matthiesen\n    email: matthiesen@mpdl.mpg.de\n    orcid: 'https://orcid.org/0000-0001-6548-3654'\n    affiliation: Max Planck Digital Library\nidentifiers:\n  - type: doi\n    value: 10.17617/1.99\nrepository-code: 'https://github.com/MPDL/Edmond-Example-Data-Visualizer'\nlicense: MIT\n",
            "bibtex": null,
            "citation": []
        },
        "citationText": [],
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/keeper-puppet",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/keeper-puppet><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/keeper-puppet target=_blank style=\"text-decoration: none;\"><h4 class=title>keeper-puppet</h4></a><button class=copy-btn value=https://github.com/MPDL/keeper-puppet style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Puppet installation scripts for KEEPER infrastructure</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">keeper-puppet</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Puppet installation scripts for KEEPER infrastructure</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/keeper-puppet target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 09-06-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/keeper-puppet/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/keeper-puppet/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/keeper-puppet/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Puppet installation scripts for KEEPER infrastructure</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/keeper-puppet><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/keeper-puppet target=_blank style=\"text-decoration: none;\"><h4 class=title>keeper-puppet</h4></a><button class=copy-btn value=https://github.com/MPDL/keeper-puppet style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Puppet installation scripts for KEEPER infrastructure</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">keeper-puppet</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Puppet installation scripts for KEEPER infrastructure</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/keeper-puppet target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 09-06-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/keeper-puppet/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/keeper-puppet/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/keeper-puppet/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Puppet installation scripts for KEEPER infrastructure</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "keeper-puppet",
        "recently_updated": 1265,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "puppet",
            "ruby",
            "shell"
        ],
        "description": "Puppet installation scripts for KEEPER infrastructure",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/INGe",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/INGe><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/INGe target=_blank style=\"text-decoration: none;\"><h4 class=title>INGe</h4></a><button class=copy-btn value=https://github.com/MPDL/INGe style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Infrastructure Next Generation</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">INGe</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Infrastructure Next Generation</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/INGe target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-08-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/INGe/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>4</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/INGe/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/INGe/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=None class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Other\" alt=\"License: Other\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name>Other</h3><h4>Description:</h4><p class=ref-description>There is not an available description.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/INGe/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/INGe><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/INGe target=_blank style=\"text-decoration: none;\"><h4 class=title>INGe</h4></a><button class=copy-btn value=https://github.com/MPDL/INGe style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Infrastructure Next Generation</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">INGe</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Infrastructure Next Generation</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/INGe target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-08-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/INGe/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>4</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/INGe/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/INGe/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=None class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Other\" alt=\"License: Other\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name>Other</h3><h4>Description:</h4><p class=ref-description>There is not an available description.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/INGe/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "INGe",
        "recently_updated": 94,
        "stargazersCount": 4,
        "releases": 0,
        "languages": [
            "plpgsql",
            "java",
            "xslt",
            "css",
            "javascript",
            "mirc script",
            "html",
            "ruby",
            "shell"
        ],
        "description": "Infrastructure Next Generation",
        "license": true,
        "licenseName": "Other",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/neuron-profiler",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/neuron-profiler><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/neuron-profiler target=_blank style=\"text-decoration: none;\"><h4 class=title>neuron-profiler</h4></a><button class=copy-btn value=https://github.com/MPDL/neuron-profiler style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Online neuron profiler (for swc data)</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">neuron-profiler</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Online neuron profiler (for swc data)</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/neuron-profiler target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 08-10-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/neuron-profiler/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/neuron-profiler/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/neuron-profiler/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li>Tomcat <strong>7.0.55</strong> Server<br></li><li>Maven <strong>2.2.1</strong> or higher<br></li></ul><ol start=2><li><p>set Tomcat installation directory in your local settings.xml file:<br></p><pre><code>&lt;tomcat.install.dir&gt;TOMCAT_HOME&lt;/tomcat.install.dir&gt;\n</code></pre></li><li><p>(optional) set your own swc service in the neuron-profiler.properties file under &quot;neuron-profiler/src/main/resources/&quot;:</p><pre><code>swc.3Dview.targetURL=http://YOUR_SWC_SERVICE_DOMAIN/swc/api/view\nswc.analyze.targetURL=http://YOUR_SWC_SERVICE_DOMAIN/swc/api/analyze\nswc.screenshot.targetURL=http://YOUR_SWC_SERVICE_DOMAIN/swc/api/thumb\n</code></pre></li><li><p>start your tomcat with running &quot;TOMCAT_HOME/bin/startup.xx&quot;<br></p></li><li><p>visit the webseit to goto &quot;Http://server:port/neuron-profiler&quot;<br></p></li><li><p>stop your tomcat with running 'TOMCAT_HOME/bin/shutdown.xx'<br></p></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/neuron-profiler/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/neuron-profiler><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/neuron-profiler target=_blank style=\"text-decoration: none;\"><h4 class=title>neuron-profiler</h4></a><button class=copy-btn value=https://github.com/MPDL/neuron-profiler style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Online neuron profiler (for swc data)</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">neuron-profiler</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Online neuron profiler (for swc data)</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/neuron-profiler target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 08-10-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/neuron-profiler/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/neuron-profiler/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/neuron-profiler/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li>Tomcat <strong>7.0.55</strong> Server<br></li><li>Maven <strong>2.2.1</strong> or higher<br></li></ul><ol start=2><li><p>set Tomcat installation directory in your local settings.xml file:<br></p><pre><code>&lt;tomcat.install.dir&gt;TOMCAT_HOME&lt;/tomcat.install.dir&gt;\n</code></pre></li><li><p>(optional) set your own swc service in the neuron-profiler.properties file under &quot;neuron-profiler/src/main/resources/&quot;:</p><pre><code>swc.3Dview.targetURL=http://YOUR_SWC_SERVICE_DOMAIN/swc/api/view\nswc.analyze.targetURL=http://YOUR_SWC_SERVICE_DOMAIN/swc/api/analyze\nswc.screenshot.targetURL=http://YOUR_SWC_SERVICE_DOMAIN/swc/api/thumb\n</code></pre></li><li><p>start your tomcat with running &quot;TOMCAT_HOME/bin/startup.xx&quot;<br></p></li><li><p>visit the webseit to goto &quot;Http://server:port/neuron-profiler&quot;<br></p></li><li><p>stop your tomcat with running 'TOMCAT_HOME/bin/shutdown.xx'<br></p></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/neuron-profiler/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "neuron-profiler",
        "recently_updated": 1875,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "java",
            "css",
            "javascript"
        ],
        "description": "Online neuron profiler (for swc data)",
        "license": true,
        "licenseName": "Apache License 2.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/auth",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/auth><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/auth target=_blank style=\"text-decoration: none;\"><h4 class=title>auth</h4></a><button class=copy-btn value=https://github.com/MPDL/auth style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">auth</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/auth target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 15-02-2019\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/auth/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/auth/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/auth/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/auth/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/auth><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/auth target=_blank style=\"text-decoration: none;\"><h4 class=title>auth</h4></a><button class=copy-btn value=https://github.com/MPDL/auth style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">auth</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/auth target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 15-02-2019\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/auth/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/auth/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/auth/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/auth/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "auth",
        "recently_updated": 1745,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "No description available yet.",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/EdmondMap",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/EdmondMap><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/EdmondMap target=_blank style=\"text-decoration: none;\"><h4 class=title>EdmondMap</h4></a><button class=copy-btn value=https://github.com/MPDL/EdmondMap style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Webseite, die Geokoordinaten von Edmond abruft und auf einer Weltkarte darstellt</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">EdmondMap</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Webseite, die Geokoordinaten von Edmond abruft und auf einer Weltkarte darstellt</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/EdmondMap target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=repo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 06-12-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/EdmondMap/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/EdmondMap/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/EdmondMap/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/EdmondMap><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/EdmondMap target=_blank style=\"text-decoration: none;\"><h4 class=title>EdmondMap</h4></a><button class=copy-btn value=https://github.com/MPDL/EdmondMap style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Webseite, die Geokoordinaten von Edmond abruft und auf einer Weltkarte darstellt</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">EdmondMap</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Webseite, die Geokoordinaten von Edmond abruft und auf einer Weltkarte darstellt</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/EdmondMap target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 06-12-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/EdmondMap/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/EdmondMap/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/EdmondMap/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "EdmondMap",
        "recently_updated": 354,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "css",
            "javascript",
            "html"
        ],
        "description": "Webseite, die Geokoordinaten von Edmond abruft und auf einer Weltkarte darstellt",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": true,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/MPG-Reader",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/MPG-Reader><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-Reader target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-Reader</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-Reader style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-Reader</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-Reader target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-12-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-Reader/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-Reader/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-Reader/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/MPG-Reader><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-Reader target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-Reader</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-Reader style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-Reader</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-Reader target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-12-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-Reader/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-Reader/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-Reader/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "MPG-Reader",
        "recently_updated": 1067,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java",
            "html",
            "css",
            "shell"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "GNU General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/labfolder-frontpage",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/labfolder-frontpage><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/labfolder-frontpage target=_blank style=\"text-decoration: none;\"><h4 class=title>labfolder-frontpage</h4></a><button class=copy-btn value=https://github.com/MPDL/labfolder-frontpage style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Labfolder-Frontpage</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">labfolder-frontpage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Labfolder-Frontpage</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/labfolder-frontpage target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=repo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 19-11-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/labfolder-frontpage/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/labfolder-frontpage/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/labfolder-frontpage/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/labfolder-frontpage><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/labfolder-frontpage target=_blank style=\"text-decoration: none;\"><h4 class=title>labfolder-frontpage</h4></a><button class=copy-btn value=https://github.com/MPDL/labfolder-frontpage style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Labfolder-Frontpage</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">labfolder-frontpage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Labfolder-Frontpage</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/labfolder-frontpage target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 19-11-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/labfolder-frontpage/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/labfolder-frontpage/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/labfolder-frontpage/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "labfolder-frontpage",
        "recently_updated": 737,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "html",
            "css",
            "javascript"
        ],
        "description": "Labfolder-Frontpage",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": true,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/keeper-ui-tests",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/keeper-ui-tests><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/keeper-ui-tests target=_blank style=\"text-decoration: none;\"><h4 class=title>keeper-ui-tests</h4></a><button class=copy-btn value=https://github.com/MPDL/keeper-ui-tests style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Automated tests for KEEPER on UI level</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">keeper-ui-tests</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Automated tests for KEEPER on UI level</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/keeper-ui-tests target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 03-03-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/keeper-ui-tests/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/keeper-ui-tests/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/keeper-ui-tests/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Clone the repository on your machine.</li><li>Configure basic test data (see testData.properties), consistent with your test environment, in the Maven settings.xml.</li><li>Run tests by using Maven goal &quot;clean test&quot;.</li></ol></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/keeper-ui-tests><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/keeper-ui-tests target=_blank style=\"text-decoration: none;\"><h4 class=title>keeper-ui-tests</h4></a><button class=copy-btn value=https://github.com/MPDL/keeper-ui-tests style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Automated tests for KEEPER on UI level</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">keeper-ui-tests</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Automated tests for KEEPER on UI level</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/keeper-ui-tests target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 03-03-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/keeper-ui-tests/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/keeper-ui-tests/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/keeper-ui-tests/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Clone the repository on your machine.</li><li>Configure basic test data (see testData.properties), consistent with your test environment, in the Maven settings.xml.</li><li>Run tests by using Maven goal &quot;clean test&quot;.</li></ol></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "keeper-ui-tests",
        "recently_updated": 998,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java",
            "gherkin"
        ],
        "description": "Automated tests for KEEPER on UI level",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/MPG-City-Android",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/MPG-City-Android><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-City-Android target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-City-Android</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-City-Android style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-City-Android</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-City-Android target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-05-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-City-Android/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-City-Android/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-City-Android/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/MPG-City-Android><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-City-Android target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-City-Android</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-City-Android style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-City-Android</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-City-Android target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-05-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-City-Android/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-City-Android/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-City-Android/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "MPG-City-Android",
        "recently_updated": 916,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "kotlin",
            "css",
            "html",
            "java"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/imeji-deb",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/imeji-deb><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji-deb target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji-deb</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji-deb style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Debian package to install imeji</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji-deb</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Debian package to install imeji</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji-deb target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 16-12-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji-deb/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji-deb/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji-deb/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Debian package to install imeji</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji-deb/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/imeji-deb><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji-deb target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji-deb</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji-deb style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Debian package to install imeji</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji-deb</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Debian package to install imeji</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji-deb target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 16-12-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji-deb/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji-deb/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji-deb/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Debian package to install imeji</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji-deb/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "imeji-deb",
        "recently_updated": 2536,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "shell",
            "makefile"
        ],
        "description": "Debian package to install imeji",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/media-conversion-service",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/media-conversion-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/media-conversion-service target=_blank style=\"text-decoration: none;\"><h4 class=title>media-conversion-service</h4></a><button class=copy-btn value=https://github.com/MPDL/media-conversion-service style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web service to convert media files</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">media-conversion-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web service to convert media files</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/media-conversion-service target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 15-03-2019\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/media-conversion-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/media-conversion-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/media-conversion-service/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Imagemagick <a href=http://www.imagemagick.org/script/binary-releases.php>download</a></li><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li>clone https://github.com/MPDL/magick-service</li><li>Compile the service: In service directory, run <code>mvn clean install</code></li><li>Copy magick.war in Tomcat Webapp directory</li><li>Create File <code>magick-service.properties</code> in Tomcat conf directory</li><li>Edit <code>magick.properties</code> with Property <code>imagemagick.convert.bin = /path/to/convert</code> (for instance <code>/usr/bin/convert</code>)</li><li>Start Tomcat</li><li>Service runs under <code>http://localhost:8080/media-conversion</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><strong>url</strong> (Mandotory for <code>GET</code>): the url of the file to be transformed</li><li><strong>size</strong>: As defined by imagemagick <a href=http://www.imagemagick.org/script/command-line-options.php#resize>resize</a></li><li><strong>crop</strong>:As defined by imagemagick <a href=http://www.imagemagick.org/script/command-line-options.php#crop>crop</a></li><li><strong>format</strong>: The format in which the file shhould be returned (for instance png, jpg, etc.)</li><li><strong>priority</strong> (size|crop): The method (size or crop) which is processed first (only relevant when resize and crop are both used)</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/media-conversion-service/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/media-conversion-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/media-conversion-service target=_blank style=\"text-decoration: none;\"><h4 class=title>media-conversion-service</h4></a><button class=copy-btn value=https://github.com/MPDL/media-conversion-service style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web service to convert media files</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">media-conversion-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web service to convert media files</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/media-conversion-service target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 15-03-2019\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/media-conversion-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/media-conversion-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/media-conversion-service/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Imagemagick <a href=http://www.imagemagick.org/script/binary-releases.php>download</a></li><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li>clone https://github.com/MPDL/magick-service</li><li>Compile the service: In service directory, run <code>mvn clean install</code></li><li>Copy magick.war in Tomcat Webapp directory</li><li>Create File <code>magick-service.properties</code> in Tomcat conf directory</li><li>Edit <code>magick.properties</code> with Property <code>imagemagick.convert.bin = /path/to/convert</code> (for instance <code>/usr/bin/convert</code>)</li><li>Start Tomcat</li><li>Service runs under <code>http://localhost:8080/media-conversion</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><strong>url</strong> (Mandotory for <code>GET</code>): the url of the file to be transformed</li><li><strong>size</strong>: As defined by imagemagick <a href=http://www.imagemagick.org/script/command-line-options.php#resize>resize</a></li><li><strong>crop</strong>:As defined by imagemagick <a href=http://www.imagemagick.org/script/command-line-options.php#crop>crop</a></li><li><strong>format</strong>: The format in which the file shhould be returned (for instance png, jpg, etc.)</li><li><strong>priority</strong> (size|crop): The method (size or crop) which is processed first (only relevant when resize and crop are both used)</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/media-conversion-service/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "media-conversion-service",
        "recently_updated": 1717,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "java",
            "html"
        ],
        "description": "Web service to convert media files",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/LabCam-Android",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/LabCam-Android><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam-Android target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam-Android</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam-Android style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are automatically uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam-Android</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p></p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are automatically uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam-Android target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 31-03-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam-Android/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam-Android/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam-Android/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/LabCam-Android><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam-Android target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam-Android</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam-Android style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are automatically uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam-Android</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p></p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are automatically uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam-Android target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 31-03-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam-Android/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam-Android/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam-Android/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "LabCam-Android",
        "recently_updated": 970,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "kotlin",
            "java"
        ],
        "description": "LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account. \n- Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper. \n- Offline Photos: LabCam is available even without a network, and photos taken by users are automatically uploaded as long as the device is connected to a network. \n- OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.\n \n",
        "license": true,
        "licenseName": "GNU General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/MPG-City-iOS",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/MPG-City-iOS><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-City-iOS target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-City-iOS</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-City-iOS style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-City-iOS</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-City-iOS target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 19-01-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-City-iOS/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-City-iOS/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-City-iOS/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/MPG-City-iOS><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-City-iOS target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-City-iOS</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-City-iOS style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-City-iOS</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-City-iOS target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 19-01-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-City-iOS/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-City-iOS/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-City-iOS/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "MPG-City-iOS",
        "recently_updated": 1040,
        "stargazersCount": 0,
        "releases": 0,
        "languages": null,
        "description": "No description available yet.",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/dataverse",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/dataverse><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/dataverse target=_blank style=\"text-decoration: none;\"><h4 class=title>dataverse</h4></a><button class=copy-btn value=https://github.com/MPDL/dataverse style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Open source research data repository software</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">dataverse</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Open source research data repository software</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/dataverse target=_blank style=\"text-decoration: none;\"><img src=\"https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/main/webapp/resources/images/dataverseproject_logo.jpg?raw=true\" alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python service\" alt=\"Python service\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-12-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/dataverse/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"Last release: Release v5.14-mpdl-3\" alt=\"Last release: Release v5.14-mpdl-3\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/dataverse/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>13</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=None class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Other\" alt=\"License: Other\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name>Other</h3><h4>Description:</h4><p class=ref-description>There is not an available description.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/notebook.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Notebook alt=Notebook></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Notebook</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/test/java/edu/harvard/iq/dataverse/util/irc-metrics.ipynb>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/test/java/edu/harvard/iq/dataverse/util/irc-metrics.ipynb</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/docker.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Docker alt=Docker></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Docker</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-base/src/main/docker/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-base/src/main/docker/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-configbaker/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-configbaker/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/main/docker/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/main/docker/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/keycloak/docker-compose.yml>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/keycloak/docker-compose.yml</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/docker-dcm/docker-compose.yml>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/docker-dcm/docker-compose.yml</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>To install Dataverse, please see our [Installation Guide][] which will prompt you to download our [latest release][].</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">How to use it</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>python /dataverse/MPDL_dataverse/dataverse-mpdl-develop/tests/locust/basic_test_01.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/dataverse/releases target=_blank class=repo-icon><img src=repo_icons/download.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Download alt=Download></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=language_icons/perl.svg alt=perl class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Perl><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/dataverse><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/dataverse target=_blank style=\"text-decoration: none;\"><h4 class=title>dataverse</h4></a><button class=copy-btn value=https://github.com/MPDL/dataverse style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Open source research data repository software</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">dataverse</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Open source research data repository software</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/dataverse target=_blank style=\"text-decoration: none;\"><img src=\"https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/main/webapp/resources/images/dataverseproject_logo.jpg?raw=true\" alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python service\" alt=\"Python service\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-12-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/dataverse/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"Last release: Release v5.14-mpdl-3\" alt=\"Last release: Release v5.14-mpdl-3\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/dataverse/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>13</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=None class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Other\" alt=\"License: Other\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name>Other</h3><h4>Description:</h4><p class=ref-description>There is not an available description.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/notebook.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Notebook alt=Notebook></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Notebook</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/test/java/edu/harvard/iq/dataverse/util/irc-metrics.ipynb>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/test/java/edu/harvard/iq/dataverse/util/irc-metrics.ipynb</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/docker.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Docker alt=Docker></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Docker</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-base/src/main/docker/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-base/src/main/docker/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-configbaker/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/modules/container-configbaker/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/main/docker/Dockerfile>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/src/main/docker/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/keycloak/docker-compose.yml>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/keycloak/docker-compose.yml</a></li><li><a href=https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/docker-dcm/docker-compose.yml>https://raw.githubusercontent.com/MPDL/dataverse/mpdl-develop/conf/docker-dcm/docker-compose.yml</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>To install Dataverse, please see our [Installation Guide][] which will prompt you to download our [latest release][].</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">How to use it</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>python /dataverse/MPDL_dataverse/dataverse-mpdl-develop/tests/locust/basic_test_01.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/dataverse/releases target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/download.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Download alt=Download></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/perl.svg alt=perl class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Perl><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "dataverse",
        "recently_updated": 709,
        "stargazersCount": 1,
        "releases": 13,
        "languages": [
            "java",
            "html",
            "javascript",
            "shell",
            "python",
            "xslt",
            "perl",
            "css",
            "r",
            "dockerfile",
            "jupyter notebook",
            "makefile",
            "plpgsql",
            "ruby"
        ],
        "description": "Open source research data repository software",
        "license": true,
        "licenseName": "Other",
        "readmeUrl": true,
        "hasExecutableNotebook": true,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": true,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": true,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/unibiAPC",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/unibiAPC><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/unibiAPC target=_blank style=\"text-decoration: none;\"><h4 class=title>unibiAPC</h4></a><button class=copy-btn value=https://github.com/MPDL/unibiAPC style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Collect and disseminate information on fee-based Open Access publishing</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">unibiAPC</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Collect and disseminate information on fee-based Open Access publishing</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/unibiAPC target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 23-11-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/unibiAPC/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/unibiAPC/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/unibiAPC/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/MIT class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/unibiAPC style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>When citing this dataset, please indicate the [release](https://github.com/OpenAPC/openapc-de/releases/) you are referring to. The releases also contain information on contributors relating to the respective release.\n\nPlease do not cite the master branch of the Github repository (https://github.com/OpenAPC/openapc-de/tree/master/), but use the release numbers/tags.\n\nBielefeld University Library archives a copy (including commit history). To cite:\n\n{Contributors:} <span class=gs>*Datasets on fee-based Open Access publishing across German Institutions*</span>. Bielefeld University. [10.4119/UNIBI/UB.2014.18](http://dx.doi.org/10.4119/UNIBI/UB.2014.18)\n</pre></div></body></html></div></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Metadata representing journals or publishers were obtained from Crossref in order to avoid extensive validation of the records. Case where we don't re-use information from Crossref to disambiguate the spending metadata are documented <a href=python/test/test_apc_csv.py>here</a>. Moreover, indexing coverage in Europe PMC and the Web of science is automatically checked.</p><table><thead><tr><th style=text-align:left>Source</th><th style=text-align:left>Variable</th><th style=text-align:left>Description</th></tr></thead><tbody><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>publisher</code></td><td style=text-align:left>Title of Publisher</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>journal_full_title</code></td><td style=text-align:left>Full Title of Journal</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>issn</code></td><td style=text-align:left>International Standard Serial Numbers (collapsed)</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>issn_print</code></td><td style=text-align:left>ISSN print</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>issn_electronic</code></td><td style=text-align:left>ISSN electronic</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>license_ref</code></td><td style=text-align:left>License of the article</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>indexed_in_crossref</code></td><td style=text-align:left>Is the article metadata registered with CrossRef? (logical)</td></tr><tr><td style=text-align:left>EuropePMC</td><td style=text-align:left><code>pmid</code></td><td style=text-align:left>PubMed ID</td></tr><tr><td style=text-align:left>EuropePMC</td><td style=text-align:left><code>pmcid</code></td><td style=text-align:left>PubMed Central ID</td></tr><tr><td style=text-align:left>Web of Science</td><td style=text-align:left><code>ut</code></td><td style=text-align:left>Web of Science record ID</td></tr><tr><td style=text-align:left>DOAJ</td><td style=text-align:left><code>doaj</code></td><td style=text-align:left>Is the journal indexed in the DOAJ? (logical)</td></tr></tbody></table><pre><code class=language-{r,>\nmy.apc &lt;- readr::read_csv(&quot;data/apc_de.csv&quot;)\n\nmy.apc_doi &lt;- my.apc[!is.na(my.apc$doi), ]\nmy.apc_pmid &lt;- my.apc[!is.na(my.apc$pmid), ]\nmy.apc_pmcid &lt;- my.apc[!is.na(my.apc$pmcid), ]\nmy.apc_ut &lt;- my.apc[!is.na(my.apc$ut), ]\n</code></pre><p>Indexing coverage</p><table><thead><tr><th style=text-align:left>Identifier</th><th style=text-align:left>Coverage</th></tr></thead><tbody><tr><td style=text-align:left>DOI</td><td style=text-align:left><code>r format(nrow(my.apc_doi)*100/nrow(my.apc), digits = 4)</code>%</td></tr><tr><td style=text-align:left>PubMed ID</td><td style=text-align:left><code>r format(nrow(my.apc_pmid)*100/nrow(my.apc), digits = 4)</code>%</td></tr><tr><td style=text-align:left>PubMed Central ID</td><td style=text-align:left><code>r format(nrow(my.apc_pmcid)*100/nrow(my.apc), digits = 4)</code>%</td></tr><tr><td style=text-align:left>Web of Science record ID</td><td style=text-align:left><code>r format(nrow(my.apc_ut)*100/nrow(my.apc), digits = 4)</code>%</td></tr></tbody></table><hr><h3>How to use it</h3><p>python /unibiAPC/MPDL_unibiAPC/unibiAPC-master/python/apc_csv_processing.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/unibiAPC/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/acknowledgement.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Acknowledgement alt=Acknowledgement></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Acknowledgement</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>This project was set up in collaboration with the <a href=http://dini.de/ag/e-pub1/ >DINI working group Electronic Publishing</a>. It follows <a href=http://blog.wellcome.ac.uk/2014/03/28/the-cost-of-open-access-publishing-a-progress-report/ >Wellcome Trust example to share data on paid APCs</a> and recognises efforts from <a href=https://www.jisc-collections.ac.uk/News/Releasing-open-data-about-Total-Cost-of-Ownership/ >JISC</a> and the <a href=http://esac-initiative.org/ >ESAC initative</a> to standardise APC reporting.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=language_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=language_icons/perl.svg alt=perl class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Perl></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/unibiAPC><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/unibiAPC target=_blank style=\"text-decoration: none;\"><h4 class=title>unibiAPC</h4></a><button class=copy-btn value=https://github.com/MPDL/unibiAPC style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Collect and disseminate information on fee-based Open Access publishing</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">unibiAPC</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Collect and disseminate information on fee-based Open Access publishing</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/unibiAPC target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 23-11-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/unibiAPC/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/unibiAPC/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/unibiAPC/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/MIT class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/unibiAPC style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>When citing this dataset, please indicate the [release](https://github.com/OpenAPC/openapc-de/releases/) you are referring to. The releases also contain information on contributors relating to the respective release.\n\nPlease do not cite the master branch of the Github repository (https://github.com/OpenAPC/openapc-de/tree/master/), but use the release numbers/tags.\n\nBielefeld University Library archives a copy (including commit history). To cite:\n\n{Contributors:} <span class=gs>*Datasets on fee-based Open Access publishing across German Institutions*</span>. Bielefeld University. [10.4119/UNIBI/UB.2014.18](http://dx.doi.org/10.4119/UNIBI/UB.2014.18)\n</pre></div></body></html></div></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Metadata representing journals or publishers were obtained from Crossref in order to avoid extensive validation of the records. Case where we don't re-use information from Crossref to disambiguate the spending metadata are documented <a href=python/test/test_apc_csv.py>here</a>. Moreover, indexing coverage in Europe PMC and the Web of science is automatically checked.</p><table><thead><tr><th style=text-align:left>Source</th><th style=text-align:left>Variable</th><th style=text-align:left>Description</th></tr></thead><tbody><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>publisher</code></td><td style=text-align:left>Title of Publisher</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>journal_full_title</code></td><td style=text-align:left>Full Title of Journal</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>issn</code></td><td style=text-align:left>International Standard Serial Numbers (collapsed)</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>issn_print</code></td><td style=text-align:left>ISSN print</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>issn_electronic</code></td><td style=text-align:left>ISSN electronic</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>license_ref</code></td><td style=text-align:left>License of the article</td></tr><tr><td style=text-align:left>CrossRef</td><td style=text-align:left><code>indexed_in_crossref</code></td><td style=text-align:left>Is the article metadata registered with CrossRef? (logical)</td></tr><tr><td style=text-align:left>EuropePMC</td><td style=text-align:left><code>pmid</code></td><td style=text-align:left>PubMed ID</td></tr><tr><td style=text-align:left>EuropePMC</td><td style=text-align:left><code>pmcid</code></td><td style=text-align:left>PubMed Central ID</td></tr><tr><td style=text-align:left>Web of Science</td><td style=text-align:left><code>ut</code></td><td style=text-align:left>Web of Science record ID</td></tr><tr><td style=text-align:left>DOAJ</td><td style=text-align:left><code>doaj</code></td><td style=text-align:left>Is the journal indexed in the DOAJ? (logical)</td></tr></tbody></table><pre><code class=language-{r,>\nmy.apc &lt;- readr::read_csv(&quot;data/apc_de.csv&quot;)\n\nmy.apc_doi &lt;- my.apc[!is.na(my.apc$doi), ]\nmy.apc_pmid &lt;- my.apc[!is.na(my.apc$pmid), ]\nmy.apc_pmcid &lt;- my.apc[!is.na(my.apc$pmcid), ]\nmy.apc_ut &lt;- my.apc[!is.na(my.apc$ut), ]\n</code></pre><p>Indexing coverage</p><table><thead><tr><th style=text-align:left>Identifier</th><th style=text-align:left>Coverage</th></tr></thead><tbody><tr><td style=text-align:left>DOI</td><td style=text-align:left><code>r format(nrow(my.apc_doi)*100/nrow(my.apc), digits = 4)</code>%</td></tr><tr><td style=text-align:left>PubMed ID</td><td style=text-align:left><code>r format(nrow(my.apc_pmid)*100/nrow(my.apc), digits = 4)</code>%</td></tr><tr><td style=text-align:left>PubMed Central ID</td><td style=text-align:left><code>r format(nrow(my.apc_pmcid)*100/nrow(my.apc), digits = 4)</code>%</td></tr><tr><td style=text-align:left>Web of Science record ID</td><td style=text-align:left><code>r format(nrow(my.apc_ut)*100/nrow(my.apc), digits = 4)</code>%</td></tr></tbody></table><hr><h3>How to use it</h3><p>python /unibiAPC/MPDL_unibiAPC/unibiAPC-master/python/apc_csv_processing.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/unibiAPC/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/acknowledgement.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Acknowledgement alt=Acknowledgement></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Acknowledgement</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>This project was set up in collaboration with the <a href=http://dini.de/ag/e-pub1/ >DINI working group Electronic Publishing</a>. It follows <a href=http://blog.wellcome.ac.uk/2014/03/28/the-cost-of-open-access-publishing-a-progress-report/ >Wellcome Trust example to share data on paid APCs</a> and recognises efforts from <a href=https://www.jisc-collections.ac.uk/News/Releasing-open-data-about-Total-Cost-of-Ownership/ >JISC</a> and the <a href=http://esac-initiative.org/ >ESAC initative</a> to standardise APC reporting.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/perl.svg alt=perl class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Perl></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "unibiAPC",
        "recently_updated": 1829,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "python",
            "r",
            "perl"
        ],
        "description": "Collect and disseminate information on fee-based Open Access publishing",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": {
            "cff": null,
            "bibtex": null,
            "citation": [
                "When citing this dataset, please indicate the [release](https://github.com/OpenAPC/openapc-de/releases/) you are referring to. The releases also contain information on contributors relating to the respective release.\n\nPlease do not cite the master branch of the Github repository (https://github.com/OpenAPC/openapc-de/tree/master/), but use the release numbers/tags.\n\nBielefeld University Library archives a copy (including commit history). To cite:\n\n{Contributors:} *Datasets on fee-based Open Access publishing across German Institutions*. Bielefeld University. [10.4119/UNIBI/UB.2014.18](http://dx.doi.org/10.4119/UNIBI/UB.2014.18)\n"
            ]
        },
        "citationText": [
            "When citing this dataset, please indicate the [release](https://github.com/OpenAPC/openapc-de/releases/) you are referring to. The releases also contain information on contributors relating to the respective release.\n\nPlease do not cite the master branch of the Github repository (https://github.com/OpenAPC/openapc-de/tree/master/), but use the release numbers/tags.\n\nBielefeld University Library archives a copy (including commit history). To cite:\n\n{Contributors:} *Datasets on fee-based Open Access publishing across German Institutions*. Bielefeld University. [10.4119/UNIBI/UB.2014.18](http://dx.doi.org/10.4119/UNIBI/UB.2014.18)\n"
        ],
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": true,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/fits-service",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/fits-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/fits-service target=_blank style=\"text-decoration: none;\"><h4 class=title>fits-service</h4></a><button class=copy-btn value=https://github.com/MPDL/fits-service style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web Service to visualize fits format data</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">fits-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web Service to visualize fits format data</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/fits-service target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 07-10-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/fits-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/fits-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/fits-service/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li><code>git clone https://github.com/MPDL/fits-service</code></li><li>Compile the service: go into <code>fits-service directory</code>, run <code>mvn clean install</code></li><li>Copy <code>fits.war</code> in Tomcat <code>webapp</code> directory</li><li>Create file <code>fits-service.properties</code>, add following property in it</li></ol><pre><code>service.url = url_of_the _service\n</code></pre><p>and put the file into Tomcat <code>conf</code> directory</p><ol start=8><li>Start Tomcat</li><li>Service runs under <code>url_of_the _service/fits</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Following REST commands are implemented(You can check <code>http://localhost:8080/swc/api/explain</code> page for swc-service usage examples):</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected fits file</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the fits file.</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><strong>Method</strong>: GET</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the fits URL</li></ul></li><li>field 2:<ul><li><strong>name</strong>: load</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|flase</li></ul></li></ul></li><li><strong>Response</strong>: returns HTML view representation of the fits file referenced by the URL.</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/fits-service/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/c.svg alt=c class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=C><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/fits-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/fits-service target=_blank style=\"text-decoration: none;\"><h4 class=title>fits-service</h4></a><button class=copy-btn value=https://github.com/MPDL/fits-service style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web Service to visualize fits format data</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">fits-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web Service to visualize fits format data</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/fits-service target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 07-10-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/fits-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/fits-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/fits-service/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li><code>git clone https://github.com/MPDL/fits-service</code></li><li>Compile the service: go into <code>fits-service directory</code>, run <code>mvn clean install</code></li><li>Copy <code>fits.war</code> in Tomcat <code>webapp</code> directory</li><li>Create file <code>fits-service.properties</code>, add following property in it</li></ol><pre><code>service.url = url_of_the _service\n</code></pre><p>and put the file into Tomcat <code>conf</code> directory</p><ol start=8><li>Start Tomcat</li><li>Service runs under <code>url_of_the _service/fits</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Following REST commands are implemented(You can check <code>http://localhost:8080/swc/api/explain</code> page for swc-service usage examples):</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected fits file</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the fits file.</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><strong>Method</strong>: GET</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the fits URL</li></ul></li><li>field 2:<ul><li><strong>name</strong>: load</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|flase</li></ul></li></ul></li><li><strong>Response</strong>: returns HTML view representation of the fits file referenced by the URL.</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/fits-service/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/c.svg alt=c class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=C><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "fits-service",
        "recently_updated": 3337,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "c",
            "css",
            "java",
            "shell"
        ],
        "description": "Web Service to visualize fits format data",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/swc-service",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/swc-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/swc-service target=_blank style=\"text-decoration: none;\"><h4 class=title>swc-service</h4></a><button class=copy-btn value=https://github.com/MPDL/swc-service style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web service to visualize and analize swc data</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">swc-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web service to visualize and analize swc data</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/swc-service target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 23-03-2015\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/swc-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/swc-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/swc-service/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install L-Measure <a href=http://cng.gmu.edu/Lm/ >download</a></li><li><code>git clone https://github.com/MPDL/swc-service</code></li><li>Compile the service: go into <code>swc-service directory</code>, run <code>mvn clean install</code></li><li>Copy <code>swc.war</code> in Tomcat <code>webapp</code> directory</li><li>Create file <code>swc-service.properties</code>, add following property in it</li></ol><pre><code>screenshot.service.url = base_url_to_screenshot_service/screenshot\nlmeasure.bin = path_to_the_lmeasure_binary\n</code></pre><p>and put the file into Tomcat <code>conf</code> directory</p><ol start=8><li>Start Tomcat</li><li>Service runs under <code>http://localhost:8080/swc</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Following REST commands are implemented:</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected SWC file</li></ul></li><li>field 2:<ul><li><strong>name</strong>: portable</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|false(default)</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the SWC file.</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><strong>Method</strong>: POST</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: swc</li><li><strong>type</strong>: text/texarea</li><li><strong>value</strong>: SWC text</li></ul></li><li>field 2:<ul><li><strong>name</strong>: portable</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|false(default)</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the SWC text.</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><strong>Method</strong>: GET</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the SWC URL</li></ul></li><li>field 2:<ul><li><strong>name</strong>: portable</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|false(default)</li></ul></li></ul></li><li><strong>Response</strong>: returns HTML view representation of the SWC text referenced by the URL.</li></ul><p><strong>Note:</strong> Setting of <code>portable=&quot;true&quot;</code> generates html which can be used offline.</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected SWC file</li></ul></li><li>field 2:<ul><li><strong>name</strong>: numberOfBins</li><li><strong>type</strong>: number</li><li><strong>value</strong>: <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: typeOfBins</li><li><strong>type</strong>: text</li><li><strong>value</strong>: number|width <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: query</li><li><strong>type</strong>: text</li><li><strong>value</strong>: The L-Measure functions (for instance -f0,0,0,10.0 ) <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li></ul></li><li><strong>Response</strong>: Delivers JSON File with the L-Measure result.</li></ul><h5><strong>Path</strong>: /api/analyze</h5><ul><li><strong>Method</strong>: POST</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: swc</li><li><strong>type</strong>: text/texarea</li><li><strong>value</strong>: SWC text</li></ul></li><li>field 2:</li><li><strong>name</strong>: numberOfBins</li><li><strong>type</strong>: number</li><li><strong>value</strong>: <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li><li>field 3:<ul><li><strong>name</strong>: typeOfBins</li><li><strong>type</strong>: text</li><li><strong>value</strong>: number|width <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: query</li><li><strong>type</strong>: text</li><li><strong>value</strong>: The L-Measure functions (for instance -f0,0,0,10.0 ) <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li></ul></li><li><strong>Response</strong>: Delivers JSON File with the L-Measure result.</li></ul><h5><strong>Path</strong>: /api/analyze</h5><ul><li><p><strong>Method</strong>: GET</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Input fields</strong>:</p><ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the SWC URL</li></ul></li><li>field 2:</li><li><strong>name</strong>: numberOfBins</li><li><strong>type</strong>: number</li><li><strong>value</strong>: <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li><li>field 3:<ul><li><strong>name</strong>: typeOfBins</li><li><strong>type</strong>: text</li><li><strong>value</strong>: number|width <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: query</li><li><strong>type</strong>: text</li><li><strong>value</strong>: The L-Measure functions (for instance -f0,0,0,10.0 ) <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li></ul></li><li><p><strong>Response</strong>: Delivers JSON File with the L-Measure result.</p></li><li><p><strong>Media type</strong>: multipart/form-data</p></li><li><p><strong>Input fields</strong>:</p><ul><li>field:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected SWC file</li></ul></li></ul></li><li><p><strong>Response</strong>: returns PNG screenshot of the rendered SWC file.</p></li></ul><h5><strong>Path</strong>: /api/thumb</h5><ul><li><strong>Method</strong>: POST</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field:<ul><li><strong>name</strong>: swc</li><li><strong>type</strong>: text/texarea</li><li><strong>value</strong>: SWC text</li></ul></li></ul></li><li><strong>Response</strong>: returns PNG screenshot of the rendered SWC text</li></ul><h5><strong>Path</strong>: /api/thumb</h5><ul><li><strong>Method</strong>: GET</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the SWC text</li></ul></li></ul></li><li><strong>Response</strong>: returns PNG screenshot of the renederd SWC text referenced by the URL.</li></ul><p>You can check <code>http://localhost:8080/swc/api/explain</code> page for swc-service usage examples.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/swc-service/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/swc-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/swc-service target=_blank style=\"text-decoration: none;\"><h4 class=title>swc-service</h4></a><button class=copy-btn value=https://github.com/MPDL/swc-service style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web service to visualize and analize swc data</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">swc-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web service to visualize and analize swc data</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/swc-service target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 23-03-2015\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/swc-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/swc-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/swc-service/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install L-Measure <a href=http://cng.gmu.edu/Lm/ >download</a></li><li><code>git clone https://github.com/MPDL/swc-service</code></li><li>Compile the service: go into <code>swc-service directory</code>, run <code>mvn clean install</code></li><li>Copy <code>swc.war</code> in Tomcat <code>webapp</code> directory</li><li>Create file <code>swc-service.properties</code>, add following property in it</li></ol><pre><code>screenshot.service.url = base_url_to_screenshot_service/screenshot\nlmeasure.bin = path_to_the_lmeasure_binary\n</code></pre><p>and put the file into Tomcat <code>conf</code> directory</p><ol start=8><li>Start Tomcat</li><li>Service runs under <code>http://localhost:8080/swc</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Following REST commands are implemented:</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected SWC file</li></ul></li><li>field 2:<ul><li><strong>name</strong>: portable</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|false(default)</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the SWC file.</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><strong>Method</strong>: POST</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: swc</li><li><strong>type</strong>: text/texarea</li><li><strong>value</strong>: SWC text</li></ul></li><li>field 2:<ul><li><strong>name</strong>: portable</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|false(default)</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the SWC text.</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><strong>Method</strong>: GET</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the SWC URL</li></ul></li><li>field 2:<ul><li><strong>name</strong>: portable</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|false(default)</li></ul></li></ul></li><li><strong>Response</strong>: returns HTML view representation of the SWC text referenced by the URL.</li></ul><p><strong>Note:</strong> Setting of <code>portable=&quot;true&quot;</code> generates html which can be used offline.</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected SWC file</li></ul></li><li>field 2:<ul><li><strong>name</strong>: numberOfBins</li><li><strong>type</strong>: number</li><li><strong>value</strong>: <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: typeOfBins</li><li><strong>type</strong>: text</li><li><strong>value</strong>: number|width <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: query</li><li><strong>type</strong>: text</li><li><strong>value</strong>: The L-Measure functions (for instance -f0,0,0,10.0 ) <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li></ul></li><li><strong>Response</strong>: Delivers JSON File with the L-Measure result.</li></ul><h5><strong>Path</strong>: /api/analyze</h5><ul><li><strong>Method</strong>: POST</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: swc</li><li><strong>type</strong>: text/texarea</li><li><strong>value</strong>: SWC text</li></ul></li><li>field 2:</li><li><strong>name</strong>: numberOfBins</li><li><strong>type</strong>: number</li><li><strong>value</strong>: <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li><li>field 3:<ul><li><strong>name</strong>: typeOfBins</li><li><strong>type</strong>: text</li><li><strong>value</strong>: number|width <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: query</li><li><strong>type</strong>: text</li><li><strong>value</strong>: The L-Measure functions (for instance -f0,0,0,10.0 ) <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li></ul></li><li><strong>Response</strong>: Delivers JSON File with the L-Measure result.</li></ul><h5><strong>Path</strong>: /api/analyze</h5><ul><li><p><strong>Method</strong>: GET</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Input fields</strong>:</p><ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the SWC URL</li></ul></li><li>field 2:</li><li><strong>name</strong>: numberOfBins</li><li><strong>type</strong>: number</li><li><strong>value</strong>: <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li><li>field 3:<ul><li><strong>name</strong>: typeOfBins</li><li><strong>type</strong>: text</li><li><strong>value</strong>: number|width <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li><li>field 3:<ul><li><strong>name</strong>: query</li><li><strong>type</strong>: text</li><li><strong>value</strong>: The L-Measure functions (for instance -f0,0,0,10.0 ) <a href=http://cng.gmu.edu/Lm/help/index.htm>see L-Measure help</a></li></ul></li></ul></li><li><p><strong>Response</strong>: Delivers JSON File with the L-Measure result.</p></li><li><p><strong>Media type</strong>: multipart/form-data</p></li><li><p><strong>Input fields</strong>:</p><ul><li>field:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected SWC file</li></ul></li></ul></li><li><p><strong>Response</strong>: returns PNG screenshot of the rendered SWC file.</p></li></ul><h5><strong>Path</strong>: /api/thumb</h5><ul><li><strong>Method</strong>: POST</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field:<ul><li><strong>name</strong>: swc</li><li><strong>type</strong>: text/texarea</li><li><strong>value</strong>: SWC text</li></ul></li></ul></li><li><strong>Response</strong>: returns PNG screenshot of the rendered SWC text</li></ul><h5><strong>Path</strong>: /api/thumb</h5><ul><li><strong>Method</strong>: GET</li><li><strong>Media type</strong>: application/x-www-form-urlencoded</li><li><strong>Input fields</strong>:<ul><li>field:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the SWC text</li></ul></li></ul></li><li><strong>Response</strong>: returns PNG screenshot of the renederd SWC text referenced by the URL.</li></ul><p>You can check <code>http://localhost:8080/swc/api/explain</code> page for swc-service usage examples.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/swc-service/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "swc-service",
        "recently_updated": 3170,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "javascript",
            "html",
            "java"
        ],
        "description": "Web service to visualize and analize swc data ",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/eSciDocCoreAdminTool",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/eSciDocCoreAdminTool><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/eSciDocCoreAdminTool target=_blank style=\"text-decoration: none;\"><h4 class=title>eSciDocCoreAdminTool</h4></a><button class=copy-btn value=https://github.com/MPDL/eSciDocCoreAdminTool style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">eSciDocCoreAdminTool</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/eSciDocCoreAdminTool target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/eSciDocCoreAdminTool/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/eSciDocCoreAdminTool/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/eSciDocCoreAdminTool/master/README.txt target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/MIT class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/eSciDocCoreAdminTool/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/eSciDocCoreAdminTool><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/eSciDocCoreAdminTool target=_blank style=\"text-decoration: none;\"><h4 class=title>eSciDocCoreAdminTool</h4></a><button class=copy-btn value=https://github.com/MPDL/eSciDocCoreAdminTool style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">eSciDocCoreAdminTool</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/eSciDocCoreAdminTool target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/eSciDocCoreAdminTool/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/eSciDocCoreAdminTool/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/eSciDocCoreAdminTool/master/README.txt target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/MIT class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/eSciDocCoreAdminTool/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "eSciDocCoreAdminTool",
        "recently_updated": 2664,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java",
            "css"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/imeji_sass",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/imeji_sass><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji_sass target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji_sass</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji_sass style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>CSS solution for imeji software</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji_sass</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>CSS solution for imeji software</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji_sass target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 12-12-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji_sass/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji_sass/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji_sass/imeji4.2/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>You find a very practicable installation guide on http://www.compass-style.org/install/ .</p><p>If you get a failure (e.g. on Debian systems) with &quot;$ gem update --system&quot;, please try the following steps in front of update system:</p><pre><code>sudo gem install rubygems-update  \nsudo update_rubygems\nsudo gem update --system\n</code></pre><p>If you get a failure for installing compass, try following:</p><pre><code>sudo apt-get install ruby-dev\nsudo gem install sass\nsudo gem install compass\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/requirements.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Requirements alt=Requirements></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Requirements</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>$ sass -v\nSass 3.3.8 (Maptastic Maple)\n$ compass -v\nCompass 0.12.6 (Alnilam)\nCopyright (c) 2008-2014 Chris Eppstein\nReleased under the MIT License.\nCompass is charityware.\nPlease make a tax deductable donation for a worthy cause: http://umdf.org/compass\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji_sass/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/imeji_sass><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji_sass target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji_sass</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji_sass style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>CSS solution for imeji software</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji_sass</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>CSS solution for imeji software</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji_sass target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 12-12-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji_sass/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji_sass/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji_sass/imeji4.2/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>You find a very practicable installation guide on http://www.compass-style.org/install/ .</p><p>If you get a failure (e.g. on Debian systems) with &quot;$ gem update --system&quot;, please try the following steps in front of update system:</p><pre><code>sudo gem install rubygems-update  \nsudo update_rubygems\nsudo gem update --system\n</code></pre><p>If you get a failure for installing compass, try following:</p><pre><code>sudo apt-get install ruby-dev\nsudo gem install sass\nsudo gem install compass\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/requirements.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Requirements alt=Requirements></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Requirements</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>$ sass -v\nSass 3.3.8 (Maptastic Maple)\n$ compass -v\nCompass 0.12.6 (Alnilam)\nCopyright (c) 2008-2014 Chris Eppstein\nReleased under the MIT License.\nCompass is charityware.\nPlease make a tax deductable donation for a worthy cause: http://umdf.org/compass\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji_sass/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "imeji_sass",
        "recently_updated": 349,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "css",
            "scss",
            "html",
            "ruby"
        ],
        "description": "CSS solution for imeji software",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": true,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/imeji-gui-testing",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/imeji-gui-testing><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji-gui-testing target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji-gui-testing</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji-gui-testing style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Automatic Testing of imeji GUI</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji-gui-testing</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Automatic Testing of imeji GUI</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji-gui-testing target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 13-12-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji-gui-testing/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji-gui-testing/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji-gui-testing/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Clone the repository on your local machine; set Maven goal to &quot;clean test&quot;.</p><p>New suites can be added in the Maven Surefire Plugin configuration in pom.xml; each of the XML suites should contain the parameter <i>browserType</i>.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji-gui-testing/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/imeji-gui-testing><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji-gui-testing target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji-gui-testing</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji-gui-testing style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Automatic Testing of imeji GUI</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji-gui-testing</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Automatic Testing of imeji GUI</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji-gui-testing target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 13-12-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji-gui-testing/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji-gui-testing/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji-gui-testing/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Clone the repository on your local machine; set Maven goal to &quot;clean test&quot;.</p><p>New suites can be added in the Maven Surefire Plugin configuration in pom.xml; each of the XML suites should contain the parameter <i>browserType</i>.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji-gui-testing/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "imeji-gui-testing",
        "recently_updated": 713,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "Automatic Testing of imeji GUI",
        "license": true,
        "licenseName": "Apache License 2.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/csl-editor-demo-site",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/csl-editor-demo-site><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/csl-editor-demo-site target=_blank style=\"text-decoration: none;\"><h4 class=title>csl-editor-demo-site</h4></a><button class=copy-btn value=https://github.com/MPDL/csl-editor-demo-site style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Reference implementation of the CSL editor</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">csl-editor-demo-site</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Reference implementation of the CSL editor</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/csl-editor-demo-site target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/csl-editor-demo-site/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/csl-editor-demo-site/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/csl-editor-demo-site/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/csl-editor-demo-site style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>This web application allows users of CSL based reference managers to search for citation styles and edit them. It&#39;s still an alpha version, but the Visual Editor supports all the features of independent CSL styles (AFAIK) and it should be possible to do real work with it.\n\nIt is an implementation of the [CSL editor library](https://github.com/citation-style-editor/csl-editor).\n\nPlay with it here: [Citation Style Editor](http://editor.citationstyles.org)\n</pre></div></body></html></div></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><p>Run <code>git clone --recursive https://github.com/citation-style-editor/csl-editor-demo-site.git csl-demo</code> to checkout the repo.</p></li><li><p>In the repo directory, run <code>jekyll serve</code> (optional: add <code>--watch</code> to automatically rebuild when source changes).</p></li><li><p>Point your browser to <code>localhost:5001</code> to view the site locally.</p></li><li><p>Point your browser to <code>localhost:5001/cslEditorLib/pages/unitTests.html</code> to run the unit tests</p></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/requirements.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Requirements alt=Requirements></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Requirements</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li>bash (on Windows, I recommend git bash included with <a href=http://code.google.com/p/msysgit/downloads/list>msysgit</a>)</li><li>git</li><li><a href=https://github.com/mojombo/jekyll/wiki/install>Jekyll</a></li><li>Node.js 0.8.4 or later</li><li>Java runtime (optional - for running trang to convert the CSL schema)</li><li>Mail server (for sending feedback emails)</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Documentation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://github.com/citation-style-editor/csl-editor/wiki>https://github.com/citation-style-editor/csl-editor/wiki</a></li><li><a href=https://github.com/MPDL/csl-editor-demo-site/wiki>https://github.com/MPDL/csl-editor-demo-site/wiki</a></li></ul></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/csl-editor-demo-site><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/csl-editor-demo-site target=_blank style=\"text-decoration: none;\"><h4 class=title>csl-editor-demo-site</h4></a><button class=copy-btn value=https://github.com/MPDL/csl-editor-demo-site style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Reference implementation of the CSL editor</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">csl-editor-demo-site</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Reference implementation of the CSL editor</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/csl-editor-demo-site target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/csl-editor-demo-site/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/csl-editor-demo-site/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/csl-editor-demo-site/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/citation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Citation alt=Citation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Citation</h2><button class=copy-citation-btn value=https://github.com/MPDL/csl-editor-demo-site style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right data-original-title=\"Copy citation\"></button></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><div style=\"font-family: monospace;\"><!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01//EN\"\n   \"http://www.w3.org/TR/html4/strict.dtd\"><!--\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n--><html><head><title></title><meta http-equiv=content-type content=\"text/html; charset=None\"><style type=text/css>\n/*\ngenerated by Pygments <https://pygments.org/>\nCopyright 2006-2023 by the Pygments team.\nLicensed under the BSD license, see LICENSE for details.\n*/\npre { line-height: 125%; }\ntd.linenos .normal { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\nspan.linenos { color: #666666; background-color: transparent; padding-left: 5px; padding-right: 5px; }\ntd.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nspan.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }\nbody .hll { background-color: #ffffcc }\nbody { background: #f0f0f0; }\nbody .c { color: #60a0b0; font-style: italic } /* Comment */\nbody .err { border: 1px solid #FF0000 } /* Error */\nbody .k { color: #007020; font-weight: bold } /* Keyword */\nbody .o { color: #666666 } /* Operator */\nbody .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */\nbody .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */\nbody .cp { color: #007020 } /* Comment.Preproc */\nbody .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */\nbody .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */\nbody .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */\nbody .gd { color: #A00000 } /* Generic.Deleted */\nbody .ge { font-style: italic } /* Generic.Emph */\nbody .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */\nbody .gr { color: #FF0000 } /* Generic.Error */\nbody .gh { color: #000080; font-weight: bold } /* Generic.Heading */\nbody .gi { color: #00A000 } /* Generic.Inserted */\nbody .go { color: #888888 } /* Generic.Output */\nbody .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */\nbody .gs { font-weight: bold } /* Generic.Strong */\nbody .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\nbody .gt { color: #0044DD } /* Generic.Traceback */\nbody .kc { color: #007020; font-weight: bold } /* Keyword.Constant */\nbody .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */\nbody .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */\nbody .kp { color: #007020 } /* Keyword.Pseudo */\nbody .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */\nbody .kt { color: #902000 } /* Keyword.Type */\nbody .m { color: #40a070 } /* Literal.Number */\nbody .s { color: #4070a0 } /* Literal.String */\nbody .na { color: #4070a0 } /* Name.Attribute */\nbody .nb { color: #007020 } /* Name.Builtin */\nbody .nc { color: #0e84b5; font-weight: bold } /* Name.Class */\nbody .no { color: #60add5 } /* Name.Constant */\nbody .nd { color: #555555; font-weight: bold } /* Name.Decorator */\nbody .ni { color: #d55537; font-weight: bold } /* Name.Entity */\nbody .ne { color: #007020 } /* Name.Exception */\nbody .nf { color: #06287e } /* Name.Function */\nbody .nl { color: #002070; font-weight: bold } /* Name.Label */\nbody .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */\nbody .nt { color: #062873; font-weight: bold } /* Name.Tag */\nbody .nv { color: #bb60d5 } /* Name.Variable */\nbody .ow { color: #007020; font-weight: bold } /* Operator.Word */\nbody .w { color: #bbbbbb } /* Text.Whitespace */\nbody .mb { color: #40a070 } /* Literal.Number.Bin */\nbody .mf { color: #40a070 } /* Literal.Number.Float */\nbody .mh { color: #40a070 } /* Literal.Number.Hex */\nbody .mi { color: #40a070 } /* Literal.Number.Integer */\nbody .mo { color: #40a070 } /* Literal.Number.Oct */\nbody .sa { color: #4070a0 } /* Literal.String.Affix */\nbody .sb { color: #4070a0 } /* Literal.String.Backtick */\nbody .sc { color: #4070a0 } /* Literal.String.Char */\nbody .dl { color: #4070a0 } /* Literal.String.Delimiter */\nbody .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */\nbody .s2 { color: #4070a0 } /* Literal.String.Double */\nbody .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */\nbody .sh { color: #4070a0 } /* Literal.String.Heredoc */\nbody .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */\nbody .sx { color: #c65d09 } /* Literal.String.Other */\nbody .sr { color: #235388 } /* Literal.String.Regex */\nbody .s1 { color: #4070a0 } /* Literal.String.Single */\nbody .ss { color: #517918 } /* Literal.String.Symbol */\nbody .bp { color: #007020 } /* Name.Builtin.Pseudo */\nbody .fm { color: #06287e } /* Name.Function.Magic */\nbody .vc { color: #bb60d5 } /* Name.Variable.Class */\nbody .vg { color: #bb60d5 } /* Name.Variable.Global */\nbody .vi { color: #bb60d5 } /* Name.Variable.Instance */\nbody .vm { color: #bb60d5 } /* Name.Variable.Magic */\nbody .il { color: #40a070 } /* Literal.Number.Integer.Long */\n\n  </style></head><body><h2></h2><div class=highlight><pre><span></span>This web application allows users of CSL based reference managers to search for citation styles and edit them. It&#39;s still an alpha version, but the Visual Editor supports all the features of independent CSL styles (AFAIK) and it should be possible to do real work with it.\n\nIt is an implementation of the [CSL editor library](https://github.com/citation-style-editor/csl-editor).\n\nPlay with it here: [Citation Style Editor](http://editor.citationstyles.org)\n</pre></div></body></html></div></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><p>Run <code>git clone --recursive https://github.com/citation-style-editor/csl-editor-demo-site.git csl-demo</code> to checkout the repo.</p></li><li><p>In the repo directory, run <code>jekyll serve</code> (optional: add <code>--watch</code> to automatically rebuild when source changes).</p></li><li><p>Point your browser to <code>localhost:5001</code> to view the site locally.</p></li><li><p>Point your browser to <code>localhost:5001/cslEditorLib/pages/unitTests.html</code> to run the unit tests</p></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/requirements.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Requirements alt=Requirements></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Requirements</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li>bash (on Windows, I recommend git bash included with <a href=http://code.google.com/p/msysgit/downloads/list>msysgit</a>)</li><li>git</li><li><a href=https://github.com/mojombo/jekyll/wiki/install>Jekyll</a></li><li>Node.js 0.8.4 or later</li><li>Java runtime (optional - for running trang to convert the CSL schema)</li><li>Mail server (for sending feedback emails)</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Documentation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://github.com/citation-style-editor/csl-editor/wiki>https://github.com/citation-style-editor/csl-editor/wiki</a></li><li><a href=https://github.com/MPDL/csl-editor-demo-site/wiki>https://github.com/MPDL/csl-editor-demo-site/wiki</a></li></ul></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "csl-editor-demo-site",
        "recently_updated": 2664,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "html",
            "javascript",
            "shell"
        ],
        "description": "Reference implementation of the CSL editor",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": {
            "cff": null,
            "bibtex": null,
            "citation": [
                "This web application allows users of CSL based reference managers to search for citation styles and edit them. It's still an alpha version, but the Visual Editor supports all the features of independent CSL styles (AFAIK) and it should be possible to do real work with it.\n\nIt is an implementation of the [CSL editor library](https://github.com/citation-style-editor/csl-editor).\n\nPlay with it here: [Citation Style Editor](http://editor.citationstyles.org)\n",
                "This process creates a static HTML site with concatenated javascript files and cache busters on the URLs, and optionally pushes to the `gh-pages` branch, currently served by github at [http://editor.citationstyles.org](http://editor.citationstyles.org).\n\n- Run `git clone --recursive https://github.com/citation-style-editor/csl-editor-demo-site.git csl-demo` to checkout the repo.\n\n- From the repo directory, run `./deploy.sh $BUILD_DIR $GH_PAGES_REPO_DIR`, where:\n  - `$BUILD_DIR` is the name of the directory you wish to deploy to, relative to the parent of the current directory. **All current contents of** `$BUILD_DIR` **will be removed!**\n  - `$GH_PAGES_REPO_DIR` (optional) is the name of a checked out `csl-editor-demo-site` repo directory, again relative to the parent of the current directory, which will be used to copy the built version and push the result to the `gh-pages` branch in github, which will automatically update the site at [editor.citationstyles.org](http://editor.citationstyles.org), the domain given in the CNAME file.\n\n- Point your browser to `http://editor.citationstyles.org/cslEditorLib/pages/unitTests.html` to run the unit tests\n\n- Point your browser to `http://editor.citationstyles.org` to view the deployed site\n",
                "Create a fork of this `csl-editor-demo-site` repository and feel free to alter everything for your own needs _except_ for the core library within the `cslEditorLib` git submodule.\n\nCustomisable features include:\n\n- Load/Save functions, see `src/visualEditorPage.js`\n- Navigation bar and feedback widget, see `html/navigation.html`\n\nYou can override these without touching `cslEditorLib`.\n",
                "See documentation for the core library code and it's API at the [CSLEditorLib wiki](https://github.com/citation-style-editor/csl-editor/wiki).\n\nIf you fix bugs or otherwise improve the core [cslEditorLib](https://github.com/citation-style-editor/csl-editor) library, ensure the changes are not specific to your implementation and please issue a [pull request](https://github.com/citation-style-editor/csl-editor/pulls) so that everyone can benefit. Thanks!\n\n"
            ]
        },
        "citationText": [
            "This web application allows users of CSL based reference managers to search for citation styles and edit them. It's still an alpha version, but the Visual Editor supports all the features of independent CSL styles (AFAIK) and it should be possible to do real work with it.\n\nIt is an implementation of the [CSL editor library](https://github.com/citation-style-editor/csl-editor).\n\nPlay with it here: [Citation Style Editor](http://editor.citationstyles.org)\n",
            "This process creates a static HTML site with concatenated javascript files and cache busters on the URLs, and optionally pushes to the `gh-pages` branch, currently served by github at [http://editor.citationstyles.org](http://editor.citationstyles.org).\n\n- Run `git clone --recursive https://github.com/citation-style-editor/csl-editor-demo-site.git csl-demo` to checkout the repo.\n\n- From the repo directory, run `./deploy.sh $BUILD_DIR $GH_PAGES_REPO_DIR`, where:\n  - `$BUILD_DIR` is the name of the directory you wish to deploy to, relative to the parent of the current directory. **All current contents of** `$BUILD_DIR` **will be removed!**\n  - `$GH_PAGES_REPO_DIR` (optional) is the name of a checked out `csl-editor-demo-site` repo directory, again relative to the parent of the current directory, which will be used to copy the built version and push the result to the `gh-pages` branch in github, which will automatically update the site at [editor.citationstyles.org](http://editor.citationstyles.org), the domain given in the CNAME file.\n\n- Point your browser to `http://editor.citationstyles.org/cslEditorLib/pages/unitTests.html` to run the unit tests\n\n- Point your browser to `http://editor.citationstyles.org` to view the deployed site\n",
            "Create a fork of this `csl-editor-demo-site` repository and feel free to alter everything for your own needs _except_ for the core library within the `cslEditorLib` git submodule.\n\nCustomisable features include:\n\n- Load/Save functions, see `src/visualEditorPage.js`\n- Navigation bar and feedback widget, see `html/navigation.html`\n\nYou can override these without touching `cslEditorLib`.\n",
            "See documentation for the core library code and it's API at the [CSLEditorLib wiki](https://github.com/citation-style-editor/csl-editor/wiki).\n\nIf you fix bugs or otherwise improve the core [cslEditorLib](https://github.com/citation-style-editor/csl-editor) library, ensure the changes are not specific to your implementation and please issue a [pull request](https://github.com/citation-style-editor/csl-editor/pulls) so that everyone can benefit. Thanks!\n\n"
        ],
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": true,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/rdmo-catalog-mpg",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/rdmo-catalog-mpg><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmo-catalog-mpg target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmo-catalog-mpg</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmo-catalog-mpg style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmo-catalog-mpg</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmo-catalog-mpg target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a88d62;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 31-08-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmo-catalog-mpg/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmo-catalog-mpg/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmo-catalog-mpg/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/cc0-1.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Creative Commons Zero v1.0 Universal\" alt=\"License: Creative Commons Zero v1.0 Universal\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/rdmo-catalog-mpg><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmo-catalog-mpg target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmo-catalog-mpg</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmo-catalog-mpg style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmo-catalog-mpg</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmo-catalog-mpg target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a88d62;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 31-08-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmo-catalog-mpg/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmo-catalog-mpg/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmo-catalog-mpg/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/cc0-1.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Creative Commons Zero v1.0 Universal\" alt=\"License: Creative Commons Zero v1.0 Universal\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "rdmo-catalog-mpg",
        "recently_updated": 87,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "r",
            "shell",
            "python"
        ],
        "description": "The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. \nThe files that are officially provided by the RDMO project are in the `rdmorganiser` folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. *Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data*. \nDifferent scripts are located in `tools`. These are interesting for people maintaining this repo.\n \n",
        "license": true,
        "licenseName": "Creative Commons Zero v1.0 Universal",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/PubMan-GUI",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/PubMan-GUI><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/PubMan-GUI target=_blank style=\"text-decoration: none;\"><h4 class=title>PubMan-GUI</h4></a><button class=copy-btn value=https://github.com/MPDL/PubMan-GUI style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>PubMan GUI based on Angular</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">PubMan-GUI</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>PubMan GUI based on Angular</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/PubMan-GUI target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-03-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/PubMan-GUI/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/PubMan-GUI/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/PubMan-GUI/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><p>To get more help on the Angular CLI use <code>ng help</code> or go check out the <a href=https://angular.io/cli>Angular CLI Overview and Command Reference</a> page.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/PubMan-GUI><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/PubMan-GUI target=_blank style=\"text-decoration: none;\"><h4 class=title>PubMan-GUI</h4></a><button class=copy-btn value=https://github.com/MPDL/PubMan-GUI style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>PubMan GUI based on Angular</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">PubMan-GUI</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>PubMan GUI based on Angular</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/PubMan-GUI target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-03-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/PubMan-GUI/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/PubMan-GUI/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/PubMan-GUI/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><p>To get more help on the Angular CLI use <code>ng help</code> or go check out the <a href=https://angular.io/cli>Angular CLI Overview and Command Reference</a> page.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "PubMan-GUI",
        "recently_updated": 261,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "typescript",
            "html",
            "scss"
        ],
        "description": "PubMan GUI based on Angular",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": true,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/mPad-Services",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/mPad-Services><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/mPad-Services target=_blank style=\"text-decoration: none;\"><h4 class=title>mPad-Services</h4></a><button class=copy-btn value=https://github.com/MPDL/mPad-Services style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">mPad-Services</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/mPad-Services target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-06-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/mPad-Services/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/mPad-Services/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/mPad-Services/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/mPad-Services><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/mPad-Services target=_blank style=\"text-decoration: none;\"><h4 class=title>mPad-Services</h4></a><button class=copy-btn value=https://github.com/MPDL/mPad-Services style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">mPad-Services</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/mPad-Services target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-06-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/mPad-Services/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/mPad-Services/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/mPad-Services/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "mPad-Services",
        "recently_updated": 1257,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "html",
            "java",
            "css"
        ],
        "description": "No description available yet.",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/dataverse-previewers",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/dataverse-previewers><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/dataverse-previewers target=_blank style=\"text-decoration: none;\"><h4 class=title>dataverse-previewers</h4></a><button class=copy-btn value=https://github.com/MPDL/dataverse-previewers style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>A collection of Datafile Previewers that can be configured to work with Dataverse</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">dataverse-previewers</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>A collection of Datafile Previewers that can be configured to work with Dataverse</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/dataverse-previewers target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=repo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-11-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/dataverse-previewers/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/dataverse-previewers/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/dataverse-previewers/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>These previewers can be run without downloading them by simply running the curl command(s) below to register then with your local dataverse instance. (You can also create local copies and register those).</p><p>For updates such as enabling Internationalization, which change the parameters you need to register with (Internationalization requires that Dataverse send the localeCode to the previewers), you'll need to delete the registrations for existing previewers (using the Dataverse externalTools API) and re-register them again using the updated curl commands below.</p><p>There is one command per mimetype you wish to preview (i.e. multiple commands to cover different types of images.) You can run any/all of the commands as you like. Note that the Hypothesis annotation previewer assumes a custom mimetype and may not be useful for most Dataverses (contact <a href=mailto:qdr@syr.edu>QDR</a> for more information). Dataverse 4.11+ is required.</p><p>Note that Dataverse installations configured to redirect to S3 storage for file downloads will need to enable CORS at the storage layer as well as the application layer (the latter is enabled by default). (See, for example, <a href=https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html>Amazon's CORS configuration guidance</a>).</p><p>Also note that using the commands below means that your installation will automatically start using updated versions of the previewers when the master branch of this repository is updated. We intend to announce upcoming changes on the dataverse-community@google-groups.com mailing list, but if you do not want this behavior, you can download the previewers and host them on your own server, adjusting the curl commands below to reference your local copies.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=pre5.2curlcommands.md>Dataverse &lt;= v5.1</a></li><li><a href=5.2curlcommands.md>Dataverse 5.2+</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><p>If you are interested in adding additional previewers, or in maintaining/enhancing existing ones, contact us at <a href=mailto:dataverse-dev@googlegroups.com>dataverse-dev@googlegroups.com</a> or work through github to fork/make pull-requests against the repository.</p><p>The wiki now contains a <a href=https://github.com/gdcc/dataverse-previewers/wiki/How-to-create-a-previewer>How To Create a Previewer</a> page that provides a detailed guide to developing new previewers starting from the existing HTML/Javascript templates. (You can also build previewers using any language you choose, starting from the External Tools API in Dataverse.)</p><p>Contributors are expected to keep the master branch in a 'production-ready' state, as Dataverse instances may be using the html, javascript, and css files there directly via their github.io URLs (see curl commands below).</p><p>By committing code to the repository, Contributors are agreeing to make it available under the <a href=https://gdcc/dataverse-previewers/LICENSE>MIT Open Source license</a>.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/acknowledgement.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Acknowledgement alt=Acknowledgement></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Acknowledgement</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>The original tools were developed through the <a href=https://qdr.syr.edu>Qualitative Data Repository</a> but are being offered to the Dataverse community at large.</p><p>The Spreadsheet Previewer was contributed by <a href=https://github.com/anncie-pcss>anncie-pcss</a>.</p><p><a href=https://github.com/pdurbin>pdurbin</a> updated the retriever.js script to allow previewers to be embedded directly in the Dataverse file pages.</p><p><a href=https://github.com/juancorr>juancorr</a> added internationalization and provided a Spanish translation for the existing previewers.</p><p><a href=https://github.com/kaitlinnewson>kaitlinnewson</a> provided a French translation for the existing previewers, and contributed the GeoJSON previewer.</p><p><a href=https://github.com/MPDL>Max Planck Digital Library</a> contributed the ZIP Previewer.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/dataverse-previewers><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/dataverse-previewers target=_blank style=\"text-decoration: none;\"><h4 class=title>dataverse-previewers</h4></a><button class=copy-btn value=https://github.com/MPDL/dataverse-previewers style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>A collection of Datafile Previewers that can be configured to work with Dataverse</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">dataverse-previewers</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>A collection of Datafile Previewers that can be configured to work with Dataverse</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/dataverse-previewers target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 24-11-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/dataverse-previewers/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/dataverse-previewers/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/dataverse-previewers/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>These previewers can be run without downloading them by simply running the curl command(s) below to register then with your local dataverse instance. (You can also create local copies and register those).</p><p>For updates such as enabling Internationalization, which change the parameters you need to register with (Internationalization requires that Dataverse send the localeCode to the previewers), you'll need to delete the registrations for existing previewers (using the Dataverse externalTools API) and re-register them again using the updated curl commands below.</p><p>There is one command per mimetype you wish to preview (i.e. multiple commands to cover different types of images.) You can run any/all of the commands as you like. Note that the Hypothesis annotation previewer assumes a custom mimetype and may not be useful for most Dataverses (contact <a href=mailto:qdr@syr.edu>QDR</a> for more information). Dataverse 4.11+ is required.</p><p>Note that Dataverse installations configured to redirect to S3 storage for file downloads will need to enable CORS at the storage layer as well as the application layer (the latter is enabled by default). (See, for example, <a href=https://docs.aws.amazon.com/AmazonS3/latest/user-guide/add-cors-configuration.html>Amazon's CORS configuration guidance</a>).</p><p>Also note that using the commands below means that your installation will automatically start using updated versions of the previewers when the master branch of this repository is updated. We intend to announce upcoming changes on the dataverse-community@google-groups.com mailing list, but if you do not want this behavior, you can download the previewers and host them on your own server, adjusting the curl commands below to reference your local copies.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=pre5.2curlcommands.md>Dataverse &lt;= v5.1</a></li><li><a href=5.2curlcommands.md>Dataverse 5.2+</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><p>If you are interested in adding additional previewers, or in maintaining/enhancing existing ones, contact us at <a href=mailto:dataverse-dev@googlegroups.com>dataverse-dev@googlegroups.com</a> or work through github to fork/make pull-requests against the repository.</p><p>The wiki now contains a <a href=https://github.com/gdcc/dataverse-previewers/wiki/How-to-create-a-previewer>How To Create a Previewer</a> page that provides a detailed guide to developing new previewers starting from the existing HTML/Javascript templates. (You can also build previewers using any language you choose, starting from the External Tools API in Dataverse.)</p><p>Contributors are expected to keep the master branch in a 'production-ready' state, as Dataverse instances may be using the html, javascript, and css files there directly via their github.io URLs (see curl commands below).</p><p>By committing code to the repository, Contributors are agreeing to make it available under the <a href=https://gdcc/dataverse-previewers/LICENSE>MIT Open Source license</a>.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/acknowledgement.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Acknowledgement alt=Acknowledgement></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Acknowledgement</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>The original tools were developed through the <a href=https://qdr.syr.edu>Qualitative Data Repository</a> but are being offered to the Dataverse community at large.</p><p>The Spreadsheet Previewer was contributed by <a href=https://github.com/anncie-pcss>anncie-pcss</a>.</p><p><a href=https://github.com/pdurbin>pdurbin</a> updated the retriever.js script to allow previewers to be embedded directly in the Dataverse file pages.</p><p><a href=https://github.com/juancorr>juancorr</a> added internationalization and provided a Spanish translation for the existing previewers.</p><p><a href=https://github.com/kaitlinnewson>kaitlinnewson</a> provided a French translation for the existing previewers, and contributed the GeoJSON previewer.</p><p><a href=https://github.com/MPDL>Max Planck Digital Library</a> contributed the ZIP Previewer.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "dataverse-previewers",
        "recently_updated": 367,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "html",
            "css"
        ],
        "description": "A collection of Datafile Previewers that can be configured to work with Dataverse",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": true,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": true,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": true,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/fedora-genericsearch-2.2",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/fedora-genericsearch-2.2><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/fedora-genericsearch-2.2 target=_blank style=\"text-decoration: none;\"><h4 class=title>fedora-genericsearch-2.2</h4></a><button class=copy-btn value=https://github.com/MPDL/fedora-genericsearch-2.2 style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><ul><li>License and Copyright: FedoraGSearch is subject to the same open source</li><li>license as the Fedora Repository System at www.fedora-commons.org</li><li>Copyright 2006, 2007, 2008 by The Technical University of Denmark.</li><li>All rights reserved.</li></ul><p>The FedoraGSearch development is funded by</p><pre><code> DEFF, Denmark's Electronic Research Library, http://www.deff.dk .\n </code></pre><p>The developer is Gert Schmeltz Pedersen, gsp@dtic.dtu.dk, at the Technical Information Center of Denmark at the Technical University of Denmark. Contact in the Fedora core developer team is Chris Wilper, cwilper@fedora-commons.org . Version 2.0 was released in February 2008, with new features requested by users. The main and overall aim is to exploit more features of Lucene. It works with Fedora version 2.2.1. Version 2.1 was released in April 2008, updating GSearch to work with Fedora 3.0 and taking advantage of Fedora's new messaging capability for index updates. The new features in Version 2.2:</p><ul><li><p>Fedora 3.1 compatibility</p></li><li><p>Lucene 2.4.0 compatibility</p></li><li><p>Solr 1.3.0 compatibility</p></li><li><p>For the lucene plugin: Search result filtering by access constraints, as defined by XACML policies, in order to show only those search hits that the user is actually permitted to read. The new features in Version 2.1:</p></li><li><p>Update listener which uses the Fedora messaging client to listen for updates being performed through API-M. These update messages contain the information needed to perform index updates, thereby keeping GSearch up-to-date with the Fedora repository. The new features in Version 2.0:</p></li><li><p>Added easier configuration, so that you need only edit one file with property values, then run it with ant.</p></li><li><p>Added a sortFields parameter to gfindObjects for Lucene, sorting search results as specified, exploiting Lucene classes for sorting.</p></li><li><p>Added optimize options for Lucene indexing. The mergeFactor and maxBufferedDocs properties will affect performance as explained in the Lucene documentation. The optimize action of the updateIndex operation will perform the Lucene method call IndexWriter.optimize(), which merges all segments together into a single segment, optimizing an index for search. The optimize() is no longer called after each updateIndex.</p></li><li><p>Added parameters to the indexDocXslt parameter of the updateIndex operation, enabling the transfer of param values into the indexing stylesheet.</p></li><li><p>Added untokenizedFields property to Lucene index.properties files. Adding the property with a list of all untokenized fields will ensure that they all select the appropriate analyzer.</p></li><li><p>Added properties snippetBegin and snippetEnd, making highlight code configurable.</p></li><li><p>Added property for custom URIResolver used by xslt transformers for basic authorization and SSL, see the example dk.defxws.fedoragsearch.server.URIResolverImpl class.</p></li><li><p>Removed encoding of special characters in indexFields. Snippets now show special characters without modification. Indexes should be reindexed.</p></li></ul></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">fedora-genericsearch-2.2</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><ul></p><li>License and Copyright: FedoraGSearch is subject to the same open source</li><li>license as the Fedora Repository System at www.fedora-commons.org</li><li>Copyright 2006, 2007, 2008 by The Technical University of Denmark.</li><li>All rights reserved.</li></ul><p>The FedoraGSearch development is funded by</p><pre><code> DEFF, Denmark's Electronic Research Library, http://www.deff.dk .\n </code></pre><p>The developer is Gert Schmeltz Pedersen, gsp@dtic.dtu.dk, at the Technical Information Center of Denmark at the Technical University of Denmark. Contact in the Fedora core developer team is Chris Wilper, cwilper@fedora-commons.org . Version 2.0 was released in February 2008, with new features requested by users. The main and overall aim is to exploit more features of Lucene. It works with Fedora version 2.2.1. Version 2.1 was released in April 2008, updating GSearch to work with Fedora 3.0 and taking advantage of Fedora's new messaging capability for index updates. The new features in Version 2.2:</p><ul><li><p>Fedora 3.1 compatibility</p></li><li><p>Lucene 2.4.0 compatibility</p></li><li><p>Solr 1.3.0 compatibility</p></li><li><p>For the lucene plugin: Search result filtering by access constraints, as defined by XACML policies, in order to show only those search hits that the user is actually permitted to read. The new features in Version 2.1:</p></li><li><p>Update listener which uses the Fedora messaging client to listen for updates being performed through API-M. These update messages contain the information needed to perform index updates, thereby keeping GSearch up-to-date with the Fedora repository. The new features in Version 2.0:</p></li><li><p>Added easier configuration, so that you need only edit one file with property values, then run it with ant.</p></li><li><p>Added a sortFields parameter to gfindObjects for Lucene, sorting search results as specified, exploiting Lucene classes for sorting.</p></li><li><p>Added optimize options for Lucene indexing. The mergeFactor and maxBufferedDocs properties will affect performance as explained in the Lucene documentation. The optimize action of the updateIndex operation will perform the Lucene method call IndexWriter.optimize(), which merges all segments together into a single segment, optimizing an index for search. The optimize() is no longer called after each updateIndex.</p></li><li><p>Added parameters to the indexDocXslt parameter of the updateIndex operation, enabling the transfer of param values into the indexing stylesheet.</p></li><li><p>Added untokenizedFields property to Lucene index.properties files. Adding the property with a list of all untokenized fields will ensure that they all select the appropriate analyzer.</p></li><li><p>Added properties snippetBegin and snippetEnd, making highlight code configurable.</p></li><li><p>Added property for custom URIResolver used by xslt transformers for basic authorization and SSL, see the example dk.defxws.fedoragsearch.server.URIResolverImpl class.</p></li><li><p>Removed encoding of special characters in indexFields. Snippets now show special characters without modification. Indexes should be reindexed.</p></li></ul></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/fedora-genericsearch-2.2 target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/fedora-genericsearch-2.2/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/fedora-genericsearch-2.2/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/fedora-genericsearch-2.2/master/readme.txt target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/MIT class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><hr><pre><code>          FedoraGSearch Version 2.2</code></pre><hr><ul><li>Updated to Lucene version 2.3.0.</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/fedora-genericsearch-2.2/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/fedora-genericsearch-2.2><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/fedora-genericsearch-2.2 target=_blank style=\"text-decoration: none;\"><h4 class=title>fedora-genericsearch-2.2</h4></a><button class=copy-btn value=https://github.com/MPDL/fedora-genericsearch-2.2 style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><ul><li>License and Copyright: FedoraGSearch is subject to the same open source</li><li>license as the Fedora Repository System at www.fedora-commons.org</li><li>Copyright 2006, 2007, 2008 by The Technical University of Denmark.</li><li>All rights reserved.</li></ul><p>The FedoraGSearch development is funded by</p><pre><code> DEFF, Denmark's Electronic Research Library, http://www.deff.dk .\n </code></pre><p>The developer is Gert Schmeltz Pedersen, gsp@dtic.dtu.dk, at the Technical Information Center of Denmark at the Technical University of Denmark. Contact in the Fedora core developer team is Chris Wilper, cwilper@fedora-commons.org . Version 2.0 was released in February 2008, with new features requested by users. The main and overall aim is to exploit more features of Lucene. It works with Fedora version 2.2.1. Version 2.1 was released in April 2008, updating GSearch to work with Fedora 3.0 and taking advantage of Fedora's new messaging capability for index updates. The new features in Version 2.2:</p><ul><li><p>Fedora 3.1 compatibility</p></li><li><p>Lucene 2.4.0 compatibility</p></li><li><p>Solr 1.3.0 compatibility</p></li><li><p>For the lucene plugin: Search result filtering by access constraints, as defined by XACML policies, in order to show only those search hits that the user is actually permitted to read. The new features in Version 2.1:</p></li><li><p>Update listener which uses the Fedora messaging client to listen for updates being performed through API-M. These update messages contain the information needed to perform index updates, thereby keeping GSearch up-to-date with the Fedora repository. The new features in Version 2.0:</p></li><li><p>Added easier configuration, so that you need only edit one file with property values, then run it with ant.</p></li><li><p>Added a sortFields parameter to gfindObjects for Lucene, sorting search results as specified, exploiting Lucene classes for sorting.</p></li><li><p>Added optimize options for Lucene indexing. The mergeFactor and maxBufferedDocs properties will affect performance as explained in the Lucene documentation. The optimize action of the updateIndex operation will perform the Lucene method call IndexWriter.optimize(), which merges all segments together into a single segment, optimizing an index for search. The optimize() is no longer called after each updateIndex.</p></li><li><p>Added parameters to the indexDocXslt parameter of the updateIndex operation, enabling the transfer of param values into the indexing stylesheet.</p></li><li><p>Added untokenizedFields property to Lucene index.properties files. Adding the property with a list of all untokenized fields will ensure that they all select the appropriate analyzer.</p></li><li><p>Added properties snippetBegin and snippetEnd, making highlight code configurable.</p></li><li><p>Added property for custom URIResolver used by xslt transformers for basic authorization and SSL, see the example dk.defxws.fedoragsearch.server.URIResolverImpl class.</p></li><li><p>Removed encoding of special characters in indexFields. Snippets now show special characters without modification. Indexes should be reindexed.</p></li></ul></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">fedora-genericsearch-2.2</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><ul></p><li>License and Copyright: FedoraGSearch is subject to the same open source</li><li>license as the Fedora Repository System at www.fedora-commons.org</li><li>Copyright 2006, 2007, 2008 by The Technical University of Denmark.</li><li>All rights reserved.</li></ul><p>The FedoraGSearch development is funded by</p><pre><code> DEFF, Denmark's Electronic Research Library, http://www.deff.dk .\n </code></pre><p>The developer is Gert Schmeltz Pedersen, gsp@dtic.dtu.dk, at the Technical Information Center of Denmark at the Technical University of Denmark. Contact in the Fedora core developer team is Chris Wilper, cwilper@fedora-commons.org . Version 2.0 was released in February 2008, with new features requested by users. The main and overall aim is to exploit more features of Lucene. It works with Fedora version 2.2.1. Version 2.1 was released in April 2008, updating GSearch to work with Fedora 3.0 and taking advantage of Fedora's new messaging capability for index updates. The new features in Version 2.2:</p><ul><li><p>Fedora 3.1 compatibility</p></li><li><p>Lucene 2.4.0 compatibility</p></li><li><p>Solr 1.3.0 compatibility</p></li><li><p>For the lucene plugin: Search result filtering by access constraints, as defined by XACML policies, in order to show only those search hits that the user is actually permitted to read. The new features in Version 2.1:</p></li><li><p>Update listener which uses the Fedora messaging client to listen for updates being performed through API-M. These update messages contain the information needed to perform index updates, thereby keeping GSearch up-to-date with the Fedora repository. The new features in Version 2.0:</p></li><li><p>Added easier configuration, so that you need only edit one file with property values, then run it with ant.</p></li><li><p>Added a sortFields parameter to gfindObjects for Lucene, sorting search results as specified, exploiting Lucene classes for sorting.</p></li><li><p>Added optimize options for Lucene indexing. The mergeFactor and maxBufferedDocs properties will affect performance as explained in the Lucene documentation. The optimize action of the updateIndex operation will perform the Lucene method call IndexWriter.optimize(), which merges all segments together into a single segment, optimizing an index for search. The optimize() is no longer called after each updateIndex.</p></li><li><p>Added parameters to the indexDocXslt parameter of the updateIndex operation, enabling the transfer of param values into the indexing stylesheet.</p></li><li><p>Added untokenizedFields property to Lucene index.properties files. Adding the property with a list of all untokenized fields will ensure that they all select the appropriate analyzer.</p></li><li><p>Added properties snippetBegin and snippetEnd, making highlight code configurable.</p></li><li><p>Added property for custom URIResolver used by xslt transformers for basic authorization and SSL, see the example dk.defxws.fedoragsearch.server.URIResolverImpl class.</p></li><li><p>Removed encoding of special characters in indexFields. Snippets now show special characters without modification. Indexes should be reindexed.</p></li></ul></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/fedora-genericsearch-2.2 target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/fedora-genericsearch-2.2/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/fedora-genericsearch-2.2/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/fedora-genericsearch-2.2/master/readme.txt target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/MIT class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><hr><pre><code>          FedoraGSearch Version 2.2</code></pre><hr><ul><li>Updated to Lucene version 2.3.0.</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/fedora-genericsearch-2.2/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "fedora-genericsearch-2.2",
        "recently_updated": 2664,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java",
            "html",
            "css",
            "shell",
            "batchfile"
        ],
        "description": " * License and Copyright: FedoraGSearch is subject to the same open source \n * license as the Fedora Repository System at www.fedora-commons.org\n * Copyright 2006, 2007, 2008 by The Technical University of Denmark.\n * All rights reserved.\n \n The FedoraGSearch development is funded by \n \n     DEFF, Denmark's Electronic Research Library, http://www.deff.dk .\n     \nThe developer is Gert Schmeltz Pedersen, gsp@dtic.dtu.dk, at \nthe Technical Information Center of Denmark at the Technical University of Denmark. \nContact in the Fedora core developer team is Chris Wilper, cwilper@fedora-commons.org . \nVersion 2.0 was released in February 2008, with new features requested by users.\nThe main and overall aim is to exploit more features of Lucene.\nIt works with Fedora version 2.2.1. \nVersion 2.1 was released in April 2008, updating GSearch to work with Fedora 3.0\nand taking advantage of Fedora's new messaging capability for index updates. \nThe new features in Version 2.2: \n- Fedora 3.1 compatibility\n- Lucene 2.4.0 compatibility\n- Solr 1.3.0 compatibility\n- For the lucene plugin: Search result filtering by access constraints, as defined by XACML policies,\n  in order to show only those search hits that the user is actually permitted to read. \nThe new features in Version 2.1: \n- Update listener which uses the Fedora messaging client to listen for \n  updates being performed through API-M. These update messages contain the \n  information needed to perform index updates, thereby keeping GSearch\n  up-to-date with the Fedora repository. \nThe new features in Version 2.0: \n- Added easier configuration, so that you need only edit one file\n  with property values, then run it with ant.\n\t\t\t\t    \n- Added a sortFields parameter to gfindObjects for Lucene, sorting\n  search results as specified, exploiting Lucene classes for sorting.\n  \n- Added optimize options for Lucene indexing. The mergeFactor and maxBufferedDocs\n  properties will affect performance as explained in the Lucene documentation.\n  The optimize action of the updateIndex operation will perform the Lucene method \n  call IndexWriter.optimize(), which merges all segments together into a single segment, \n  optimizing an index for search. The optimize() is no longer called after each updateIndex. \n- Added parameters to the indexDocXslt parameter of the updateIndex operation,\n  enabling the transfer of param values into the indexing stylesheet.\n\t\t\t\t    \n- Added untokenizedFields property to Lucene index.properties files.\n  Adding the property with a list of all untokenized fields will\n  ensure that they all select the appropriate analyzer.\n\t\t\t\t    \n- Added properties snippetBegin and snippetEnd, making highlight code configurable.\n\t\t\t\t    \n- Added property for custom URIResolver used by xslt transformers\n  for basic authorization and SSL,\n  see the example dk.defxws.fedoragsearch.server.URIResolverImpl class.\n\t\t\t\t\t\n- Removed encoding of special characters in indexFields.\n  Snippets now show special characters without modification.\n  Indexes should be reindexed. \n",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/MPG-Reader-iOS",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/MPG-Reader-iOS><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-Reader-iOS target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-Reader-iOS</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-Reader-iOS style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-Reader-iOS</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-Reader-iOS target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 02-03-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-Reader-iOS/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-Reader-iOS/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-Reader-iOS/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/acknowledgement.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Acknowledgement alt=Acknowledgement></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Acknowledgement</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><?xml version=\"1.0\" encoding=\"UTF-8\"?><!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\"><plist version=1.0><dict><key>PreferenceSpecifiers</key><array><dict><key>FooterText</key><string>This application makes use of the following third party libraries:</string><key>Title</key><string>Acknowledgements</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2014-2018 Marko Tadi\u0107 &lt;tadija@me.com&gt; http://tadija.net <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>AEXML</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/)</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>AFNetworking</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2015-2018, Heberti Almeida All rights reserved.</p><p>Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:</p><ul><li><p>Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.</p></li><li><p>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</p></li><li><p>Neither the name of FolioReaderKit nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</p></li></ul><p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. </string><key>License</key><string>BSD</string><key>Title</key><string>FolioReaderKit</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>The MIT License (MIT)</p><p>Copyright (c) 2015 Arthur Ariel Sabintsev</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></string><key>License</key><string>MIT</string><key>Title</key><string>FontBlaster</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>The MIT License (MIT) <p>Copyright (c) 2019 Wei Wang</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></string><key>License</key><string>MIT</string><key>Title</key><string>Kingfisher</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright \u00a9 2009-2020 Matej Bukovinski <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</string><key>License</key><string>MIT</string><key>Title</key><string>MBProgressHUD</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2013-2015 MJRefresh (https://github.com/CoderMJLee/MJRefresh)</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>MJRefresh</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2016 \u2014 Present CHEN Xian-an &lt;xianan.chen@gmail.com&gt;</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>MenuItemKit</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2016 Ashley Mills</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>ReachabilitySwift</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string><strong>Copyright (c) 2012 - 2016, GitHub, Inc.</strong><strong>All rights reserved.</strong></p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>ReactiveCocoa</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string><strong>Copyright (c) 2012 - 2016, GitHub, Inc.</strong><strong>All rights reserved.</strong></p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>ReactiveSwift</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>TABLE OF CONTENTS</p><ol><li><p>Apache License version 2.0</p></li><li><p>Realm Components</p></li><li><p>Export Compliance</p></li><li><hr><pre><code>                          Apache License\n                    Version 2.0, January 2004\n                 http://www.apache.org/licenses/</code></pre><p>TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION</p><ol><li><p>Definitions.</p><p>&quot;License&quot; shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.</p><p>&quot;Licensor&quot; shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.</p><p>&quot;Legal Entity&quot; shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, &quot;control&quot; means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.</p><p>&quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity exercising permissions granted by this License.</p><p>&quot;Source&quot; form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.</p><p>&quot;Object&quot; form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.</p><p>&quot;Work&quot; shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).</p><p>&quot;Derivative Works&quot; shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.</p><p>&quot;Contribution&quot; shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, &quot;submitted&quot; means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as &quot;Not a Contribution.&quot;</p><p>&quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.</p></li><li><p>Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.</p></li><li><p>Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.</p></li><li><p>Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:</p><p>(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and</p><p>(b) You must cause any modified files to carry prominent notices stating that You changed the files; and</p><p>(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and</p><p>(d) If the Work includes a &quot;NOTICE&quot; text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.</p><p>You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.</p></li><li><p>Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.</p></li><li><p>Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.</p></li><li><p>Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.</p></li><li><p>Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.</p></li><li><p>Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.</p></li></ol></li><li><hr></li></ol><p>REALM COMPONENTS</p><p>This software contains components with separate copyright and license terms. Your use of these components is subject to the terms and conditions of the following licenses.</p><p>For the Realm Platform Extensions component</p><p>Realm Platform Extensions License</p><p>Copyright (c) 2011-2017 Realm Inc All rights reserved</p><p>Redistribution and use in binary form, with or without modification, is permitted provided that the following conditions are met:</p><ol><li><p>You agree not to attempt to decompile, disassemble, reverse engineer or otherwise discover the source code from which the binary code was derived. You may, however, access and obtain a separate license for most of the source code from which this Software was created, at http://realm.io/pricing/.</p></li><li><p>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</p></li><li><p>Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</p></li></ol><p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p><ol start=3><li><hr></li></ol><p>EXPORT COMPLIANCE</p><p>You understand that the Software may contain cryptographic functions that may be subject to export restrictions, and you represent and warrant that you are not (i) located in a jurisdiction that is subject to United States economic sanctions (\u201cProhibited Jurisdiction\u201d), including Cuba, Iran, North Korea, Sudan, Syria or the Crimea region, (ii) a person listed on any U.S. government blacklist (to include the List of Specially Designated Nationals and Blocked Persons or the Consolidated Sanctions List administered by the U.S. Department of the Treasury\u2019s Office of Foreign Assets Control, or the Denied Persons List or Entity List administered by the U.S. Department of Commerce) (\u201cSanctioned Person\u201d), or (iii) controlled or 50% or more owned by a Sanctioned Person.</p><p>You agree to comply with all export, re-export and import restrictions and regulations of the U.S. Department of Commerce or other agency or authority of the United States or other applicable countries. You also agree not to transfer, or authorize the transfer of, directly or indirectly, of the Software to any Prohibited Jurisdiction, or otherwise in violation of any such restrictions or regulations. </string><key>License</key><string>Apache 2.0</string><key>Title</key><string>Realm</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>TABLE OF CONTENTS</p><ol><li><p>Apache License version 2.0</p></li><li><p>Realm Components</p></li><li><p>Export Compliance</p></li><li><hr><pre><code>                          Apache License\n                    Version 2.0, January 2004\n                 http://www.apache.org/licenses/</code></pre><p>TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION</p><ol><li><p>Definitions.</p><p>&quot;License&quot; shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.</p><p>&quot;Licensor&quot; shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.</p><p>&quot;Legal Entity&quot; shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, &quot;control&quot; means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.</p><p>&quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity exercising permissions granted by this License.</p><p>&quot;Source&quot; form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.</p><p>&quot;Object&quot; form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.</p><p>&quot;Work&quot; shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).</p><p>&quot;Derivative Works&quot; shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.</p><p>&quot;Contribution&quot; shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, &quot;submitted&quot; means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as &quot;Not a Contribution.&quot;</p><p>&quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.</p></li><li><p>Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.</p></li><li><p>Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.</p></li><li><p>Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:</p><p>(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and</p><p>(b) You must cause any modified files to carry prominent notices stating that You changed the files; and</p><p>(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and</p><p>(d) If the Work includes a &quot;NOTICE&quot; text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.</p><p>You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.</p></li><li><p>Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.</p></li><li><p>Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.</p></li><li><p>Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.</p></li><li><p>Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.</p></li><li><p>Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.</p></li></ol></li><li><hr></li></ol><p>REALM COMPONENTS</p><p>This software contains components with separate copyright and license terms. Your use of these components is subject to the terms and conditions of the following licenses.</p><p>For the Realm Platform Extensions component</p><p>Realm Platform Extensions License</p><p>Copyright (c) 2011-2017 Realm Inc All rights reserved</p><p>Redistribution and use in binary form, with or without modification, is permitted provided that the following conditions are met:</p><ol><li><p>You agree not to attempt to decompile, disassemble, reverse engineer or otherwise discover the source code from which the binary code was derived. You may, however, access and obtain a separate license for most of the source code from which this Software was created, at http://realm.io/pricing/.</p></li><li><p>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</p></li><li><p>Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</p></li></ol><p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p><ol start=3><li><hr></li></ol><p>EXPORT COMPLIANCE</p><p>You understand that the Software may contain cryptographic functions that may be subject to export restrictions, and you represent and warrant that you are not (i) located in a jurisdiction that is subject to United States economic sanctions (\u201cProhibited Jurisdiction\u201d), including Cuba, Iran, North Korea, Sudan, Syria or the Crimea region, (ii) a person listed on any U.S. government blacklist (to include the List of Specially Designated Nationals and Blocked Persons or the Consolidated Sanctions List administered by the U.S. Department of the Treasury\u2019s Office of Foreign Assets Control, or the Denied Persons List or Entity List administered by the U.S. Department of Commerce) (\u201cSanctioned Person\u201d), or (iii) controlled or 50% or more owned by a Sanctioned Person.</p><p>You agree to comply with all export, re-export and import restrictions and regulations of the U.S. Department of Commerce or other agency or authority of the United States or other applicable countries. You also agree not to transfer, or authorize the transfer of, directly or indirectly, of the Software to any Prohibited Jurisdiction, or otherwise in violation of any such restrictions or regulations. </string><key>License</key><string>Apache 2.0</string><key>Title</key><string>RealmSwift</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2010-2015, Sam Soffes, http://soff.es</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>SSZipArchive</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>SnapKit</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2011 Mattt Thompson (http://mattt.me/)</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>TTTAttributedLabel</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>The MIT License (MIT)</p><p>Copyright (c) 2014 Amornchai Kanokpullwad</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</string><key>License</key><string>MIT</string><key>Title</key><string>ZFDragableModalTransition</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Generated by CocoaPods - https://cocoapods.org</string><key>Title</key><string></string><key>Type</key><string>PSGroupSpecifier</string></dict></array><key>StringsTable</key><string>Acknowledgements</string><key>Title</key><string>Acknowledgements</string></dict></plist></p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/swift.svg alt=swift class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Swift><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/MPG-Reader-iOS><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/MPG-Reader-iOS target=_blank style=\"text-decoration: none;\"><h4 class=title>MPG-Reader-iOS</h4></a><button class=copy-btn value=https://github.com/MPDL/MPG-Reader-iOS style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">MPG-Reader-iOS</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/MPG-Reader-iOS target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 02-03-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/MPG-Reader-iOS/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/MPG-Reader-iOS/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/MPG-Reader-iOS/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/acknowledgement.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Acknowledgement alt=Acknowledgement></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Acknowledgement</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><?xml version=\"1.0\" encoding=\"UTF-8\"?><!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\"><plist version=1.0><dict><key>PreferenceSpecifiers</key><array><dict><key>FooterText</key><string>This application makes use of the following third party libraries:</string><key>Title</key><string>Acknowledgements</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2014-2018 Marko Tadi\u0107 &lt;tadija@me.com&gt; http://tadija.net <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>AEXML</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/)</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>AFNetworking</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2015-2018, Heberti Almeida All rights reserved.</p><p>Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:</p><ul><li><p>Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.</p></li><li><p>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</p></li><li><p>Neither the name of FolioReaderKit nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</p></li></ul><p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. </string><key>License</key><string>BSD</string><key>Title</key><string>FolioReaderKit</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>The MIT License (MIT)</p><p>Copyright (c) 2015 Arthur Ariel Sabintsev</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></string><key>License</key><string>MIT</string><key>Title</key><string>FontBlaster</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>The MIT License (MIT) <p>Copyright (c) 2019 Wei Wang</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p></string><key>License</key><string>MIT</string><key>Title</key><string>Kingfisher</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright \u00a9 2009-2020 Matej Bukovinski <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</string><key>License</key><string>MIT</string><key>Title</key><string>MBProgressHUD</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2013-2015 MJRefresh (https://github.com/CoderMJLee/MJRefresh)</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>MJRefresh</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2016 \u2014 Present CHEN Xian-an &lt;xianan.chen@gmail.com&gt;</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>MenuItemKit</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2016 Ashley Mills</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>ReachabilitySwift</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string><strong>Copyright (c) 2012 - 2016, GitHub, Inc.</strong><strong>All rights reserved.</strong></p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>ReactiveCocoa</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string><strong>Copyright (c) 2012 - 2016, GitHub, Inc.</strong><strong>All rights reserved.</strong></p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>ReactiveSwift</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>TABLE OF CONTENTS</p><ol><li><p>Apache License version 2.0</p></li><li><p>Realm Components</p></li><li><p>Export Compliance</p></li><li><hr><pre><code>                          Apache License\n                    Version 2.0, January 2004\n                 http://www.apache.org/licenses/</code></pre><p>TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION</p><ol><li><p>Definitions.</p><p>&quot;License&quot; shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.</p><p>&quot;Licensor&quot; shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.</p><p>&quot;Legal Entity&quot; shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, &quot;control&quot; means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.</p><p>&quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity exercising permissions granted by this License.</p><p>&quot;Source&quot; form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.</p><p>&quot;Object&quot; form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.</p><p>&quot;Work&quot; shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).</p><p>&quot;Derivative Works&quot; shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.</p><p>&quot;Contribution&quot; shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, &quot;submitted&quot; means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as &quot;Not a Contribution.&quot;</p><p>&quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.</p></li><li><p>Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.</p></li><li><p>Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.</p></li><li><p>Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:</p><p>(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and</p><p>(b) You must cause any modified files to carry prominent notices stating that You changed the files; and</p><p>(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and</p><p>(d) If the Work includes a &quot;NOTICE&quot; text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.</p><p>You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.</p></li><li><p>Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.</p></li><li><p>Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.</p></li><li><p>Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.</p></li><li><p>Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.</p></li><li><p>Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.</p></li></ol></li><li><hr></li></ol><p>REALM COMPONENTS</p><p>This software contains components with separate copyright and license terms. Your use of these components is subject to the terms and conditions of the following licenses.</p><p>For the Realm Platform Extensions component</p><p>Realm Platform Extensions License</p><p>Copyright (c) 2011-2017 Realm Inc All rights reserved</p><p>Redistribution and use in binary form, with or without modification, is permitted provided that the following conditions are met:</p><ol><li><p>You agree not to attempt to decompile, disassemble, reverse engineer or otherwise discover the source code from which the binary code was derived. You may, however, access and obtain a separate license for most of the source code from which this Software was created, at http://realm.io/pricing/.</p></li><li><p>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</p></li><li><p>Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</p></li></ol><p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p><ol start=3><li><hr></li></ol><p>EXPORT COMPLIANCE</p><p>You understand that the Software may contain cryptographic functions that may be subject to export restrictions, and you represent and warrant that you are not (i) located in a jurisdiction that is subject to United States economic sanctions (\u201cProhibited Jurisdiction\u201d), including Cuba, Iran, North Korea, Sudan, Syria or the Crimea region, (ii) a person listed on any U.S. government blacklist (to include the List of Specially Designated Nationals and Blocked Persons or the Consolidated Sanctions List administered by the U.S. Department of the Treasury\u2019s Office of Foreign Assets Control, or the Denied Persons List or Entity List administered by the U.S. Department of Commerce) (\u201cSanctioned Person\u201d), or (iii) controlled or 50% or more owned by a Sanctioned Person.</p><p>You agree to comply with all export, re-export and import restrictions and regulations of the U.S. Department of Commerce or other agency or authority of the United States or other applicable countries. You also agree not to transfer, or authorize the transfer of, directly or indirectly, of the Software to any Prohibited Jurisdiction, or otherwise in violation of any such restrictions or regulations. </string><key>License</key><string>Apache 2.0</string><key>Title</key><string>Realm</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>TABLE OF CONTENTS</p><ol><li><p>Apache License version 2.0</p></li><li><p>Realm Components</p></li><li><p>Export Compliance</p></li><li><hr><pre><code>                          Apache License\n                    Version 2.0, January 2004\n                 http://www.apache.org/licenses/</code></pre><p>TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION</p><ol><li><p>Definitions.</p><p>&quot;License&quot; shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.</p><p>&quot;Licensor&quot; shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.</p><p>&quot;Legal Entity&quot; shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, &quot;control&quot; means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.</p><p>&quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity exercising permissions granted by this License.</p><p>&quot;Source&quot; form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.</p><p>&quot;Object&quot; form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.</p><p>&quot;Work&quot; shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).</p><p>&quot;Derivative Works&quot; shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.</p><p>&quot;Contribution&quot; shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, &quot;submitted&quot; means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as &quot;Not a Contribution.&quot;</p><p>&quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.</p></li><li><p>Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.</p></li><li><p>Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.</p></li><li><p>Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:</p><p>(a) You must give any other recipients of the Work or Derivative Works a copy of this License; and</p><p>(b) You must cause any modified files to carry prominent notices stating that You changed the files; and</p><p>(c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and</p><p>(d) If the Work includes a &quot;NOTICE&quot; text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.</p><p>You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.</p></li><li><p>Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.</p></li><li><p>Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.</p></li><li><p>Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.</p></li><li><p>Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.</p></li><li><p>Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.</p></li></ol></li><li><hr></li></ol><p>REALM COMPONENTS</p><p>This software contains components with separate copyright and license terms. Your use of these components is subject to the terms and conditions of the following licenses.</p><p>For the Realm Platform Extensions component</p><p>Realm Platform Extensions License</p><p>Copyright (c) 2011-2017 Realm Inc All rights reserved</p><p>Redistribution and use in binary form, with or without modification, is permitted provided that the following conditions are met:</p><ol><li><p>You agree not to attempt to decompile, disassemble, reverse engineer or otherwise discover the source code from which the binary code was derived. You may, however, access and obtain a separate license for most of the source code from which this Software was created, at http://realm.io/pricing/.</p></li><li><p>Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</p></li><li><p>Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.</p></li></ol><p>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</p><ol start=3><li><hr></li></ol><p>EXPORT COMPLIANCE</p><p>You understand that the Software may contain cryptographic functions that may be subject to export restrictions, and you represent and warrant that you are not (i) located in a jurisdiction that is subject to United States economic sanctions (\u201cProhibited Jurisdiction\u201d), including Cuba, Iran, North Korea, Sudan, Syria or the Crimea region, (ii) a person listed on any U.S. government blacklist (to include the List of Specially Designated Nationals and Blocked Persons or the Consolidated Sanctions List administered by the U.S. Department of the Treasury\u2019s Office of Foreign Assets Control, or the Denied Persons List or Entity List administered by the U.S. Department of Commerce) (\u201cSanctioned Person\u201d), or (iii) controlled or 50% or more owned by a Sanctioned Person.</p><p>You agree to comply with all export, re-export and import restrictions and regulations of the U.S. Department of Commerce or other agency or authority of the United States or other applicable countries. You also agree not to transfer, or authorize the transfer of, directly or indirectly, of the Software to any Prohibited Jurisdiction, or otherwise in violation of any such restrictions or regulations. </string><key>License</key><string>Apache 2.0</string><key>Title</key><string>RealmSwift</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2010-2015, Sam Soffes, http://soff.es</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>SSZipArchive</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2011-Present SnapKit Team - https://github.com/SnapKit</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>SnapKit</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Copyright (c) 2011 Mattt Thompson (http://mattt.me/)</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </string><key>License</key><string>MIT</string><key>Title</key><string>TTTAttributedLabel</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>The MIT License (MIT)</p><p>Copyright (c) 2014 Amornchai Kanokpullwad</p><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &quot;Software&quot;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p><p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p><p>THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</string><key>License</key><string>MIT</string><key>Title</key><string>ZFDragableModalTransition</string><key>Type</key><string>PSGroupSpecifier</string></dict><dict><key>FooterText</key><string>Generated by CocoaPods - https://cocoapods.org</string><key>Title</key><string></string><key>Type</key><string>PSGroupSpecifier</string></dict></array><key>StringsTable</key><string>Acknowledgements</string><key>Title</key><string>Acknowledgements</string></dict></plist></p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/swift.svg alt=swift class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Swift><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "MPG-Reader-iOS",
        "recently_updated": 999,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "swift",
            "objective-c",
            "ruby"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "GNU General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": true,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/LabCam-iOS",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/LabCam-iOS><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam-iOS target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam-iOS</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam-iOS style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam-iOS</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p></p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam-iOS target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 19-05-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam-iOS/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam-iOS/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam-iOS/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/swift.svg alt=swift class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Swift><img src=language_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=language_icons/c.svg alt=c class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=C></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/LabCam-iOS><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam-iOS target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam-iOS</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam-iOS style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam-iOS</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account.</p></p><ul><li>Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper.</li><li>Offline Photos: LabCam is available even without a network, and photos taken by users are uploaded as long as the device is connected to a network.</li><li>OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.</li></ul></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam-iOS target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 19-05-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam-iOS/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam-iOS/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam-iOS/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/swift.svg alt=swift class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Swift><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/ruby.svg alt=ruby class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Ruby><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/c.svg alt=c class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=C></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "LabCam-iOS",
        "recently_updated": 921,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "swift",
            "ruby",
            "c"
        ],
        "description": "LabCam is a powerful helper/tool to upload your real-time photos to the associated KEEPER account. \n- Robust Upload: Photos taken by users are always precisely, reliably marked and uploaded to Keeper. \n- Offline Photos: LabCam is available even without a network, and photos taken by users are uploaded as long as the device is connected to a network. \n- OCR: Powerful OCR makes it easy to extract and store full-text from photos, then users can edit it on their own devices with the .md file, which greatly improves the work efficiency.\n \n",
        "license": true,
        "licenseName": "GNU General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/data-viewer-service",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/data-viewer-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/data-viewer-service target=_blank style=\"text-decoration: none;\"><h4 class=title>data-viewer-service</h4></a><button class=copy-btn value=https://github.com/MPDL/data-viewer-service style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">data-viewer-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/data-viewer-service target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 12-02-2015\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/data-viewer-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/data-viewer-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/data-viewer-service/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li><code>git clone https://github.com/MPDL/data-viewer-service</code></li><li>Compile the service: go into <code>data-viewer-service directory</code>, run <code>mvn clean install</code></li><li>Copy <code>data-viewer.war</code> in Tomcat <code>webapp</code> directory</li><li>Create file <code>data-viewer-service.properties</code>, add following property in it (see provided file in src/WEB-INF directory)</li></ol><p>and put the file into Tomcat <code>conf</code> directory</p><ol start=8><li>Start Tomcat</li><li>Service runs under <code>http://localhost:8080/data-viewer</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Following REST commands are implemented:</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected file for visualization</li></ul></li><li>field 2:<ul><li><strong>name</strong>: mimetype</li><li><strong>type</strong>: text</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the file, generated by invocation of the specific viewer service</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><p><strong>Method</strong>: GET</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Input fields</strong>:</p><ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the file which needs to be visualized</li></ul></li><li>field 2:<ul><li><strong>name</strong>: load</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|flase</li></ul></li><li>field 3:<ul><li><strong>name</strong>: mimetype</li><li><strong>type</strong>: text</li></ul></li></ul></li><li><p><strong>Response</strong>: Delivers HTML view representation of the file, generated by invocation of the specific viewer service</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Response</strong>: Delivers JSON representation of specific viewer services supported by this data viewer.</p></li></ul><h5><strong>Path</strong>: /api/explain/services</h5><ul><li><p><strong>Method</strong>: GET</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Response</strong>: Delivers JSON representation of specific viewer services supported by this data viewer.</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Response</strong>: Delivers JSON representation of formats for which this data viewer can invoke specific viewers. Only one format per viewer is supported.</p></li></ul><p>Go to e.g. http://localhost:8080/data-viewer/</p><p>and you have a simple web form to test the service</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/data-viewer-service/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/data-viewer-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/data-viewer-service target=_blank style=\"text-decoration: none;\"><h4 class=title>data-viewer-service</h4></a><button class=copy-btn value=https://github.com/MPDL/data-viewer-service style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">data-viewer-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/data-viewer-service target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 12-02-2015\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/data-viewer-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/data-viewer-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/data-viewer-service/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Install Maven <a href=http://maven.apache.org/download.cgi>download</a></li><li>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a></li><li><code>git clone https://github.com/MPDL/data-viewer-service</code></li><li>Compile the service: go into <code>data-viewer-service directory</code>, run <code>mvn clean install</code></li><li>Copy <code>data-viewer.war</code> in Tomcat <code>webapp</code> directory</li><li>Create file <code>data-viewer-service.properties</code>, add following property in it (see provided file in src/WEB-INF directory)</li></ol><p>and put the file into Tomcat <code>conf</code> directory</p><ol start=8><li>Start Tomcat</li><li>Service runs under <code>http://localhost:8080/data-viewer</code></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Following REST commands are implemented:</p><ul><li><strong>Media type</strong>: multipart/form-data</li><li><strong>Input fields</strong>:<ul><li>field 1:<ul><li><strong>name</strong>: file1</li><li><strong>type</strong>: file</li><li><strong>value</strong>: locally selected file for visualization</li></ul></li><li>field 2:<ul><li><strong>name</strong>: mimetype</li><li><strong>type</strong>: text</li></ul></li></ul></li><li><strong>Response</strong>: Delivers HTML view representation of the file, generated by invocation of the specific viewer service</li></ul><h5><strong>Path</strong>: /api/view</h5><ul><li><p><strong>Method</strong>: GET</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Input fields</strong>:</p><ul><li>field 1:<ul><li><strong>name</strong>: url</li><li><strong>type</strong>: text</li><li><strong>value</strong>: link to the file which needs to be visualized</li></ul></li><li>field 2:<ul><li><strong>name</strong>: load</li><li><strong>type</strong>: text</li><li><strong>value</strong>: true|flase</li></ul></li><li>field 3:<ul><li><strong>name</strong>: mimetype</li><li><strong>type</strong>: text</li></ul></li></ul></li><li><p><strong>Response</strong>: Delivers HTML view representation of the file, generated by invocation of the specific viewer service</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Response</strong>: Delivers JSON representation of specific viewer services supported by this data viewer.</p></li></ul><h5><strong>Path</strong>: /api/explain/services</h5><ul><li><p><strong>Method</strong>: GET</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Response</strong>: Delivers JSON representation of specific viewer services supported by this data viewer.</p></li><li><p><strong>Media type</strong>: application/x-www-form-urlencoded</p></li><li><p><strong>Response</strong>: Delivers JSON representation of formats for which this data viewer can invoke specific viewers. Only one format per viewer is supported.</p></li></ul><p>Go to e.g. http://localhost:8080/data-viewer/</p><p>and you have a simple web form to test the service</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/data-viewer-service/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "data-viewer-service",
        "recently_updated": 3208,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "No description available yet.",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/imeji-docs",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/imeji-docs><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji-docs target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji-docs</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji-docs style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Help of the imeji software</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji-docs</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Help of the imeji software</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji-docs target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=repo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 08-05-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji-docs/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji-docs/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji-docs/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji-docs/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/imeji-docs><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji-docs target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji-docs</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji-docs style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Help of the imeji software</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji-docs</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Help of the imeji software</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji-docs target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/web.png data-toggle=tooltip data-placement=left title=Website alt=Website alt=repo-type class=repo-type><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 08-05-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji-docs/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji-docs/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji-docs/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji-docs/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "imeji-docs",
        "recently_updated": 1297,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "html"
        ],
        "description": "Help of the imeji software",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": true,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/r2d2-ng",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/r2d2-ng><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/r2d2-ng target=_blank style=\"text-decoration: none;\"><h4 class=title>r2d2-ng</h4></a><button class=copy-btn value=https://github.com/MPDL/r2d2-ng style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This project was generated with <a href=https://github.com/angular/angular-cli>Angular CLI</a> version 11.2.5.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">r2d2-ng</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This project was generated with <a href=https://github.com/angular/angular-cli>Angular CLI</a> version 11.2.5.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/r2d2-ng target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 25-06-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/r2d2-ng/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/r2d2-ng/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/r2d2-ng/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><p>To get more help on the Angular CLI use <code>ng help</code> or go check out the <a href=https://angular.io/cli>Angular CLI Overview and Command Reference</a> page.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/r2d2-ng><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/r2d2-ng target=_blank style=\"text-decoration: none;\"><h4 class=title>r2d2-ng</h4></a><button class=copy-btn value=https://github.com/MPDL/r2d2-ng style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This project was generated with <a href=https://github.com/angular/angular-cli>Angular CLI</a> version 11.2.5.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">r2d2-ng</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This project was generated with <a href=https://github.com/angular/angular-cli>Angular CLI</a> version 11.2.5.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/r2d2-ng target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 25-06-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/r2d2-ng/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/r2d2-ng/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/r2d2-ng/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><p>To get more help on the Angular CLI use <code>ng help</code> or go check out the <a href=https://angular.io/cli>Angular CLI Overview and Command Reference</a> page.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "r2d2-ng",
        "recently_updated": 884,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "typescript",
            "html",
            "javascript",
            "scss"
        ],
        "description": "This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 11.2.5.\n \n",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": true,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/edmond-static-sites",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/edmond-static-sites><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/edmond-static-sites target=_blank style=\"text-decoration: none;\"><h4 class=title>edmond-static-sites</h4></a><button class=copy-btn value=https://github.com/MPDL/edmond-static-sites style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This Github repository contents legal statements and help indications for users of the MPDL's research data repository <strong>Edmond</strong>.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">edmond-static-sites</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This Github repository contents legal statements and help indications for users of the MPDL's research data repository <strong>Edmond</strong>.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/edmond-static-sites target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 28-10-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/edmond-static-sites/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/edmond-static-sites/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/edmond-static-sites/dev/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/edmond-static-sites><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/edmond-static-sites target=_blank style=\"text-decoration: none;\"><h4 class=title>edmond-static-sites</h4></a><button class=copy-btn value=https://github.com/MPDL/edmond-static-sites style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This Github repository contents legal statements and help indications for users of the MPDL's research data repository <strong>Edmond</strong>.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">edmond-static-sites</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This Github repository contents legal statements and help indications for users of the MPDL's research data repository <strong>Edmond</strong>.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/edmond-static-sites target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 28-10-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/edmond-static-sites/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/edmond-static-sites/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/edmond-static-sites/dev/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "edmond-static-sites",
        "recently_updated": 394,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "html",
            "css",
            "shell",
            "javascript"
        ],
        "description": "This Github repository contents legal statements and help indications for users of the MPDL's research data repository **Edmond**.  \n \n",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/officemap",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/officemap><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/officemap target=_blank style=\"text-decoration: none;\"><h4 class=title>officemap</h4></a><button class=copy-btn value=https://github.com/MPDL/officemap style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This is a website that shows the MPDL office ground floor. You can search for rooms and persons names to locate a room on the map. The map framework behind it is called <a href=https://leafletjs.com/ >leaflet</a>.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">officemap</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This is a website that shows the MPDL office ground floor. You can search for rooms and persons names to locate a room on the map. The map framework behind it is called <a href=https://leafletjs.com/ >leaflet</a>.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/officemap target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #6da862;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 13-11-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/officemap/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/officemap/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/officemap/dev/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/go.svg alt=go class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Go><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/officemap><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/officemap target=_blank style=\"text-decoration: none;\"><h4 class=title>officemap</h4></a><button class=copy-btn value=https://github.com/MPDL/officemap style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This is a website that shows the MPDL office ground floor. You can search for rooms and persons names to locate a room on the map. The map framework behind it is called <a href=https://leafletjs.com/ >leaflet</a>.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">officemap</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This is a website that shows the MPDL office ground floor. You can search for rooms and persons names to locate a room on the map. The map framework behind it is called <a href=https://leafletjs.com/ >leaflet</a>.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/officemap target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #6da862;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 13-11-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/officemap/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/officemap/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/officemap/dev/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/go.svg alt=go class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Go><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "officemap",
        "recently_updated": 13,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "typescript",
            "go",
            "css",
            "javascript"
        ],
        "description": "This is a website that shows the MPDL office ground floor. You can search for rooms and\npersons names to locate a room on the map. The map framework behind it is called\n[leaflet](https://leafletjs.com/).\n \n",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/rdmo-catalog",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/rdmo-catalog><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmo-catalog target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmo-catalog</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmo-catalog style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmo-catalog</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmo-catalog target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 01-06-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmo-catalog/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmo-catalog/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmo-catalog/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/cc0-1.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Creative Commons Zero v1.0 Universal\" alt=\"License: Creative Commons Zero v1.0 Universal\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/rdmo-catalog><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmo-catalog target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmo-catalog</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmo-catalog style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmo-catalog</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. The files that are officially provided by the RDMO project are in the <code>rdmorganiser</code> folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. <em>Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data</em>. Different scripts are located in <code>tools</code>. These are interesting for people maintaining this repo.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmo-catalog target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 01-06-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmo-catalog/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmo-catalog/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmo-catalog/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/cc0-1.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Creative Commons Zero v1.0 Universal\" alt=\"License: Creative Commons Zero v1.0 Universal\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "rdmo-catalog",
        "recently_updated": 178,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "r",
            "shell",
            "python"
        ],
        "description": "The repository holds XML files that can be imported into RDMO. They contain different kinds of information like for example the domain model, question catalogs or optionsets. \nThe files that are officially provided by the RDMO project are in the `rdmorganiser` folder. We recommend to import these files to be able to make use of the official domain model, options, tasks and conditions. *Note that parts of these data are required to import user content because RDMO user's question catalogs may refer to parts of the official data*. \nDifferent scripts are located in `tools`. These are interesting for people maintaining this repo.\n \n",
        "license": true,
        "licenseName": "Creative Commons Zero v1.0 Universal",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/python-connector",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/python-connector><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/python-connector target=_blank style=\"text-decoration: none;\"><h4 class=title>python-connector</h4></a><button class=copy-btn value=https://github.com/MPDL/python-connector style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Python connector for the MPDL Service API</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">python-connector</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Python connector for the MPDL Service API</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/python-connector target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 23-10-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/python-connector/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/python-connector/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/python-connector/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Download the .py files and copy them into your Python/Lib folder or to any other folder in your PYTONPATH.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Using mpdl [Screenshot service][3] (eg.) by doing</p><pre><code>from ScreenshotService import *\n\nscreenshot = ScreenshotService()\ntempFile = ScreenshotService.captureFromURL(&quot;serviceTargetURL&quot;, &quot;url&quot;, &quot;outputFormat&quot;, &quot;outputSize&quot;, &quot;crop&quot;)\noutputFile = file('filepath', 'wb+')\noutputFile.write(result.read())\n</code></pre><h2>Details</h2><ul><li><strong>SWC 3D View Service</strong> (SWC3DViewService.py)<ul><li>Methods<ul><li>generateFromFile(self, serviceTargetURL, inputFile, portable)</li><li>generateFromString(self, serviceTargetURL, inputStrng, portable)</li><li>generateFromURL(self, serviceTargetURL, inputURL, portable)</li></ul></li></ul></li><li><strong>SWC Analysis Service</strong> (SWCAnalysisService.py)<ul><li>Methods<ul><li>getAnalysisFromFile(self, serviceTargetURL, inputFile)</li><li>getAnalysisFromString(self, serviceTargetURL, inputString, numberOfBins=&quot;10&quot;)</li><li>getAnalysisFromURL(self, serviceTargetURL, inputURL, numberOfBins=&quot;10&quot;)</li></ul></li></ul></li><li><strong>Screenshot Service</strong> (ScreenshotService.py)<ul><li>Methods<ul><li>captureFromURL (self, serviceTargetURL, inputURL, outputFormat, outputSize, crop)</li><li>captureFromHTML(self, serviceTargetURL, inputHTML, outputFormat, outputSize, crop)</li></ul></li></ul></li><li><strong>Media conversion Service</strong> (MediaConversionService.py)<ul><li>Methods<ul><li>convertFromFile(self, serviceTargetURL, mediaFile, outputFormat, outputSize, crop)</li><li>convertFromURL(self, serviceTargetURL, mediaURL, outputFormat, outputSize, crop)</li></ul></li></ul></li><li><strong>Data Viewer Service</strong> (DataViewerService.py)<ul><li>Methods<ul><li>generateFromFile(self, serviceTargetURL, inputFile, mimetype)</li><li>generateFromURL(self, serviceTargetURL, inputURL, mimetype)</li></ul></li></ul></li><li><strong>FITS Service</strong> (FITSService.py)<ul><li>Methods<ul><li>generateFromFile(self, serviceTargetURL, inputFile)</li><li>generateFromURL(self, serviceTargetURL, inputURL)</li></ul></li></ul></li></ul><p><strong>All parameters are Strings!</strong></p><p><strong>All methods return temporary files</strong></p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/python-connector/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/python-connector><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/python-connector target=_blank style=\"text-decoration: none;\"><h4 class=title>python-connector</h4></a><button class=copy-btn value=https://github.com/MPDL/python-connector style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Python connector for the MPDL Service API</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">python-connector</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Python connector for the MPDL Service API</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/python-connector target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 23-10-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/python-connector/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/python-connector/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/python-connector/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Download the .py files and copy them into your Python/Lib folder or to any other folder in your PYTONPATH.</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Using mpdl [Screenshot service][3] (eg.) by doing</p><pre><code>from ScreenshotService import *\n\nscreenshot = ScreenshotService()\ntempFile = ScreenshotService.captureFromURL(&quot;serviceTargetURL&quot;, &quot;url&quot;, &quot;outputFormat&quot;, &quot;outputSize&quot;, &quot;crop&quot;)\noutputFile = file('filepath', 'wb+')\noutputFile.write(result.read())\n</code></pre><h2>Details</h2><ul><li><strong>SWC 3D View Service</strong> (SWC3DViewService.py)<ul><li>Methods<ul><li>generateFromFile(self, serviceTargetURL, inputFile, portable)</li><li>generateFromString(self, serviceTargetURL, inputStrng, portable)</li><li>generateFromURL(self, serviceTargetURL, inputURL, portable)</li></ul></li></ul></li><li><strong>SWC Analysis Service</strong> (SWCAnalysisService.py)<ul><li>Methods<ul><li>getAnalysisFromFile(self, serviceTargetURL, inputFile)</li><li>getAnalysisFromString(self, serviceTargetURL, inputString, numberOfBins=&quot;10&quot;)</li><li>getAnalysisFromURL(self, serviceTargetURL, inputURL, numberOfBins=&quot;10&quot;)</li></ul></li></ul></li><li><strong>Screenshot Service</strong> (ScreenshotService.py)<ul><li>Methods<ul><li>captureFromURL (self, serviceTargetURL, inputURL, outputFormat, outputSize, crop)</li><li>captureFromHTML(self, serviceTargetURL, inputHTML, outputFormat, outputSize, crop)</li></ul></li></ul></li><li><strong>Media conversion Service</strong> (MediaConversionService.py)<ul><li>Methods<ul><li>convertFromFile(self, serviceTargetURL, mediaFile, outputFormat, outputSize, crop)</li><li>convertFromURL(self, serviceTargetURL, mediaURL, outputFormat, outputSize, crop)</li></ul></li></ul></li><li><strong>Data Viewer Service</strong> (DataViewerService.py)<ul><li>Methods<ul><li>generateFromFile(self, serviceTargetURL, inputFile, mimetype)</li><li>generateFromURL(self, serviceTargetURL, inputURL, mimetype)</li></ul></li></ul></li><li><strong>FITS Service</strong> (FITSService.py)<ul><li>Methods<ul><li>generateFromFile(self, serviceTargetURL, inputFile)</li><li>generateFromURL(self, serviceTargetURL, inputURL)</li></ul></li></ul></li></ul><p><strong>All parameters are Strings!</strong></p><p><strong>All methods return temporary files</strong></p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/python-connector/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "python-connector",
        "recently_updated": 3321,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "python"
        ],
        "description": "Python connector for the MPDL Service API",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/rdmo-app",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/rdmo-app><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmo-app target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmo-app</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmo-app style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>The framework will use the files in folder rdmo_theme and not their counterparts from the RDMO source code. By doing this you can override any template or static file you desire as long as you get the folder structure right.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmo-app</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>The framework will use the files in folder rdmo_theme and not their counterparts from the RDMO source code. By doing this you can override any template or static file you desire as long as you get the folder structure right.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmo-app target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-11-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmo-app/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmo-app/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmo-app/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">How to use it</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>python /rdmo-app/MPDL_rdmo-app/rdmo-app-master/manage.py</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/rdmo-app><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/rdmo-app target=_blank style=\"text-decoration: none;\"><h4 class=title>rdmo-app</h4></a><button class=copy-btn value=https://github.com/MPDL/rdmo-app style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>The framework will use the files in folder rdmo_theme and not their counterparts from the RDMO source code. By doing this you can override any template or static file you desire as long as you get the folder structure right.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">rdmo-app</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>The framework will use the files in folder rdmo_theme and not their counterparts from the RDMO source code. By doing this you can override any template or static file you desire as long as you get the folder structure right.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/rdmo-app target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-11-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/rdmo-app/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/rdmo-app/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/rdmo-app/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">How to use it</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>python /rdmo-app/MPDL_rdmo-app/rdmo-app-master/manage.py</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "rdmo-app",
        "recently_updated": 739,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "python"
        ],
        "description": "The framework will use the files in folder rdmo_theme and not their counterparts from the RDMO source code. By doing this you can override any template or static file you desire as long as you get the folder structure right.",
        "license": true,
        "licenseName": "Apache License 2.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/screenshot-service",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/screenshot-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/screenshot-service target=_blank style=\"text-decoration: none;\"><h4 class=title>screenshot-service</h4></a><button class=copy-btn value=https://github.com/MPDL/screenshot-service style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web service to generate screenshots of html page</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">screenshot-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web service to generate screenshots of html page</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/screenshot-service target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 05-10-2015\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/screenshot-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>3</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/screenshot-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/screenshot-service/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>The Screenshot Service can be run in Firefox or in background by using PhantomJS.<br></p><ol><li><p>Install Firefox <a href=https://www.mozilla.org/ >download</a><br></p></li><li><p>Install Phantoms [download] (http://phantomjs.org/download.html) <br></p></li><li><p>Install Java [download] (http://www.oracle.com/technetwork/java/javase/downloads/index.html)<br></p></li><li><p>Install Maven [download] (http://maven.apache.org/download.cgi) <br></p></li><li><p>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a><br></p></li><li><p>Clone the service: https://github.com/MPDL/screenshot-service</p></li><li><p>Compile the service: In service directory, run <code>mvn clean install</code></p></li><li><p>Copy html-screenshot.war to Tomcat Webapp Directory</p></li><li><p>Start Tomcat</p></li><li><p>Run Services under <code>http://localhost:8080/screenshot</code></p></li><li><p>(OPTIONAL) If you want to support Webgl (only with useFirefox=true), you need:</p><ul><li>a: a server with a grafic card</li><li>b: run <code>Xvfb :2 -screen 0 1024x768x24</code></li><li>c: run <code>export DISPLAY=&quot;:2&quot;</code></li></ul></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/screenshot-service/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/screenshot-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/screenshot-service target=_blank style=\"text-decoration: none;\"><h4 class=title>screenshot-service</h4></a><button class=copy-btn value=https://github.com/MPDL/screenshot-service style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Web service to generate screenshots of html page</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">screenshot-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Web service to generate screenshots of html page</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/screenshot-service target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 05-10-2015\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/screenshot-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>3</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/screenshot-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/screenshot-service/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>The Screenshot Service can be run in Firefox or in background by using PhantomJS.<br></p><ol><li><p>Install Firefox <a href=https://www.mozilla.org/ >download</a><br></p></li><li><p>Install Phantoms [download] (http://phantomjs.org/download.html) <br></p></li><li><p>Install Java [download] (http://www.oracle.com/technetwork/java/javase/downloads/index.html)<br></p></li><li><p>Install Maven [download] (http://maven.apache.org/download.cgi) <br></p></li><li><p>Install Tomcat <a href=http://maven.apache.org/download.cgi>download</a><br></p></li><li><p>Clone the service: https://github.com/MPDL/screenshot-service</p></li><li><p>Compile the service: In service directory, run <code>mvn clean install</code></p></li><li><p>Copy html-screenshot.war to Tomcat Webapp Directory</p></li><li><p>Start Tomcat</p></li><li><p>Run Services under <code>http://localhost:8080/screenshot</code></p></li><li><p>(OPTIONAL) If you want to support Webgl (only with useFirefox=true), you need:</p><ul><li>a: a server with a grafic card</li><li>b: run <code>Xvfb :2 -screen 0 1024x768x24</code></li><li>c: run <code>export DISPLAY=&quot;:2&quot;</code></li></ul></li></ol></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/screenshot-service/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "screenshot-service",
        "recently_updated": 2974,
        "stargazersCount": 3,
        "releases": 0,
        "languages": [
            "java",
            "html"
        ],
        "description": "Web service to generate screenshots of html page",
        "license": true,
        "licenseName": "Apache License 2.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/escidoc-oaiprovider",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/escidoc-oaiprovider><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/escidoc-oaiprovider target=_blank style=\"text-decoration: none;\"><h4 class=title>escidoc-oaiprovider</h4></a><button class=copy-btn value=https://github.com/MPDL/escidoc-oaiprovider style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>These is the actual implementation of the eSciDocOAIProvider It includes the proai-1.1.3.jar File from Fedora The EscidocOAIDriver class implements the OAIDriver interface from fedora</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">escidoc-oaiprovider</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>These is the actual implementation of the eSciDocOAIProvider It includes the proai-1.1.3.jar File from Fedora The EscidocOAIDriver class implements the OAIDriver interface from fedora</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/escidoc-oaiprovider target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/escidoc-oaiprovider/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/escidoc-oaiprovider/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/escidoc-oaiprovider/master/README target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/escidoc-oaiprovider/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/escidoc-oaiprovider><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/escidoc-oaiprovider target=_blank style=\"text-decoration: none;\"><h4 class=title>escidoc-oaiprovider</h4></a><button class=copy-btn value=https://github.com/MPDL/escidoc-oaiprovider style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>These is the actual implementation of the eSciDocOAIProvider It includes the proai-1.1.3.jar File from Fedora The EscidocOAIDriver class implements the OAIDriver interface from fedora</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">escidoc-oaiprovider</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>These is the actual implementation of the eSciDocOAIProvider It includes the proai-1.1.3.jar File from Fedora The EscidocOAIDriver class implements the OAIDriver interface from fedora</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/escidoc-oaiprovider target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-08-2016\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/escidoc-oaiprovider/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/escidoc-oaiprovider/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/escidoc-oaiprovider/master/README target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/escidoc-oaiprovider/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "escidoc-oaiprovider",
        "recently_updated": 2664,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "These is the actual implementation of the eSciDocOAIProvider\nIt includes the proai-1.1.3.jar File from Fedora\nThe EscidocOAIDriver class implements the OAIDriver interface from fedora\n \n",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/bio-formats-service",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/bio-formats-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/bio-formats-service target=_blank style=\"text-decoration: none;\"><h4 class=title>bio-formats-service</h4></a><button class=copy-btn value=https://github.com/MPDL/bio-formats-service style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">bio-formats-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/bio-formats-service target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 30-09-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/bio-formats-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/bio-formats-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/bio-formats-service/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/bio-formats-service/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/bio-formats-service><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/bio-formats-service target=_blank style=\"text-decoration: none;\"><h4 class=title>bio-formats-service</h4></a><button class=copy-btn value=https://github.com/MPDL/bio-formats-service style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">bio-formats-service</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/bio-formats-service target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 30-09-2014\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/bio-formats-service/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/bio-formats-service/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/bio-formats-service/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/bio-formats-service/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "bio-formats-service",
        "recently_updated": 3344,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "No description available yet.",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/pyimeji",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/pyimeji><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/pyimeji target=_blank style=\"text-decoration: none;\"><h4 class=title>pyimeji</h4></a><button class=copy-btn value=https://github.com/MPDL/pyimeji style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>python wrapper for the imeji API</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">pyimeji</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>python wrapper for the imeji API</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/pyimeji target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 04-05-2017\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/pyimeji/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/pyimeji/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/pyimeji/master/README.rst target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">How to use it</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>python /pyimeji/MPDL_pyimeji/pyimeji-master/pyimeji/cli.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/pyimeji/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/pyimeji><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/pyimeji target=_blank style=\"text-decoration: none;\"><h4 class=title>pyimeji</h4></a><button class=copy-btn value=https://github.com/MPDL/pyimeji style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>python wrapper for the imeji API</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">pyimeji</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>python wrapper for the imeji API</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/pyimeji target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 04-05-2017\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/pyimeji/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/pyimeji/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/pyimeji/master/README.rst target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">How to use it</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>python /pyimeji/MPDL_pyimeji/pyimeji-master/pyimeji/cli.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/pyimeji/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "pyimeji",
        "recently_updated": 2397,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "python"
        ],
        "description": "python wrapper for the imeji API",
        "license": true,
        "licenseName": "Apache License 2.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/FirstAuthor",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/FirstAuthor><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/FirstAuthor target=_blank style=\"text-decoration: none;\"><h4 class=title>FirstAuthor</h4></a><button class=copy-btn value=https://github.com/MPDL/FirstAuthor style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">FirstAuthor</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/FirstAuthor target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 29-09-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/FirstAuthor/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/FirstAuthor/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/FirstAuthor/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/FirstAuthor><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/FirstAuthor target=_blank style=\"text-decoration: none;\"><h4 class=title>FirstAuthor</h4></a><button class=copy-btn value=https://github.com/MPDL/FirstAuthor style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">FirstAuthor</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/FirstAuthor target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 29-09-2022\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/FirstAuthor/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/FirstAuthor/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/FirstAuthor/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "FirstAuthor",
        "recently_updated": 423,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "No description available yet.",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/ebooks-reader",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/ebooks-reader><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/ebooks-reader target=_blank style=\"text-decoration: none;\"><h4 class=title>ebooks-reader</h4></a><button class=copy-btn value=https://github.com/MPDL/ebooks-reader style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This project is an eBooks reader for the eBook resources within Max Planck Society's intranet. Currently, we provide accesses to 3 collections on https://ebooks.mpdl.mpg.de/ebooks/, which are &quot;Springer eBooks 2005-&quot;, &quot;Springer BookArchives -2004&quot; and &quot;OAPEN&quot;, respectively.</p><p>It is worth mentioning that this project is based on the open-source project MuPDF(see the source link on https://mupdf.com/), which is a very good base PDF reader.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">ebooks-reader</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This project is an eBooks reader for the eBook resources within Max Planck Society's intranet. Currently, we provide accesses to 3 collections on https://ebooks.mpdl.mpg.de/ebooks/, which are &quot;Springer eBooks 2005-&quot;, &quot;Springer BookArchives -2004&quot; and &quot;OAPEN&quot;, respectively.</p></p><p>It is worth mentioning that this project is based on the open-source project MuPDF(see the source link on https://mupdf.com/), which is a very good base PDF reader.</p></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/ebooks-reader target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 21-02-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/ebooks-reader/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/ebooks-reader/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/ebooks-reader/master/README target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/agpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU Affero General Public License v3.0\" alt=\"License: GNU Affero General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/ebooks-reader><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/ebooks-reader target=_blank style=\"text-decoration: none;\"><h4 class=title>ebooks-reader</h4></a><button class=copy-btn value=https://github.com/MPDL/ebooks-reader style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>This project is an eBooks reader for the eBook resources within Max Planck Society's intranet. Currently, we provide accesses to 3 collections on https://ebooks.mpdl.mpg.de/ebooks/, which are &quot;Springer eBooks 2005-&quot;, &quot;Springer BookArchives -2004&quot; and &quot;OAPEN&quot;, respectively.</p><p>It is worth mentioning that this project is based on the open-source project MuPDF(see the source link on https://mupdf.com/), which is a very good base PDF reader.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">ebooks-reader</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>This project is an eBooks reader for the eBook resources within Max Planck Society's intranet. Currently, we provide accesses to 3 collections on https://ebooks.mpdl.mpg.de/ebooks/, which are &quot;Springer eBooks 2005-&quot;, &quot;Springer BookArchives -2004&quot; and &quot;OAPEN&quot;, respectively.</p></p><p>It is worth mentioning that this project is based on the open-source project MuPDF(see the source link on https://mupdf.com/), which is a very good base PDF reader.</p></span></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/ebooks-reader target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 21-02-2020\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/ebooks-reader/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/ebooks-reader/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/ebooks-reader/master/README target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/agpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU Affero General Public License v3.0\" alt=\"License: GNU Affero General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "ebooks-reader",
        "recently_updated": 1374,
        "stargazersCount": 1,
        "releases": 0,
        "languages": [
            "java",
            "makefile"
        ],
        "description": "This project is an eBooks reader for the eBook resources within Max Planck Society's intranet. Currently, we provide accesses to 3 collections\non https://ebooks.mpdl.mpg.de/ebooks/, which are \"Springer eBooks 2005-\", \"Springer BookArchives -2004\" and \"OAPEN\", respectively.\n\nIt is worth mentioning that this project is based on the open-source project MuPDF(see the source link on https://mupdf.com/), which is a very good base PDF reader.",
        "license": true,
        "licenseName": "GNU Affero General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/imeji",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/imeji><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>A lightweight research data repository</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>A lightweight research data repository</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #6da862;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-11-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>11</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"Last release: imeji-4.9.14\" alt=\"Last release: imeji-4.9.14\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>1</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji/dev/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h2>Download and Installation</h2><p>Brief <a href=https://github.com/MPDL/imeji/wiki/Installation target=_blank>installation instructions</a> can be found in the wiki.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji/releases target=_blank class=repo-icon><img src=repo_icons/download.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Download alt=Download></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/imeji><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/imeji target=_blank style=\"text-decoration: none;\"><h4 class=title>imeji</h4></a><button class=copy-btn value=https://github.com/MPDL/imeji style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>A lightweight research data repository</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">imeji</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>A lightweight research data repository</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/imeji target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #6da862;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 17-11-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/imeji/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>11</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"Last release: imeji-4.9.14\" alt=\"Last release: imeji-4.9.14\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/imeji/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>1</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/imeji/dev/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h2>Download and Installation</h2><p>Brief <a href=https://github.com/MPDL/imeji/wiki/Installation target=_blank>installation instructions</a> can be found in the wiki.</p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/imeji/releases target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/download.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Download alt=Download></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "imeji",
        "recently_updated": 9,
        "stargazersCount": 11,
        "releases": 1,
        "languages": [
            "java",
            "javascript",
            "html",
            "css",
            "shell"
        ],
        "description": "A lightweight research data repository",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": true,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/IngeLoadTests",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/IngeLoadTests><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/IngeLoadTests target=_blank style=\"text-decoration: none;\"><h4 class=title>IngeLoadTests</h4></a><button class=copy-btn value=https://github.com/MPDL/IngeLoadTests style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">IngeLoadTests</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/IngeLoadTests target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 08-05-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/IngeLoadTests/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/IngeLoadTests/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/IngeLoadTests/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/IngeLoadTests><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/IngeLoadTests target=_blank style=\"text-decoration: none;\"><h4 class=title>IngeLoadTests</h4></a><button class=copy-btn value=https://github.com/MPDL/IngeLoadTests style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>No description available yet.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">IngeLoadTests</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>No description available yet.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/IngeLoadTests target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 08-05-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/IngeLoadTests/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/IngeLoadTests/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/IngeLoadTests/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "IngeLoadTests",
        "recently_updated": 2028,
        "stargazersCount": 0,
        "releases": 0,
        "languages": null,
        "description": "No description available yet.",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/repo2docker",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/repo2docker><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/repo2docker target=_blank style=\"text-decoration: none;\"><h4 class=title>repo2docker</h4></a><button class=copy-btn value=https://github.com/MPDL/repo2docker style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Turn repositories into Jupyter-enabled Docker images</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">repo2docker</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Turn repositories into Jupyter-enabled Docker images</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/repo2docker target=_blank style=\"text-decoration: none;\"><img src=https://raw.githubusercontent.com/jupyterhub/repo2docker/8731ecf0967cc5fde028c456f2b92be651ebbc18/docs/source/_static/images/repo2docker.png alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #6da862;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-11-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/repo2docker/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/repo2docker/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/bsd-3-clause class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: BSD 3-Clause \" new&quot; or &quot;revised&quot; license&quot; alt=\"License: BSD 3-Clause \" new&quot; or &quot;revised&quot; license&quot;></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/docker.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Docker alt=Docker></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Docker</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/conda/py35-binder-dir/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/conda/py35-binder-dir/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/simple/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/simple/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/editable/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/editable/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/binder/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/binder/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/jupyter-stack/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/jupyter-stack/Dockerfile</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>This a quick guide to installing <code>repo2docker</code>, see our documentation for <a href=https://repo2docker.readthedocs.io/en/latest/install.html>a full guide</a>.</p><p>To install from PyPI:</p><pre><code class=language-bash>pip install jupyter-repo2docker\n</code></pre><p>To install from source:</p><pre><code class=language-bash>git clone https://github.com/jupyterhub/repo2docker.git\ncd repo2docker\npip install -e .\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/requirements.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Requirements alt=Requirements></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Requirements</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Docker to build &amp; run the repositories. The <a href=\"https://store.docker.com/search?type=edition&offering=community\">community edition</a> is recommended.</li><li>Python 3.6+.</li></ol><p>Supported on Linux and macOS. <a href=http://repo2docker.readthedocs.io/en/latest/install.html#note-about-windows-support>See documentation note about Windows support.</a></p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>The core feature of repo2docker is to fetch a git repository (from GitHub or locally), build a container image based on the specifications found in the repository &amp; optionally launch the container that you can use to explore the repository.</p><p><strong>Note that Docker needs to be running on your machine for this to work.</strong></p><p>Example:</p><pre><code class=language-bash>jupyter-repo2docker https://github.com/norvig/pytudes\n</code></pre><p>After building (it might take a while!), it should output in your terminal something like:</p><pre><code class=language-bash>    Copy/paste this URL into your browser when you connect for the first time,\n    to login with a token:\n        http://0.0.0.0:36511/?token=f94f8fabb92e22f5bfab116c382b4707fc2cade56ad1ace0\n</code></pre><p>If you copy paste that URL into your browser you will see a Jupyter Notebook with the contents of the repository you had just built!</p><p>For more information on how to use <code>repo2docker</code>, see the <a href=http://repo2docker.readthedocs.io/en/latest/usage.html>usage guide</a>.</p><hr><h3>How to use it</h3><p>python /repo2docker/MPDL_repo2docker/repo2docker-main/setup.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Documentation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://github.com/MPDL/repo2docker/tree/main/docs>https://github.com/MPDL/repo2docker/tree/main/docs</a></li><li><a href=http://repo2docker.readthedocs.io/ >http://repo2docker.readthedocs.io/</a></li><li><a href=https://repo2docker.readthedocs.io/ >https://repo2docker.readthedocs.io/</a></li></ul></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=language_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=language_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/repo2docker><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/repo2docker target=_blank style=\"text-decoration: none;\"><h4 class=title>repo2docker</h4></a><button class=copy-btn value=https://github.com/MPDL/repo2docker style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Turn repositories into Jupyter-enabled Docker images</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">repo2docker</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Turn repositories into Jupyter-enabled Docker images</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/repo2docker target=_blank style=\"text-decoration: none;\"><img src=https://raw.githubusercontent.com/jupyterhub/repo2docker/8731ecf0967cc5fde028c456f2b92be651ebbc18/docs/source/_static/images/repo2docker.png alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python script\" alt=\"Python script\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #6da862;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 10-11-2023\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/repo2docker/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/repo2docker/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/bsd-3-clause class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: BSD 3-Clause \" new&quot; or &quot;revised&quot; license&quot; alt=\"License: BSD 3-Clause \" new&quot; or &quot;revised&quot; license&quot;></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/docker.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Docker alt=Docker></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Docker</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/conda/py35-binder-dir/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/conda/py35-binder-dir/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/simple/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/simple/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/editable/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/editable/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/binder/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/binder-dir/binder/Dockerfile</a></li><li><a href=https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/jupyter-stack/Dockerfile>https://raw.githubusercontent.com/MPDL/repo2docker/main/tests/dockerfile/jupyter-stack/Dockerfile</a></li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>This a quick guide to installing <code>repo2docker</code>, see our documentation for <a href=https://repo2docker.readthedocs.io/en/latest/install.html>a full guide</a>.</p><p>To install from PyPI:</p><pre><code class=language-bash>pip install jupyter-repo2docker\n</code></pre><p>To install from source:</p><pre><code class=language-bash>git clone https://github.com/jupyterhub/repo2docker.git\ncd repo2docker\npip install -e .\n</code></pre></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/requirements.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Requirements alt=Requirements></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Requirements</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ol><li>Docker to build &amp; run the repositories. The <a href=\"https://store.docker.com/search?type=edition&offering=community\">community edition</a> is recommended.</li><li>Python 3.6+.</li></ol><p>Supported on Linux and macOS. <a href=http://repo2docker.readthedocs.io/en/latest/install.html#note-about-windows-support>See documentation note about Windows support.</a></p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>The core feature of repo2docker is to fetch a git repository (from GitHub or locally), build a container image based on the specifications found in the repository &amp; optionally launch the container that you can use to explore the repository.</p><p><strong>Note that Docker needs to be running on your machine for this to work.</strong></p><p>Example:</p><pre><code class=language-bash>jupyter-repo2docker https://github.com/norvig/pytudes\n</code></pre><p>After building (it might take a while!), it should output in your terminal something like:</p><pre><code class=language-bash>    Copy/paste this URL into your browser when you connect for the first time,\n    to login with a token:\n        http://0.0.0.0:36511/?token=f94f8fabb92e22f5bfab116c382b4707fc2cade56ad1ace0\n</code></pre><p>If you copy paste that URL into your browser you will see a Jupyter Notebook with the contents of the repository you had just built!</p><p>For more information on how to use <code>repo2docker</code>, see the <a href=http://repo2docker.readthedocs.io/en/latest/usage.html>usage guide</a>.</p><hr><h3>How to use it</h3><p>python /repo2docker/MPDL_repo2docker/repo2docker-main/setup.py</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Documentation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://github.com/MPDL/repo2docker/tree/main/docs>https://github.com/MPDL/repo2docker/tree/main/docs</a></li><li><a href=http://repo2docker.readthedocs.io/ >http://repo2docker.readthedocs.io/</a></li><li><a href=https://repo2docker.readthedocs.io/ >https://repo2docker.readthedocs.io/</a></li></ul></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/shell.svg alt=shell class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Shell><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/r.svg alt=r class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=R></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "repo2docker",
        "recently_updated": 16,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "python",
            "shell",
            "nix",
            "julia",
            "dockerfile",
            "r",
            "makefile"
        ],
        "description": "Turn repositories into Jupyter-enabled Docker images",
        "license": true,
        "licenseName": "BSD 3-Clause \"New\" or \"Revised\" License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": true,
        "installation": true,
        "requirement": true,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/LabCam_imeji",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/LabCam_imeji><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam_imeji target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam_imeji</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam_imeji style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Transfer your research</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam_imeji</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Transfer your research</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam_imeji target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 04-07-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam_imeji/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>4</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam_imeji/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam_imeji/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h2>The LabCam Application</h2><p>LabCam enables to easily capture scientific research data like photos or videos and various metadata and automatically transfer them to an image repository. The App is for scientists and scientific assistants who collect their research data with mobile devices.</p><p>The Application relieves the documentation of research data by providing two different ways for uploading: manual and automatically. The manual upload is recommendable for a small amount of pictures and the automatic upload is for large quantities of data.</p><p>LabCam is applicable by creating an account by an imeji instance like gluons or by downloading imeji. Log into LabCam is either with username and password or by scanning your QR-Code.</p><h2>Install the App</h2><p>For working with LabCam you have to create a personal account by an imeji instance like gluons. If you are not registred yet, please follow this <a href=https://gluons.mpdl.mpg.de/imeji/register target=_blank title=gluons>link </a> for registration.</p><p>LabCam is available in the <a href=\"https://play.google.com/store/apps/details?id=example.com.mpdlcamera&hl=de\" target=_blank title=\"Google Play Store\">Google Play Store </a>. Please follow this link and you can install LabCam on your mobile device. Be aware that LabCam needs at least Android Version 4.3</p><p>You do not have a personal account yet? Go to our <a href=http://labcam.mpdl.mpg.de/install-mpdl-cam/ target=_blank title=Testaccount>webpage </a> and get started with the test account. Just follow the intruction for installing the App and scan the QR-Code for Login. Be aware that the pictures are not durably stored in the test Collection.</p><h2>Download</h2><p>Watch us on <a href=https://github.com/MPDL/MPDL-Cam.git target=_blank class=gitwatch>Github</a>. Download this project in either zip or tar formats.</p><p>You can also clone the project with <a href=http://git-scm.com target=_blank>Git</a> by running:<pre>$ git clone https://github.com/MPDL/MPDL-Cam.git</pre></p><h2>Contact and Support</h2><p>Get more informationen about LabCam on our <a href=http://labcam.mpdl.mpg.de/ target=_blank title=LabCam>webpage. </a></p><p>Feel free to contact us: <a href=mailto:labcam-support@mpdl.mpg.de title=\"contact to labcam\">labcam-support@mpdl.mpg.de</a></p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><h2>The LabCam Application</h2><p>LabCam enables to easily capture scientific research data like photos or videos and various metadata and automatically transfer them to an image repository. The App is for scientists and scientific assistants who collect their research data with mobile devices.</p><p>The Application relieves the documentation of research data by providing two different ways for uploading: manual and automatically. The manual upload is recommendable for a small amount of pictures and the automatic upload is for large quantities of data.</p><p>LabCam is applicable by creating an account by an imeji instance like gluons or by downloading imeji. Log into LabCam is either with username and password or by scanning your QR-Code.</p><h2>Install the App</h2><p>For working with LabCam you have to create a personal account by an imeji instance like gluons. If you are not registred yet, please follow this <a href=https://gluons.mpdl.mpg.de/imeji/register target=_blank title=gluons>link </a> for registration.</p><p>LabCam is available in the <a href=\"https://play.google.com/store/apps/details?id=example.com.mpdlcamera&hl=de\" target=_blank title=\"Google Play Store\">Google Play Store </a>. Please follow this link and you can install LabCam on your mobile device. Be aware that LabCam needs at least Android Version 4.3</p><p>You do not have a personal account yet? Go to our <a href=http://labcam.mpdl.mpg.de/install-mpdl-cam/ target=_blank title=Testaccount>webpage </a> and get started with the test account. Just follow the intruction for installing the App and scan the QR-Code for Login. Be aware that the pictures are not durably stored in the test Collection.</p><h2>Download</h2><p>Watch us on <a href=https://github.com/MPDL/MPDL-Cam.git target=_blank class=gitwatch>Github</a>. Download this project in either zip or tar formats.</p><p>You can also clone the project with <a href=http://git-scm.com target=_blank>Git</a> by running:<pre>$ git clone https://github.com/MPDL/MPDL-Cam.git</pre></p><h2>Contact and Support</h2><p>Get more informationen about LabCam on our <a href=http://labcam.mpdl.mpg.de/ target=_blank title=LabCam>webpage. </a></p><p>Feel free to contact us: <a href=mailto:labcam-support@mpdl.mpg.de title=\"contact to labcam\">labcam-support@mpdl.mpg.de</a></p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/LabCam_imeji/wiki target=_blank class=repo-icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/LabCam_imeji><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/LabCam_imeji target=_blank style=\"text-decoration: none;\"><h4 class=title>LabCam_imeji</h4></a><button class=copy-btn value=https://github.com/MPDL/LabCam_imeji style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Transfer your research</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">LabCam_imeji</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Transfer your research</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/LabCam_imeji target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 04-07-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/LabCam_imeji/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>4</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/LabCam_imeji/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/LabCam_imeji/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/mit class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: MIT License\" alt=\"License: MIT License\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h2>The LabCam Application</h2><p>LabCam enables to easily capture scientific research data like photos or videos and various metadata and automatically transfer them to an image repository. The App is for scientists and scientific assistants who collect their research data with mobile devices.</p><p>The Application relieves the documentation of research data by providing two different ways for uploading: manual and automatically. The manual upload is recommendable for a small amount of pictures and the automatic upload is for large quantities of data.</p><p>LabCam is applicable by creating an account by an imeji instance like gluons or by downloading imeji. Log into LabCam is either with username and password or by scanning your QR-Code.</p><h2>Install the App</h2><p>For working with LabCam you have to create a personal account by an imeji instance like gluons. If you are not registred yet, please follow this <a href=https://gluons.mpdl.mpg.de/imeji/register target=_blank title=gluons>link </a> for registration.</p><p>LabCam is available in the <a href=\"https://play.google.com/store/apps/details?id=example.com.mpdlcamera&hl=de\" target=_blank title=\"Google Play Store\">Google Play Store </a>. Please follow this link and you can install LabCam on your mobile device. Be aware that LabCam needs at least Android Version 4.3</p><p>You do not have a personal account yet? Go to our <a href=http://labcam.mpdl.mpg.de/install-mpdl-cam/ target=_blank title=Testaccount>webpage </a> and get started with the test account. Just follow the intruction for installing the App and scan the QR-Code for Login. Be aware that the pictures are not durably stored in the test Collection.</p><h2>Download</h2><p>Watch us on <a href=https://github.com/MPDL/MPDL-Cam.git target=_blank class=gitwatch>Github</a>. Download this project in either zip or tar formats.</p><p>You can also clone the project with <a href=http://git-scm.com target=_blank>Git</a> by running:<pre>$ git clone https://github.com/MPDL/MPDL-Cam.git</pre></p><h2>Contact and Support</h2><p>Get more informationen about LabCam on our <a href=http://labcam.mpdl.mpg.de/ target=_blank title=LabCam>webpage. </a></p><p>Feel free to contact us: <a href=mailto:labcam-support@mpdl.mpg.de title=\"contact to labcam\">labcam-support@mpdl.mpg.de</a></p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/help.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Help alt=Help></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Help</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3>Support</h3><h2>The LabCam Application</h2><p>LabCam enables to easily capture scientific research data like photos or videos and various metadata and automatically transfer them to an image repository. The App is for scientists and scientific assistants who collect their research data with mobile devices.</p><p>The Application relieves the documentation of research data by providing two different ways for uploading: manual and automatically. The manual upload is recommendable for a small amount of pictures and the automatic upload is for large quantities of data.</p><p>LabCam is applicable by creating an account by an imeji instance like gluons or by downloading imeji. Log into LabCam is either with username and password or by scanning your QR-Code.</p><h2>Install the App</h2><p>For working with LabCam you have to create a personal account by an imeji instance like gluons. If you are not registred yet, please follow this <a href=https://gluons.mpdl.mpg.de/imeji/register target=_blank title=gluons>link </a> for registration.</p><p>LabCam is available in the <a href=\"https://play.google.com/store/apps/details?id=example.com.mpdlcamera&hl=de\" target=_blank title=\"Google Play Store\">Google Play Store </a>. Please follow this link and you can install LabCam on your mobile device. Be aware that LabCam needs at least Android Version 4.3</p><p>You do not have a personal account yet? Go to our <a href=http://labcam.mpdl.mpg.de/install-mpdl-cam/ target=_blank title=Testaccount>webpage </a> and get started with the test account. Just follow the intruction for installing the App and scan the QR-Code for Login. Be aware that the pictures are not durably stored in the test Collection.</p><h2>Download</h2><p>Watch us on <a href=https://github.com/MPDL/MPDL-Cam.git target=_blank class=gitwatch>Github</a>. Download this project in either zip or tar formats.</p><p>You can also clone the project with <a href=http://git-scm.com target=_blank>Git</a> by running:<pre>$ git clone https://github.com/MPDL/MPDL-Cam.git</pre></p><h2>Contact and Support</h2><p>Get more informationen about LabCam on our <a href=http://labcam.mpdl.mpg.de/ target=_blank title=LabCam>webpage. </a></p><p>Feel free to contact us: <a href=mailto:labcam-support@mpdl.mpg.de title=\"contact to labcam\">labcam-support@mpdl.mpg.de</a></p></div></div></div></div><div class=icon-wrapper><div class=icon><a href=https://github.com/MPDL/LabCam_imeji/wiki target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></a></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "LabCam_imeji",
        "recently_updated": 1971,
        "stargazersCount": 4,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "Transfer your research",
        "license": true,
        "licenseName": "MIT License",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": true,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/r2-ui-prototype",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/r2-ui-prototype><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/r2-ui-prototype target=_blank style=\"text-decoration: none;\"><h4 class=title>r2-ui-prototype</h4></a><button class=copy-btn value=https://github.com/MPDL/r2-ui-prototype style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>r2d2-ui-prototype</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">r2-ui-prototype</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>r2d2-ui-prototype</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/r2-ui-prototype target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 16-02-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/r2-ui-prototype/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/r2-ui-prototype/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/r2-ui-prototype/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>npm install\n</code></pre><pre><code>npm run serve\n</code></pre><pre><code>npm run build\n</code></pre><pre><code>npm run lint\n</code></pre><p>See <a href=https://cli.vuejs.org/config/ >Configuration Reference</a>.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/r2-ui-prototype><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/r2-ui-prototype target=_blank style=\"text-decoration: none;\"><h4 class=title>r2-ui-prototype</h4></a><button class=copy-btn value=https://github.com/MPDL/r2-ui-prototype style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>r2d2-ui-prototype</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">r2-ui-prototype</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>r2d2-ui-prototype</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/r2-ui-prototype target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 16-02-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/r2-ui-prototype/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/r2-ui-prototype/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/r2-ui-prototype/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/gpl-3.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: GNU General Public License v3.0\" alt=\"License: GNU General Public License v3.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code>npm install\n</code></pre><pre><code>npm run serve\n</code></pre><pre><code>npm run build\n</code></pre><pre><code>npm run lint\n</code></pre><p>See <a href=https://cli.vuejs.org/config/ >Configuration Reference</a>.</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "r2-ui-prototype",
        "recently_updated": 1013,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript",
            "scss",
            "vue",
            "html"
        ],
        "description": "r2d2-ui-prototype",
        "license": true,
        "licenseName": "GNU General Public License v3.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/joai-project",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/joai-project><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/joai-project target=_blank style=\"text-decoration: none;\"><h4 class=title>joai-project</h4></a><button class=copy-btn value=https://github.com/MPDL/joai-project style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>jOAI is an OAI-PMH data provider and harvester Java web application</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">joai-project</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>jOAI is an OAI-PMH data provider and harvester Java web application</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/joai-project target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=language_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 13-08-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/joai-project/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/joai-project/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/joai-project/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=repo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Please see the following documentation for jOAI:</p><ul><li><a href=web/docs/INSTALL.txt>Installation instructions</a> - Install the pre-compiled binary WAR file to Tomcat (<a href=https://github.com/NCAR/joai-project/releases/latest>get the latest release</a>)</li><li><a href=web/docs/BUILD_INSTRUCTIONS.txt>Build instructions</a> - Build the web application from source</li><li><a href=web/docs/CHANGES.txt>Changes</a> - View changes in the latest software release</li><li><a href=https://uc.dls.ucar.edu/joai/docs/provider.jsp>Data provider documentation</a> - Set up and configure the data provider</li><li><a href=https://uc.dls.ucar.edu/joai/docs/harvester.jsp>Harvester documentation</a> - Set up and configure the harvester tool</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Documentation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://github.com/MPDL/joai-project/tree/master/web/docs>https://github.com/MPDL/joai-project/tree/master/web/docs</a></li><li><a href=https://github.com/MPDL/joai-project/wiki>https://github.com/MPDL/joai-project/wiki</a></li></ul></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=language_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=language_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=language_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/joai-project><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/joai-project target=_blank style=\"text-decoration: none;\"><h4 class=title>joai-project</h4></a><button class=copy-btn value=https://github.com/MPDL/joai-project style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>jOAI is an OAI-PMH data provider and harvester Java web application</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">joai-project</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>jOAI is an OAI-PMH data provider and harvester Java web application</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/joai-project target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=grey-color-svg style=display:flex; data-toggle=tooltip data-placement=left title=\"Python not found\" alt=\"Python not found\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=repo-type class=repo-type></div><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 13-08-2018\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/joai-project/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/joai-project/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/joai-project/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div data-url=https://api.github.com/licenses/apache-2.0 class=\"icon-wrapper ref-license\"><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/license.png class=repo-icon data-toggle=tooltip data-placement=bottom title=\"License: Apache License 2.0\" alt=\"License: Apache License 2.0\"></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">License</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><h3 class=ref-name></h3><span class=ref-description-aux><h4>Description:</h4><p class=ref-description style=\"text-align: justify;\">Loading...</p><h4>Permissions:</h4><div class=ref-permissions><ul><li>Loading...</li></ul></div><h4>Conditions:</h4><div class=ref-conditions><ul><li>Loading...</li></ul></div><h4>Limitations:</h4><div class=ref-limitations><ul><li>Loading...</li></ul></div></span></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Please see the following documentation for jOAI:</p><ul><li><a href=web/docs/INSTALL.txt>Installation instructions</a> - Install the pre-compiled binary WAR file to Tomcat (<a href=https://github.com/NCAR/joai-project/releases/latest>get the latest release</a>)</li><li><a href=web/docs/BUILD_INSTRUCTIONS.txt>Build instructions</a> - Build the web application from source</li><li><a href=web/docs/CHANGES.txt>Changes</a> - View changes in the latest software release</li><li><a href=https://uc.dls.ucar.edu/joai/docs/provider.jsp>Data provider documentation</a> - Set up and configure the data provider</li><li><a href=https://uc.dls.ucar.edu/joai/docs/harvester.jsp>Harvester documentation</a> - Set up and configure the harvester tool</li></ul></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/documentation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Documentation alt=Documentation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Documentation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><ul><li><a href=https://github.com/MPDL/joai-project/tree/master/web/docs>https://github.com/MPDL/joai-project/tree/master/web/docs</a></li><li><a href=https://github.com/MPDL/joai-project/wiki>https://github.com/MPDL/joai-project/wiki</a></li></ul></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/html.svg alt=html class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Html><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/css.svg alt=css class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Css><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/python.svg alt=python class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Python></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "joai-project",
        "recently_updated": 1931,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java",
            "xslt",
            "javascript",
            "html",
            "css",
            "python"
        ],
        "description": "jOAI is an OAI-PMH data provider and harvester Java web application",
        "license": true,
        "licenseName": "Apache License 2.0",
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": false,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": true,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/idRestService",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/idRestService><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/idRestService target=_blank style=\"text-decoration: none;\"><h4 class=title>idRestService</h4></a><button class=copy-btn value=https://github.com/MPDL/idRestService style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Sequential incrementing REST-ID Service (NodeJS &amp; PostgreSQL based)</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">idRestService</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Sequential incrementing REST-ID Service (NodeJS &amp; PostgreSQL based)</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/idRestService target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 02-03-2017\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/idRestService/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/idRestService/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/idRestService/master/readme.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Get the current version.</p><p>Create a database</p><pre><code class=language-sql>CREATE DATABASE id_generator\n  WITH OWNER = myowner\n       ENCODING = 'UTF8'\n       TABLESPACE = pg_default\n       CONNECTION LIMIT = -1;\n</code></pre><p>Create a table (column must be named &quot;currentid&quot;)</p><pre><code class=language-sql>CREATE TABLE id\n(\n  currentid integer\n)\nWITH (\n  OIDS=FALSE\n);\nALTER TABLE id\n  OWNER TO myowner;\n</code></pre><p>Add a value into your created table</p><pre><code class=language-sql>INSERT INTO id VALUES (1);\n</code></pre><p>Adjust config.json to fit your db configuration</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code class=language-sh>$ node idServer.js\n</code></pre><p>Go to your webbrowser and call localhost:yourport/id to get the next id and increment the db entry The db pool is set to 1 so no concurrency should be possible</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/idRestService><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/idRestService target=_blank style=\"text-decoration: none;\"><h4 class=title>idRestService</h4></a><button class=copy-btn value=https://github.com/MPDL/idRestService style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Sequential incrementing REST-ID Service (NodeJS &amp; PostgreSQL based)</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">idRestService</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Sequential incrementing REST-ID Service (NodeJS &amp; PostgreSQL based)</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/idRestService target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 02-03-2017\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/idRestService/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/idRestService/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/idRestService/master/readme.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Get the current version.</p><p>Create a database</p><pre><code class=language-sql>CREATE DATABASE id_generator\n  WITH OWNER = myowner\n       ENCODING = 'UTF8'\n       TABLESPACE = pg_default\n       CONNECTION LIMIT = -1;\n</code></pre><p>Create a table (column must be named &quot;currentid&quot;)</p><pre><code class=language-sql>CREATE TABLE id\n(\n  currentid integer\n)\nWITH (\n  OIDS=FALSE\n);\nALTER TABLE id\n  OWNER TO myowner;\n</code></pre><p>Add a value into your created table</p><pre><code class=language-sql>INSERT INTO id VALUES (1);\n</code></pre><p>Adjust config.json to fit your db configuration</p></div></div></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/usage.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Usage alt=Usage></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Usage</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><pre><code class=language-sh>$ node idServer.js\n</code></pre><p>Go to your webbrowser and call localhost:yourport/id to get the next id and increment the db entry The db pool is set to 1 so no concurrency should be possible</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/javascript.svg alt=javascript class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Javascript></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "idRestService",
        "recently_updated": 2460,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "javascript"
        ],
        "description": "Sequential incrementing REST-ID Service (NodeJS & PostgreSQL based)",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": true,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    },
    {
        "id": "https://github.com/MPDL/dataverse-uploader",
        "html_card": "<article class=soca-card id=https://github.com/MPDL/dataverse-uploader><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/dataverse-uploader target=_blank style=\"text-decoration: none;\"><h4 class=title>dataverse-uploader</h4></a><button class=copy-btn value=https://github.com/MPDL/dataverse-uploader style=\"background:url('repo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Upload local folder/directory trees to Dataverse or Clowder repositories.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">dataverse-uploader</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Upload local folder/directory trees to Dataverse or Clowder repositories.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/dataverse-uploader target=_blank style=\"text-decoration: none;\"><img src=img/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 27-10-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/dataverse-uploader/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/dataverse-uploader/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=repo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/dataverse-uploader/master/README.md target=_blank class=repo-icon><img src=repo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=repo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Build:</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=language_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div></article>",
        "html_card_embedded": "<article class=soca-card id=https://github.com/MPDL/dataverse-uploader><div class=card-row><div class=card-col><div class=flex-horizontal><a href=https://github.com/MPDL/dataverse-uploader target=_blank style=\"text-decoration: none;\"><h4 class=title>dataverse-uploader</h4></a><button class=copy-btn value=https://github.com/MPDL/dataverse-uploader style=\"background:url('https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/copy.svg')transparent;background-repeat:no-repeat;background-size:auto;\" data-toggle=tooltip data-placement=right title=\"Copy card as embbeded HTML\"></button></div><div class=description><span><p>Upload local folder/directory trees to Dataverse or Clowder repositories.</p></span><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">dataverse-uploader</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p><span><p>Upload local folder/directory trees to Dataverse or Clowder repositories.</p></span></p></div></div></div></div></div><div><div style=\"min-height: 6rem;display: flex;align-items: center;justify-content: center;\"><a href=https://github.com/MPDL/dataverse-uploader target=_blank style=\"text-decoration: none;\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsimg/github-default.svg alt=repo-logo class=repo-logo></a></div><div class=\"flex-horizontal float-right\"><div class=recently-updated style=\"background-color: #a86262;\" data-toggle=tooltip data-placement=right title=\"Last updated on: 27-10-2021\"></div></div><div class=\"flex-horizontal float-right\" style=\"margin-top: 0.3rem;\" data-toggle=tooltip data-placement=right title=Stars alt=Stars><a href=https://github.com/MPDL/dataverse-uploader/stargazers target=_blank class=\"flex-horizontal float-right\" style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/star.png alt=stars class=repo-icon></a></div><div data-toggle=tooltip data-placement=right title=\"No releases yet\" alt=\"No releases yet\" class=\"flex-horizontal float-right\"><a href=https://github.com/MPDL/dataverse-uploader/releases target=_blank class=flex-horizontal style=\"text-decoration: none;\"><b>0</b><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/releases.png alt=releases class=repo-icon></a></div></div></div><div class=card-row><div class=card-col><div class=\"flex-horizontal ref-repo-icons\"><div class=icon-wrapper><div class=icon><a href=https://raw.githubusercontent.com/MPDL/dataverse-uploader/master/README.md target=_blank class=repo-icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/readme.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Readme alt=Readme></a></div></div><div class=icon-wrapper><div class=icon><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetsrepo_icons/installation.png class=repo-icon data-toggle=tooltip data-placement=bottom title=Installation alt=Installation></div><div class=modal><div class=modal-content><span class=close>&times;</span><span style=display:flex;><h2 style=\"margin-bottom: 1rem;\">Installation</h2></span><div style=\"margin-bottom: 1rem; overflow: auto;\"><p>Build:</p></div></div></div></div></div></div><div><div class=\"flex-horizontal float-right\"><img src=https://github.com/oeg-upm/soca/tree/main/src/soca/assetslanguage_icons/java.svg alt=java class=\"repo-icon grey-color-svg\" data-toggle=tooltip data-placement=bottom title=Java></div></div></div><script src=https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js></script><script src=https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js></script><script>\n$(document).ready(function(){\n    $('[data-toggle=\"tooltip\"]').tooltip();\n});\n</script><script>\nbtns = document.getElementsByClassName('copy-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.html_card_embedded);\n                break;\n            }\n        }\n    });\n}\n\nbtns = document.getElementsByClassName('copy-citation-btn');\nfor (let index = 0; index < btns.length; index++) {\n    const element = btns[index];\n    element.addEventListener('click', function () {\n        console.log('copy citation btn!');\n        for (let index = 0; index < cards.length; index++) {\n            const card = cards[index];\n            if(card.id == $(this).val()){\n                navigator.clipboard.writeText(card.citationText);\n                break;\n            }\n        }\n    });\n}</script><script>function add_modals() {\n    cards_icons_list = document.getElementsByClassName('ref-repo-icons');\n    for(const cards_icons of cards_icons_list){\n        for(const card_icon of cards_icons.children){\n            const icon = card_icon.getElementsByClassName('icon')[0];\n            const modal = card_icon.getElementsByClassName('modal')[0];\n            const modal_content = card_icon.getElementsByClassName('modal-content')[0];\n            const span_close = card_icon.getElementsByClassName('close')[0];\n            \n            if (modal != undefined){\n                icon.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n\n                });\n            }\n        }\n        \n        const license = cards_icons.getElementsByClassName('ref-license')[0];\n        if (license != undefined) {\n            license.addEventListener('click', () => { \n                getGithub(license);\n            });\n        }\n        \n    }\n    const descriptions = document.getElementsByClassName('description');\n    [].forEach.call(descriptions, function (description) {\n        if (isOverflown(description)) {\n            description.style.cursor=\"pointer\";\n            const modal = description.getElementsByClassName('modal')[0];\n            const modal_content = description.getElementsByClassName('modal-content')[0];\n            const span_close = description.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                description.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n        }\n    });\n    const ontologies = document.getElementsByClassName('m_ontology');\n    [].forEach.call(ontologies, function (ontology) {\n            const modal = ontology.getElementsByClassName('modal')[0];\n            const modal_content = ontology.getElementsByClassName('modal-content')[0];\n            const span_close = ontology.getElementsByClassName('close')[0];\n            if (modal != undefined){\n                ontology.addEventListener('click', () => { \n                    modal.classList.add('modal-on');\n                });\n                span_close.addEventListener('click', () => { \n                    modal.classList.remove('modal-on');\n                });\n                modal_content.addEventListener('click', (event) => { \n                    event.stopPropagation();\n                });\n                modal.addEventListener('click', (event) => { \n                    modal.classList.remove('modal-on');\n                    event.stopPropagation();\n                });\n            }\n    });\n    \n}\n\nfunction isOverflown(element) {\n    return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;\n}\n\nfunction addList(element, iterable){\n    var list = document.createElement(\"ol\");\n        for (let i of iterable) {\n            let item = document.createElement(\"li\");\n            item.innerHTML = i.charAt(0).toUpperCase() + i.slice(1);\n            list.appendChild(item);\n        }\n        element.innerHTML = '';\n        element.appendChild(list);\n}\n\nasync function getGithub(license){\n    if (license.dataset.url != 'None'){\n        const response = await fetch(license.dataset.url);\n        const response_aux = response.clone();\n        try {\n            const data =  await response.json();\n\n            const name = license.getElementsByClassName('ref-name')[0];\n            const description = license.getElementsByClassName('ref-description')[0];\n            const permissions = license.getElementsByClassName('ref-permissions')[0];\n            const conditions = license.getElementsByClassName('ref-conditions')[0];\n            const limitations = license.getElementsByClassName('ref-limitations')[0];\n\n            name.innerHTML = await data.name;\n            description.innerHTML = await data.description;\n\n            addList(permissions, data.permissions);\n            addList(conditions, data.conditions);\n            addList(limitations, data.limitations);\n\n        } catch (error) {\n            const description = license.getElementsByClassName('ref-description-aux')[0];\n            description.innerHTML = '<pre style=\"font-family: monospace;\">'+await response_aux.text()+'</pre>';\n        }\n    } else console.log('No license.');\n}add_modals();</script><style>.soca-card *{margin:0;box-sizing:border-box;color:#3e3e3e;font-family:Helvetica}\n.soca-card .copy-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .copy-citation-btn:active{position:relative;top:1px;background-color:#3e3e3e;color:#e0e0e0}\n.soca-card .copy-citation-btn{margin-left: 0.3rem;border:none;height:1.1rem;width:1rem;cursor:pointer;}\n.soca-card .tooltip{position:absolute;z-index:1070;display:block;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;opacity:0}\n.soca-card .tooltip.in{opacity:.9}\n.soca-card .tooltip.top{padding:5px 0;margin-top:-3px}\n.soca-card .tooltip.right{padding:0 5px;margin-left:3px}\n.soca-card .tooltip.bottom{padding:5px 0;margin-top:3px}\n.soca-card .tooltip.left{padding:0 5px;margin-left:-3px}\n.soca-card .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#3e3e3e}\n.soca-card .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#3e3e3e}\n.soca-card .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#3e3e3e}\n.soca-card .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#3e3e3e}\n.soca-card .tooltip-inner{max-width:200px;padding:3px 8px;color:#e0e0e0;text-align:center;background-color:#3e3e3e;border-radius:4px}\n.soca-card .tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}\n.soca-card {display: flex; flex-direction: column; justify-content: space-between; line-height: 1.42857143; margin: 0.2rem; min-width: 28rem; max-width: 28rem; min-height: 15rem; max-height: 20rem; padding: 1.3rem; border-radius: 19px; background-color: #e0e0e0; box-shadow: inset 5px 5px 10px #bebebe, inset -5px -5px 10px #ffffff;}\n.soca-card .repo-logo{width: 5.5rem;}\n.soca-card .description{text-align: justify; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 6; line-clamp: 6; -webkit-box-orient: vertical;}\n.soca-card .recently-updated{width: 1.4rem; height: 1.4rem; border-radius: 50%; margin-left: auto; margin-right: 0.1rem; background-color: #3e3e3e;}\n.soca-card .repo-icon{height: 1.1rem; margin-left: 0.2rem; margin-right: 0.2rem;}\n.soca-card .card-row{display: flex; flex-direction: row; justify-content: space-between;}\n.soca-card .card-col{width: 72%;}\n.soca-card .flex-horizontal{display: flex; align-items: center; flex-direction: row;}\n.soca-card .float-right{justify-content: flex-end;}\n.soca-card .grey-color-svg{filter: brightness(0) saturate(100%) invert(26%) sepia(0%) saturate(9%) hue-rotate(190deg) brightness(93%) contrast(100%);}\n.soca-card .title:hover{text-decoration: underline;}\n.soca-card .ref-repo-icons{flex-wrap: wrap;}\n.soca-card .icon-wrapper {cursor: pointer; width: 2rem; display: flex; align-items: center; justify-content: center;}\n.highlight *{font-family: monospace; font-size: large;}\n.modal {display: none;position: fixed;z-index: 1;padding-top: 20vh;left: 0;top: 0;width: 100%;height: 100%;overflow: auto;background-color: rgb(0,0,0);background-color: rgba(0,0,0,0.4); cursor: default;}\n.modal-content {background-color: #e0e0e0;margin: auto;padding: 20px;border: 0px;width: 90%;max-width: 40rem;border-radius: 1rem;}\n.modal-on{display: block;}\n.close {color: #3e3e3e;float: right;font-size: 28px;font-weight: bold;position: relative;bottom: 0.8rem;}\n.close:hover, .close:focus {  color: #000;  text-decoration: none; cursor: pointer;}\n.soca-card .repo-type{height: 1.4rem; margin-left: 0.2rem; margin-right: 0.2rem; cursor: pointer;}</style></article>",
        "name": "dataverse-uploader",
        "recently_updated": 760,
        "stargazersCount": 0,
        "releases": 0,
        "languages": [
            "java"
        ],
        "description": "Upload local folder/directory trees to Dataverse or Clowder repositories.",
        "license": false,
        "licenseName": null,
        "readmeUrl": true,
        "hasExecutableNotebook": false,
        "citation": null,
        "citationText": null,
        "paper": false,
        "hasBuildFile": false,
        "installation": true,
        "requirement": false,
        "usage": false,
        "help": false,
        "hasDocumentation": false,
        "hasIdentifier": false,
        "identifierLink": null,
        "repoStatus": false,
        "acknowledgement": false,
        "downloadUrl": false,
        "isOntology": false,
        "isWeb": false,
        "owner": "MPDL"
    }
]