aura-security 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -24,7 +24,7 @@ import { existsSync, writeFileSync, mkdirSync } from 'fs';
24
24
  import { join, resolve, basename } from 'path';
25
25
  import { spawnSync } from 'child_process';
26
26
  const AURA_URL = process.env.AURA_URL ?? 'http://127.0.0.1:3000';
27
- const VERSION = '0.5.0';
27
+ const VERSION = '0.5.1';
28
28
  // ANSI colors for terminal output
29
29
  const colors = {
30
30
  reset: '\x1b[0m',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aura-security",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "Deterministic security auditing engine with optional AI advisory layer. Run as CLI, CI step, or service. AI does not make enforcement decisions.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -349,6 +349,103 @@
349
349
  margin: 0;
350
350
  }
351
351
 
352
+ /* Screenshot Comparison */
353
+ .screenshot-comparison {
354
+ display: grid;
355
+ grid-template-columns: 1fr 1fr;
356
+ gap: 2rem;
357
+ margin: 2rem 0;
358
+ }
359
+
360
+ .screenshot-card {
361
+ background: var(--bg-card);
362
+ border-radius: 16px;
363
+ overflow: hidden;
364
+ border: 1px solid var(--border);
365
+ }
366
+
367
+ .screenshot-label {
368
+ padding: 1rem 1.25rem;
369
+ display: flex;
370
+ align-items: center;
371
+ gap: 0.75rem;
372
+ font-weight: 600;
373
+ font-size: 0.9375rem;
374
+ }
375
+
376
+ .screenshot-card.bad .screenshot-label {
377
+ background: rgba(239, 68, 68, 0.1);
378
+ border-bottom: 2px solid var(--critical);
379
+ color: var(--critical);
380
+ }
381
+
382
+ .screenshot-card.good .screenshot-label {
383
+ background: rgba(34, 197, 94, 0.1);
384
+ border-bottom: 2px solid var(--success);
385
+ color: var(--success);
386
+ }
387
+
388
+ .screenshot-icon {
389
+ font-size: 1.25rem;
390
+ }
391
+
392
+ .screenshot-container {
393
+ position: relative;
394
+ background: #0d1117;
395
+ min-height: 280px;
396
+ }
397
+
398
+ .screenshot-container img {
399
+ width: 100%;
400
+ height: auto;
401
+ display: block;
402
+ }
403
+
404
+ .screenshot-placeholder {
405
+ display: flex;
406
+ flex-direction: column;
407
+ align-items: center;
408
+ justify-content: center;
409
+ height: 280px;
410
+ text-align: center;
411
+ padding: 2rem;
412
+ }
413
+
414
+ .screenshot-placeholder.bad {
415
+ background: linear-gradient(135deg, rgba(239, 68, 68, 0.1), rgba(249, 115, 22, 0.1));
416
+ }
417
+
418
+ .screenshot-placeholder.good {
419
+ background: linear-gradient(135deg, rgba(34, 197, 94, 0.1), rgba(6, 182, 212, 0.1));
420
+ }
421
+
422
+ .placeholder-icon {
423
+ font-size: 4rem;
424
+ margin-bottom: 1rem;
425
+ opacity: 0.8;
426
+ }
427
+
428
+ .placeholder-text {
429
+ color: var(--text-secondary);
430
+ font-size: 1rem;
431
+ line-height: 1.5;
432
+ }
433
+
434
+ .placeholder-text small {
435
+ opacity: 0.7;
436
+ }
437
+
438
+ .screenshot-caption {
439
+ padding: 1rem 1.25rem;
440
+ font-size: 0.8125rem;
441
+ color: var(--text-secondary);
442
+ border-top: 1px solid var(--border);
443
+ }
444
+
445
+ .screenshot-caption strong {
446
+ color: var(--text);
447
+ }
448
+
352
449
  /* Comparison */
353
450
  .comparison {
354
451
  display: grid;
@@ -555,6 +652,9 @@
555
652
  .comparison {
556
653
  grid-template-columns: 1fr;
557
654
  }
655
+ .screenshot-comparison {
656
+ grid-template-columns: 1fr;
657
+ }
558
658
  .slop-grid {
559
659
  grid-template-columns: 1fr;
560
660
  }
@@ -797,6 +897,47 @@
797
897
  <h2>Good vs Bad: Real Examples</h2>
798
898
  <p>Here's what secure and insecure repositories look like when scanned with aurasecurity:</p>
799
899
 
900
+ <!-- 3D Visualizer Screenshots -->
901
+ <h3>3D Visualization Comparison</h3>
902
+ <p>See the difference at a glance - red means danger, green means safe:</p>
903
+
904
+ <div class="screenshot-comparison">
905
+ <div class="screenshot-card bad">
906
+ <div class="screenshot-label">
907
+ <span class="screenshot-icon bad">&#10060;</span>
908
+ <span>Vulnerable Repository</span>
909
+ </div>
910
+ <div class="screenshot-container">
911
+ <img src="https://app.aurasecurity.io/screenshots/bad-repo.png" alt="3D view of vulnerable repository with red nodes" onerror="this.parentElement.innerHTML='<div class=\'screenshot-placeholder bad\'><div class=\'placeholder-icon\'>&#128308;</div><div class=\'placeholder-text\'>juice-shop scan result<br><small>Red node = 9 secrets found</small></div></div>'">
912
+ </div>
913
+ <div class="screenshot-caption">
914
+ <strong>juice-shop</strong> - Multiple red severity indicators orbiting the node. Each red sphere represents a critical or high finding.
915
+ </div>
916
+ </div>
917
+
918
+ <div class="screenshot-card good">
919
+ <div class="screenshot-label">
920
+ <span class="screenshot-icon good">&#9989;</span>
921
+ <span>Clean Repository</span>
922
+ </div>
923
+ <div class="screenshot-container">
924
+ <img src="https://app.aurasecurity.io/screenshots/good-repo.png" alt="3D view of clean repository with green node" onerror="this.parentElement.innerHTML='<div class=\'screenshot-placeholder good\'><div class=\'placeholder-icon\'>&#128994;</div><div class=\'placeholder-text\'>aurasecurity scan result<br><small>Green node = 0 issues</small></div></div>'">
925
+ </div>
926
+ <div class="screenshot-caption">
927
+ <strong>aurasecurity</strong> - Clean green node with no severity indicators. This is your target state.
928
+ </div>
929
+ </div>
930
+ </div>
931
+
932
+ <div class="info-box">
933
+ <h5>&#127912; Reading the 3D View</h5>
934
+ <p><strong>Node Color:</strong> Red = critical issues, Orange = high, Yellow = medium, Green = clean<br>
935
+ <strong>Orbiting Shapes:</strong> Each shape around a node represents a finding category. More shapes = more issues.<br>
936
+ <strong>Click to Drill Down:</strong> Click any node to see severity breakdown, click severity to see individual findings.</p>
937
+ </div>
938
+
939
+ <!-- Stats Comparison Cards -->
940
+ <h3>Scan Statistics</h3>
800
941
  <div class="comparison">
801
942
  <div class="comparison-card bad">
802
943
  <div class="comparison-header">
@@ -815,7 +956,7 @@
815
956
  </div>
816
957
  <div class="comparison-stat">
817
958
  <span class="stat-label">High Findings</span>
818
- <span class="stat-value high">4 (API Keys)</span>
959
+ <span class="stat-value high">8 (API Keys)</span>
819
960
  </div>
820
961
  <div class="comparison-stat">
821
962
  <span class="stat-label">Medium Findings</span>
@@ -827,7 +968,7 @@
827
968
  </div>
828
969
  <div class="comparison-stat">
829
970
  <span class="stat-label">Total Issues</span>
830
- <span class="stat-value critical">20</span>
971
+ <span class="stat-value critical">24</span>
831
972
  </div>
832
973
  </div>
833
974
  </div>
@@ -835,13 +976,13 @@
835
976
  <div class="comparison-card good">
836
977
  <div class="comparison-header">
837
978
  <span>&#9989;</span>
838
- <span>get-shit-done (Clean)</span>
979
+ <span>aurasecurity (Clean)</span>
839
980
  </div>
840
981
  <div class="comparison-body">
841
- <p style="font-size: 0.875rem; margin-bottom: 1rem;">A simple productivity tool with no security findings.</p>
982
+ <p style="font-size: 0.875rem; margin-bottom: 1rem;">Our own repository - we practice what we preach.</p>
842
983
  <div class="comparison-stat">
843
984
  <span class="stat-label">Scan Time</span>
844
- <span class="stat-value">2.87s</span>
985
+ <span class="stat-value">4.10s</span>
845
986
  </div>
846
987
  <div class="comparison-stat">
847
988
  <span class="stat-label">Critical Findings</span>