ahorn-loader

v0.9.0 suspicious
4.0
Medium Risk

Library and command-line application to interact with datasets in the Aachen Higher-Order Repository of Networks.

πŸ€– AI Analysis

Final verdict: SUSPICIOUS

The package shows some potential risks, particularly in network interactions and metadata, which could indicate a less experienced maintainer or a possible supply-chain attack.

  • Network risk due to external API calls
  • Metadata risk due to single package and lack of linked GitHub repository
Per-check LLM notes
  • Network: Network calls to external APIs are common but should be reviewed for legitimacy and scope.
  • Shell: No shell execution patterns detected.
  • Obfuscation: No obfuscation patterns detected, indicating low risk of malicious intent.
  • Credentials: No credential harvesting patterns detected, suggesting safe handling of secrets and credentials.
  • Metadata: The maintainer has only one package and no linked GitHub repository, which may indicate a less experienced or potentially suspicious account.

πŸ“¦ Package Quality Overall: Low (4.2/10)

β—ˆ Medium Test Suite 6.0

Partial test coverage signals detected

  • Test runner config found: pyproject.toml
β—ˆ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (2975 chars)
β—‹ Low Contributing Guide 4.0

No contributing guide or governance files found

  • Development Status classifier >= Beta
β—ˆ Medium Type Annotations 5.0

Partial type annotation coverage

  • 31 type-annotated function signatures detected in source
β—‹ Low Multiple Contributors 1.0

Unable to verify contributor count: no GitHub repository found

  • No GitHub repository linked β€” contributor count unavailable

πŸ”¬ Heuristic Checks

⚠ Outbound Network Calls score 3.0

Found 2 network call pattern(s)

  • TASET_API_URL) async with httpx.AsyncClient(timeout=10) as client: response = await client.get(D
  • ry) async with ( httpx.AsyncClient(transport=retry_transport, timeout=10) as client, cl
βœ“ Code Obfuscation

No obfuscation patterns detected

βœ“ Shell / Subprocess Execution

No shell execution patterns detected

βœ“ Credential Harvesting

No credential harvesting patterns detected

βœ“ Typosquatting

No typosquatting candidates detected

βœ“ Registered Email Domain

Email domain looks legitimate: netsci.rwth-aachen.de>

βœ“ Suspicious Page Links

All external links appear legitimate

βœ“ Git Repository History

No GitHub repository linked

  • No GitHub repository link found
⚠ Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Florian Frantzen" appears to have only 1 package on PyPI (new or inactive account)
βœ“ Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

πŸ’‘ AI App Starter Prompt

Use this prompt to build a project with ahorn-loader
Create a Python-based utility named 'NetworkExplorer' that leverages the 'ahorn-loader' library to explore and analyze datasets from the Aachen Higher-Order Repository of Networks. This utility should allow users to perform several operations on these datasets, including but not limited to loading, filtering, and visualizing network data. Here’s a step-by-step guide on what the application should do:

1. **Setup Environment**: Ensure that the user has Python installed and create a virtual environment for the project. Install 'ahorn-loader' along with other necessary libraries like NetworkX for graph manipulation and Matplotlib for visualization.
2. **Loading Data**: Implement a function within 'NetworkExplorer' that allows users to load datasets from the Aachen repository using 'ahorn-loader'. This function should accept parameters such as dataset ID or name and return the corresponding network data.
3. **Filtering Networks**: Develop a feature where users can filter networks based on specific attributes or characteristics, such as node degree, edge weights, or community structure. Use 'ahorn-loader' functionalities to enhance filtering capabilities.
4. **Visualization Tools**: Integrate visualization tools into 'NetworkExplorer' so that users can visually inspect the networks they have loaded or filtered. Utilize Matplotlib or similar libraries to create interactive plots and graphs.
5. **Analysis Functions**: Provide basic network analysis functions, such as calculating centrality measures, identifying communities, and detecting outliers. These analyses should leverage both 'ahorn-loader' and external Python packages like NetworkX.
6. **Saving Results**: Enable users to save the results of their analysis, either as new datasets within the repository or as local files in formats like CSV or JSON.
7. **User Interface**: Design a simple command-line interface (CLI) for 'NetworkExplorer', allowing users to easily navigate through the different functionalities without needing extensive programming knowledge.
8. **Documentation**: Write comprehensive documentation detailing how to install and use 'NetworkExplorer', including examples and tutorials for each of its main features.

By completing this project, you will have built a versatile tool for researchers and data scientists who work with complex network data, providing them with an easy-to-use interface for exploring the rich datasets available in the Aachen Higher-Order Repository of Networks.