(Experimental) Crawls GitHub for Swift repos with Package.swift files
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Cache @ af0f9ca
Redis
Sources
swiftpm-packages-statistics @ 2cf5a75
.gitignore
.gitmodules
.swift-version
Dockerfile
LICENSE
Makefile
Package.swift
README.md

README.md

swift-package-crawler

(Experimental) Crawls GitHub for Swift repos with Package.swift files

Generates swiftpm-packages-statistics and swift-package-crawler-data.

Running

  • clone this repo with git clone URL --recursive, to ensure submodules are properly checked out as well
  • install Googler (CLI tool to search Google) with brew install googler
  • Run SwiftPM's swift build
  • Start a Redis server with the default config redis-server (install with brew install redis)
  • Start the Crawler to find the packages & pull the Package.swift files (takes a few minutes)
  • .build/debug/PackageSearcher && .build/debug/PackageCrawler
  • Export the Package.swift files into ./Cache/PackageSwiftFiles and ./Cache/PackageJSONFiles
  • .build/debug/PackageExporter
  • Run analysis of results with .build/debug/Analyzer

To run the whole pipeline, run .build/debug/PackageSearcher && .build/debug/PackageCrawler && .build/debug/PackageExporter && .build/debug/Analyzer, or also make full, which also updates the statistics etc.

👽 Author

Honza Dvorsky - http://honzadvorsky.com, @czechboy0