AMQPStorm

v3.1.1 safe
4.0
Medium Risk

Thread-safe Python3 RabbitMQ Client & Management library.

🤖 AI Analysis

Final verdict: SAFE

The package has no signs of obfuscation or credential harvesting, which are critical indicators for malicious intent. However, the incomplete metadata suggests it might be from a less active or new maintainer, increasing the risk slightly.

  • No obfuscation patterns detected
  • No credential harvesting patterns detected
  • Incomplete maintainer's author information
Per-check LLM notes
  • Obfuscation: No obfuscation patterns detected, indicating low risk.
  • Credentials: No credential harvesting patterns detected, indicating low risk.
  • Metadata: The maintainer's author information is incomplete and may indicate a new or less active account.

🔬 Heuristic Checks

Outbound Network Calls score 1.5

Found 1 network call pattern(s)

  • None: self.session = requests.Session() self.session.verify = verify self.session.
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: eandersson.net>

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository eandersson/amqpstorm appears legitimate

Maintainer History score 4.0

2 maintainer concern(s) found

  • Author name is missing or very short
  • Author "" 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 AMQPStorm
Develop a real-time messaging application using Python's AMQPStorm package, which acts as a client for RabbitMQ. This application will facilitate communication between a server and multiple clients over a message broker, ensuring reliable delivery of messages even in a distributed environment. The application will consist of two main components: a server component that publishes messages to a queue, and multiple client components that subscribe to the queue and consume messages in real-time. Here are the steps and features you need to implement:

1. **Setup Environment**: Ensure Python 3.x is installed along with pip. Install the AMQPStorm package via pip.
2. **Server Component**:
   - Create a server that connects to RabbitMQ using AMQPStorm.
   - Define a queue named 'realtime_messages' where all messages will be published.
   - Implement a function to publish messages to the queue. Messages could include simple text strings or more complex data structures like dictionaries.
   - Include error handling to manage connection issues and other potential problems.
3. **Client Component**:
   - Develop multiple client scripts that connect to RabbitMQ and subscribe to the 'realtime_messages' queue.
   - Each client should be able to receive messages from the queue and process them according to their requirements.
   - Integrate threading to allow for asynchronous processing of messages.
4. **Advanced Features**:
   - Implement a mechanism for clients to acknowledge receipt of messages to ensure they are removed from the queue only after successful processing.
   - Add support for durable queues to ensure messages are not lost in case of a broker restart.
   - Incorporate logging to track the status of message publishing and consumption.
5. **Testing**:
   - Test the application under different conditions, such as high traffic scenarios and network interruptions, to ensure robustness.
6. **Documentation**:
   - Write clear documentation on how to set up the application, including configuration settings for RabbitMQ and AMQPStorm.

This project will showcase your ability to use AMQPStorm effectively for building scalable and fault-tolerant applications that leverage RabbitMQ for message queuing.