Skip to content

Mine usage information about your JavaScript/TypeScript package from dependent repositories.

License

Notifications You must be signed in to change notification settings

LinqLover/downstream-repository-mining

Repository files navigation

Software Mining of Downstream Dependency Repositories

GitHub CI Codacy CodeFactor Citation info

Mine usage information about your JavaScript/TypeScript package from dependent repositories.

For more information, read our scientific paper.

Repository Structure

  • packages/core/: Contains the core logic
  • packages/cli/: Provides a simple command-line interface
  • packages/vscode-extension/: IDE integration that presents the data to the user
  • docs/: Documents examining the scientific background of this project
  • ./ (this folder): Holds everything together, contains CI and other configuration files

Installation and Usage

Prerequisites (see Dockerfile):

  • node v16
  • npm
  • for the IDE integration: Visual Studio Code (tested with v1.61.0 on Windows/Linux) or Gitpod Code (tested with v1.61.0)

Installation and usage structures can be found in the README.mds of the relevant packages. If you have any trouble reproducing the instructions, please try it out on our reference configuration using Gitpod:

Open in Gitpod

Express guide

First of all:

$ npm run install-all
  • To run the VS Code extension:

    $ code packages/vscode-extension

    Then head to the debugging activity bar (Ctrl + Shift + D) and launch the target Run Extension.

    See usage for the complete documentation of the extension.

  • To use the CLI:

    $ cd packages/cli
    $ npm link
    $ dowdep-cli help

    Read the readme for the complete documentation of the CLI.

Don't forget to specify the access tokens for the data sources as described in the relevant package documentation.

Citation

  • To cite this repository, press the Cite button in the About section of the repository:

    https://doi.org/10.5281/zenodo.6338060

    Thiede, C. (2022). LinqLover/downstream-repository-mining: Submission (17th International Conference on Evaluation of Novel Approaches to Software Engineering) (submission-enase17) [Computer software]. Zenodo. https://doi.org/10.5281/ZENODO.6338060

    BibTeX citation file (repository)
    @software{dowdep2022,
    	author = {Thiede, Christoph and Scheibel, Willy and Limberger, Daniel and Döllner, Jürgen},
    	doi = {10.5281/zenodo.6338060},
    	month = {3},
    	title = {{dowdep: Software Mining of Downstream Dependency Repositories}},
    	version = {submission-enase17},
    	year = {2022}
    }
  • To cite the scientific paper, please use this citation:

    https://doi.org/10.5220/0011093700003176

    Thiede, C., Scheibel, W., Limberger, D., & Döllner, J. (2022). Augmenting Library Development by Mining Usage Data from Downstream Dependencies. In Proceedings of the 17th International Conference on Evaluation of Novel Approaches to Software Engineering. 17th International Conference on Evaluation of Novel Approaches to Software Engineering. SCITEPRESS - Science and Technology Publications. https://doi.org/10.5220/0011093700003176

    BibTeX citation file (paper)
    @conference{dowdep22paper,
    	author={Christoph Thiede and Willy Scheibel. and Daniel Limberger. and Jürgen Döllner.},
    	title={Augmenting Library Development by Mining Usage Data from Downstream Dependencies},
    	booktitle={Proceedings of the 17th International Conference on Evaluation of Novel Approaches to Software Engineering - ENASE,},
    	year={2022},
    	pages={221-232},
    	publisher={SciTePress},
    	organization={INSTICC},
    	doi={10.5220/0011093700003176},
    	isbn={978-989-758-568-5},
    }

Acknowledgements

This is currently a student project for the course "Software Mining and Applications" offered by the Computer Graphics System Group (@hpicgs/@varg-dev) at the Hasso Plattner Institute (HPI), Potsdam, Germany. Thanks to my supervisors, Daniel Limberger (@cgcostume) and Willy Scheibel (@scheibel)! For further information, see ACKNOWLEDGEMENTS.md.