Skip to main content

secure_code_scanner 1.0.2 copy "secure_code_scanner: ^1.0.2" to clipboard
secure_code_scanner: ^1.0.2 copied to clipboard

Enterprise-grade Flutter/Dart SAST tool with 18 security detectors. Finds hardcoded secrets, insecure storage, SQL injection, missing SSL pinning, Firebase misconfigs, weak JWT handling, WebView flaws [...]

example/secure_code_scanner_example.dart

import 'package:secure_code_scanner/secure_code_scanner.dart';

/// Example demonstrating programmatic use of the secure_code_scanner package.
Future<void> main() async {
  print('šŸ”’ Secure Code Scanner — Programmatic Usage Example\n');

  // ── 1. Quick scan with auto-printed report ──────────────────────────────
  final service = ScanService();

  // Scan the current directory (the package itself as a demo)
  final report = await service.scan('.');

  // ── 2. Access results programmatically ─────────────────────────────────
  print('šŸ“Š Results Summary:');
  print('   Files scanned : ${report.totalFilesScanned}');
  print('   Issues found  : ${report.totalVulnerabilities}');
  print('   Score         : ${report.securityScore}/100');
  print('   Grade         : ${service.gradeForScore(report.securityScore)}');
  print('   Status        : ${report.projectStatus.label}');
  print('');

  // ── 3. Inspect individual vulnerabilities ──────────────────────────────
  if (report.vulnerabilities.isNotEmpty) {
    print('šŸ› Top 3 Issues:');
    final top = report.vulnerabilities.take(3);
    for (final v in top) {
      print('   [${v.riskLevel.label}] ${v.type}');
      print('   File: ${v.filePath}');
      if (v.lineNumber != null) print('   Line: ${v.lineNumber}');
      print('   Fix : ${v.recommendation}');
      print('');
    }
  } else {
    print('āœ…  No vulnerabilities found! Great job keeping the code secure.');
  }

  // ── 4. Group by file ───────────────────────────────────────────────────
  if (report.byFile.isNotEmpty) {
    print('šŸ“ Files with issues:');
    report.byFile.forEach((file, issues) {
      print('   $file → ${issues.length} issue(s)');
    });
  }

  // ── 5. Use individual detectors manually ──────────────────────────────
  print('\nšŸ”¬ Running individual detector example:');
  final apiDetector = ApiKeyDetector();
  const sampleCode = '''
    const apiKey = "sk-1234567890abcdef1234567890abcdef";
    final url = Uri.parse("https://api.example.com/data");
  ''';

  final issues = apiDetector.detect('sample.dart', sampleCode);
  if (issues.isNotEmpty) {
    print('   ApiKeyDetector found ${issues.length} issue(s) in sample code.');
  } else {
    print('   ApiKeyDetector: No issues in sample code.');
  }
}
3
likes
150
points
15
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Enterprise-grade Flutter/Dart SAST tool with 18 security detectors. Finds hardcoded secrets, insecure storage, SQL injection, missing SSL pinning, Firebase misconfigs, weak JWT handling, WebView flaws, and more.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

args, path

More

Packages that depend on secure_code_scanner