amplitude-experiment

v1.11.1 safe
3.0
Low Risk

The official Amplitude Experiment Python SDK for server-side instrumentation.

🤖 AI Analysis

Final verdict: SAFE

The package does not exhibit significant indicators of malicious activity, with only minor obfuscation techniques observed that could serve legitimate purposes.

  • Low credential risk
  • Moderate obfuscation risk
Per-check LLM notes
  • Obfuscation: The use of base64 encoding for decoding amplitude_cookie and user_id suggests some level of data obfuscation, but it may be used for legitimate purposes such as protecting sensitive information during transmission.
  • Credentials: No clear patterns indicative of credential harvesting were detected, but further analysis is recommended to ensure no hidden vulnerabilities exist.

📦 Package Quality Overall: Medium (5.4/10)

○ Low Test Suite 1.0

No test suite detected

  • No test files or test-runner configuration detected
◈ Medium Documentation 7.0

Some documentation present

  • Documentation URL: "Developer Doc" -> https://www.docs.developers.amplitude.com/experiment/sdks/py
  • Detailed PyPI description (2758 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

  • 153 type-annotated function signatures detected in source
✦ High Multiple Contributors 10.0

Active multi-contributor project

  • 11 unique contributor(s) across 100 commits in amplitude/experiment-python-server
  • Active community — 5 or more distinct contributors

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation score 4.0

Found 2 obfuscation pattern(s)

  • ormat: decoding = base64.b64decode(amplitude_cookie).decode("utf-8") try:
  • ry: user_id = base64.b64decode(values[1]).decode("utf-8") except:
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: amplitude.com

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository amplitude/experiment-python-server appears legitimate

Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Amplitude Inc." 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 amplitude-experiment
Your task is to create a simple web-based A/B testing tool using Flask, a popular Python micro web framework, combined with the 'amplitude-experiment' package. This tool will allow users to sign up and participate in various A/B tests hosted on your platform. The application should include the following features:

1. User Registration & Login: Users should be able to register and log in to the platform.
2. Test Creation: Admins should have the ability to create new A/B tests with different variations (e.g., Version A, Version B).
3. Participant Assignment: Once a test is created, users who are not part of the test yet should be automatically assigned to one of the variations based on predefined rules (random assignment, etc.).
4. Data Reporting: After the test duration, the results should be collected and reported back to the user, showing which variation performed better based on key metrics (click-through rate, conversion rate, etc.).
5. Integration with Amplitude: Use the 'amplitude-experiment' package to instrument your application server-side. This means that whenever a user interacts with the app (e.g., clicks a button), these actions should be tracked and sent to Amplitude via the SDK.
6. Dashboard: Provide a dashboard where admins can see real-time updates on test progress and performance.

The application should be designed with simplicity and ease-of-use in mind. Make sure to document each step of the development process, including setup instructions for Flask, integrating the 'amplitude-experiment' package, and configuring Amplitude for data collection. Additionally, ensure that the codebase is well-structured and follows best practices in Python development.

💬 Discussion Feed

Leave a comment

No discussion yet. Be the first to share your thoughts!