A command-line tool for analyzing GitHub repositories and calculating social signals based on various metrics.
Project description
SOSIG (Social Signal) Command Line Tool
A command-line tool for analyzing GitHub repositories and calculating social signals based on various metrics.
Features
- Analyze local Git repositories for various metrics and social signals
- Store and manage repository analysis data in a local database
- Configure analysis weights and parameters
- View repository statistics and comparisons
- Database management and optimization utilities
Installation
# Clone the repository
git clone https://github.com/will-wright-eng/sosig.git
cd sosig
# Install dependencies
pip install -r requirements.lock
# For development
pip install -r requirements-dev.lock
Requirements
The CLI was setup on my macbook pro so the current support is exclusive to MacOS with the following command line tools:
gitgh
Usage
SOSIG provides three main command groups:
GitHub Metrics Operations (gh)
# Analyze repositories
sosig gh analyze path/to/repo1 path/to/repo2
# List analyzed repositories
sosig gh list
Database Operations (db)
# View database statistics
sosig db stats
# Show database schema
sosig db schema
# Remove specific repository
sosig db remove repo-name
# Optimize database
sosig db vacuum
Configuration Operations (config)
# Show current configuration
sosig config show
Project Structure
sosig/
├── src/sosig/
│ ├── commands/ # CLI command implementations
│ ├── core/ # Core functionality and models
│ └── utils/ # Utility functions and services
├── scripts/ # Helper scripts
│ └── results/ # Analysis results
└── requirements.lock # Locked dependencies
Scripts
The project includes several utility scripts:
analyze-repo-file.sh: Batch analyze repositories from a filefetch-repos.sh: Fetch repository information from GitHub
Development
Setup
rye add pip
rye sync
rye build
python -m pip install -e .
Debug Mode
All commands support a --debug flag for additional logging:
sosig gh analyze path/to/repo --debug
Workspace Configuration
Analysis operations use a workspace directory (default: ~/.local/share/ssig/workspace):
sosig gh analyze path/to/repo --workspace /custom/path
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sosig-0.2.1.tar.gz.
File metadata
- Download URL: sosig-0.2.1.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d8c7347c31510eaf0752adec794b4e755329926fbbd2b8b43fff99d6a99bcb44
|
|
| MD5 |
83f71522aaad8522c76521a3394288ca
|
|
| BLAKE2b-256 |
a3b2bc2c930236078a21776447ef312022b1b47f87d2922df76d75ce46d53c2d
|
File details
Details for the file sosig-0.2.1-py3-none-any.whl.
File metadata
- Download URL: sosig-0.2.1-py3-none-any.whl
- Upload date:
- Size: 19.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
22c0882652ce303f0008fa690b0fec9fa37a38f64080562e412d15000e52a79b
|
|
| MD5 |
9c9b4254c9c41c33146b08344c938863
|
|
| BLAKE2b-256 |
007b032dbd928848f52d5b9da555652c8a03164d98d2e82cd529b22148fd11d6
|