Good First Issues

Welcome! If you're new to contributing to open-source or to this project specifically, these issues are a great place to start. They're well-defined, relatively self-contained, and don't require deep knowledge of the entire codebase.

Pattern Creation

Easy

Add Pattern for Apache Tomcat

Create a regex pattern to detect Apache Tomcat versions from HTTP server headers or other common sources.

Skills needed: Basic regex knowledge, research skills

Expected outcome: A new pattern file in patterns/by-vendor/apache/ with comprehensive test cases

Easy

Add Pattern for Redis

Create a regex pattern to detect Redis versions from server responses or configuration files.

Skills needed: Basic regex knowledge, research skills

Expected outcome: A new pattern file in patterns/by-vendor/redis/ with comprehensive test cases

Easy

Add Pattern for MongoDB

Create a regex pattern to detect MongoDB versions from server banners or responses.

Skills needed: Basic regex knowledge, research skills

Expected outcome: A new pattern file in patterns/by-vendor/mongodb/ with comprehensive test cases

Pattern Improvement

Medium

Improve Apache HTTPD Pattern Accuracy

Research additional version formats for Apache HTTPD and improve the existing pattern with better coverage.

Skills needed: Intermediate regex knowledge, research skills

Expected outcome: Enhanced pattern with additional test cases and improved accuracy

Medium

Add Version-Specific Patterns for NGINX

Create version-specific patterns for different NGINX releases to improve detection accuracy.

Skills needed: Intermediate regex knowledge, research skills

Expected outcome: Version-specific patterns organized in the NGINX pattern file

Documentation

Easy

Improve Pattern Template Documentation

Enhance the pattern template documentation with better examples and explanations.

Skills needed: Technical writing, understanding of regex patterns

Expected outcome: Improved TEMPLATE.md with clearer examples and explanations

Easy

Create Vendor Documentation

Add documentation for vendors in the data directory, ensuring consistency and completeness.

Skills needed: Research skills, technical writing

Expected outcome: Updated vendor information in data/vendors.json

Tool Development

Medium

Create Pattern Testing Tool

Develop a tool to automatically test patterns against real-world examples from the internet.

Skills needed: Python programming, networking knowledge

Expected outcome: New tool in the tools directory for pattern validation

Getting Started Tips

Before You Start

Before Submitting

  • Test your pattern thoroughly with the validation tool
  • Include comprehensive test cases (both positive and negative)
  • Follow our naming conventions and file structure
  • Write clear, descriptive commit messages
  • Reference the issue number in your pull request