Skip to content
/ depscan Public

Scan your project content and find out which countries your dependencies originate from

License

Notifications You must be signed in to change notification settings

tezvi/depscan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MIT License LinkedIn


DepScan - simple project dependency scanning

Scan your project contents and find out which countries your dependencies originate from.

Table of Contents
  1. About The Project
  2. Getting Started
  3. Contributing
  4. License
  5. Contact

About The Project

DepScanWin Screen Shot

DepScan tool can provide a simple solution to quickly scan your project directory for 3rd party dependencies and gather geolocation info about dependency owner and maintainers and which country they are related to. It uses famous awesome / made-in projects by IonicaBizau and other contributors to collect dependency metadata, country of origin and other related GitHub data.

The windows executable expects an input XML file (dictionary) with dependency information and produces text report with matched dependency data. You may find already prepared dictionary files per country under dictionary directory. You may also use command line PHP script php-scrapper, bundled within this project to customize your XML input and selectively scrap data for specific countries.

DepScanWin intro dialog

Supported countries

Currently, the following countries are supported either by MD or JSON format provided by other contributor repositories. If you need to prepare your own XML dictionary refer to php-scrapper CLI tool.

MD format compatible

Brazil Russia India Japan Ukraine Germany Angola China Albania Mexico

JSON format compatible

Turkey Romania Serbia Russia Brazil Belarus Italy Chile Bosnia Colombia Poland India Netherlands Bulgaria Bolivia Ukraine Venezuela Uruguay Spain Slovenia Slovakia Portugal Peru Paraguay Moldova Malta Lithuania Latvia Guyana Greece France Finland Estonia Ecuador Denmark Croatia Belgium Austria Argentina Albania

Supported scan options

  • Follow compressed files (jar, ear, war, zip)
  • Scan Javascript project metadata files (NPM)
  • Scan Python project metadata files (requirements)
  • Scan Java project metadata files (POM, Gradle)
  • Scan PHP project metadata files (Composer)
  • Scan all textual files with extended regex - this option will target all textual files instead of tech stack specific like java, nodejs etc.
  • Scan for extra package maintainer details by their github usernames, nicknames, emails etc.

(back to top)

Built With

Getting Started

Checkout this project and open it with C# suported IDE. You may use VSCode or VisualStudio Community.

Prerequisites

If you plan to use php-scrapper to customize your search then install php system wide or use php docker image. Before you run php script create config.php file from template php-scrapper/config.php.dist and update configuration variables to suite your needs. For an example you may need to insert your own GitHub API token which is required by php to communicate with GitHub API.

Installation

  1. Get a free GitHub API Key if you want to prepare your custom input data with dependency information targeting specific country or list of countries.
  2. Clone the repo
    git clone https://github.com/tezvi/depscan.git
  3. Update php script php-scrapper/scrapper.php and insert your own GitHub API key and modify country list if needed and then run the script.
    php -f php-scrapper/scrapper.php
  4. Open DepScanWin in Visual Studio or other supported IDE and build project. Execute DepScanWin from project's bin directory.

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Project Link: https://github.com/tezvi/depscan

(back to top)

About

Scan your project content and find out which countries your dependencies originate from

Resources

License

Stars

Watchers

Forks

Packages

No packages published