npm

GitHub repoTwitter updatesNieuws en tutorialsVragen op StackOverflowStel een vraag op StackOverflowCommunity discussiesLicentieDOICitenpmDownloadExtensionsnpm installsmaster branch testsunstable branch tests

Graaftheorie (netwerk) bibliotheek voor visualisatie en analyse : https://js.cytoscape.org

Beschrijving

Cytoscape.js is een volledig uitgeruste grafentheoriebibliotheek. Moet u relationele gegevens modelleren en/of visualiseren, zoals biologische gegevens of sociale netwerken? Dan is Cytoscape.js precies wat u nodig hebt.

Cytoscape.js bevat een grafentheoretisch model en een optionele renderer om interactieve grafieken weer te geven. Deze bibliotheek is ontworpen om het programmeurs en wetenschappers zo gemakkelijk mogelijk te maken om grafentheorie in hun apps te gebruiken, of het nu voor server-side analyse in een Node.js-app is of voor een rijke gebruikersinterface.

U kunt met Cytoscape.js aan de slag met één regel:

var cy = cytoscape({ elements: myElements, container: myDiv });

Lees meer over de functies van Cytoscape.js door de documentatie te lezen.

Documentatie

U kunt de documentatie en downloads vinden op de projectwebsite.

Roadmap

Toekomstige versies van Cytoscape.js zijn gepland in de mijlpalen van de Github issue tracker. U kunt de mijlpalen gebruiken om te zien wat er momenteel gepland staat voor toekomstige releases.

Bijdragen aan Cytoscape.js

Wilt u een Cytoscape.js bijdrager worden? U kunt bijdragen in technische rollen (b.v. functies, testen) of niet-technische rollen (b.v. documentatie, outreach), afhankelijk van uw interesses. Neem contact met ons op door een GitHub discussie te posten.

Voor de techniek van het bijdragen van een pull-request, zie CONTRIBUTING.md.

Feature-releases worden maandelijks gemaakt, terwijl patch-releases wekelijks worden gemaakt. Dit zorgt voor snelle releases van eerste- en bijdragen van derden.

Citatie

Om Cytoscape.js in een paper te citeren, gelieve de Oxford Bioinformatics issue te citeren:

Cytoscape.js: a graph theory library for visualisation and analysis

Franz M, Lopes CT, Huck G, Dong Y, Sumer O, Bader GD

Bioinformatics (2016) 32 (2): 309-311 first published online September 28, 2015 doi:10.1093/bioinformatics/btv557 (PDF)

PubMed Abstract

Build dependencies

Installeer node en npm. Voer npm install uit voordat u npm run gebruikt.

Bouw instructies

Run npm run <target> in de console. De belangrijkste doelen zijn:

Bouwen:

  • build: doe alle builds van de bibliotheek (umd, min, umd, esm)
  • build:min : doe de unminified build met gebundelde afhankelijkheden (voor eenvoudige html pagina’s, goed voor beginners)
  • build:umd : doe de umd (cjs/amd/globals) build
  • build:esm : doe de esm (ES 2015 modules) build
  • clean : maak de build directory schoon
  • docs : bouw de docs in documentation
  • release : bouw alle release artefacten
  • watch : automatisch bouwen van lib voor debugging (met sourcecemap, geen babel, zeer snel)
    • goed voor algemene tests op debug/index.html
    • op http://localhost:8080 of de eerst beschikbare poort daarna, met livereload op debug/index.html
  • watch:babel : automatisch bouwen van lib voor debugging (met sourcecemap, met babel, iets trager)
    • goed voor het testen van performance of voor het testen van verouderde browsers
    • geserveerd op http://localhost:8080 of de eerst beschikbare port daarna, met livereload op debug/index.html
  • watch:umd : automatisch bouwen prod umd bundel (geen sourcecemap, met babel)
    • goed voor het testen van cytoscape in een ander project (met een "cytoscape": "file:./path/to/cytoscape" verwijzing in uw project’s package.json)
    • geen http server
  • dist : update de distributie js voor npm etc.

Testing:

De standaard testscripts lopen direct tegen de broncode aan. Tests kunnen ook worden uitgevoerd op een gebouwde bundel. De bibliotheek kan worden gebouwd op node>=6, maar de bundel van de bibliotheek kan worden getest op node>=0.10.

  • test : voer alle testen uit & linting
  • test:js : voer de mocha tests uit op de publieke API van de lib (direct op bronbestanden)
    • npm run test:js -- -g "my test name" voer de tests uit op alleen de overeenkomende testgevallen
  • test:build : voer de mocha tests uit op de openbare API van de lib (op een gebouwde bundel)
    • npm run build moet van tevoren worden uitgevoerd op een recente versie van node
    • npm run test:build -- -g "my test name" voer build tests uit op alleen de overeenkomende testgevallen
  • test:modules : voert eenheidstests uit op privé, interne API
    • npm run test:modules -- -g "my test name" voert moduletests uit op alleen de overeenkomende testgevallen
  • lint : lint de js-bronnen via eslint
  • benchmark : voer alle benchmarks uit
  • benchmark:single : voer alleen benchmarks uit voor de suite gespecificeerd in benchmark/single

Vrijgave-instructies

  1. Voer elke backport patch release uit vóór de corresponderende huidige release. Dit zorgt ervoor dat npm de huidige versie als de laatste vermeldt.
  2. Zorg ervoor dat de docs zijn bijgewerkt met de lijst van releases in documentation/md/intro.md
  3. Update de VERSION omgevingsvariabele, bijvoorbeeld export VERSION=1.2.3
  4. Bevestig dat alle tests slagen: npm run test (zie ook test/index.html voor browser testen)
  5. Bevestig dat alle testen slagen in IE9:
    1. npm run watch:umd
    2. Open een IE9 VM
    3. Open http://yourip:8081/test/ie.html in IE
  6. Voorbereid een release: npm run release
  7. Bekijk de bestanden die net gebouwd zijn in de vorige stap. Probeer de nieuw gebouwde docs en demo’s uit.
  8. Voeg de release toe aan git: git add . && git commit -m "Build $VERSION"
  9. Update de pakket versie: npm version $VERSION
  10. Push de release veranderingen: git push && git push --tags
  11. Publiceer de release naar npm: npm publish .
  12. Maak een release voor Zenodo van de laatste tag
  13. Voor feature releases: Maak een release aankondiging op de blog. Deel de aankondiging op mailinglijsten en sociale media.

Tests

Mocha-tests zijn te vinden in de testdirectory. De tests kunnen worden uitgevoerd in de browser of ze kunnen worden uitgevoerd via Node.js (npm run test:js).

Plaats een reactie