Commit Graph

21 Commits

Author SHA1 Message Date
pratik
161bbb801c update styling 2025-10-15 12:02:47 -05:00
pratik
024e139627 Fix text visibility and table alignment in dark theme
- Improve badge colors for better readability (white text on blue background)
- Fix count badge with bright blue background and white text
- Fix type chip visibility with brighter blue color
- Fix filename cell alignment by using inline-flex instead of flex
- Improve header chip text color visibility
- Increase artifact fetch limit from 25 to 1000 to show all artifacts
- Add proper styling for accent buttons in toolbar

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 11:49:00 -05:00
pratik
cd40123d3f Add Claude settings to gitignore 2025-10-15 11:44:23 -05:00
pratik
115004b5a2 Merge main into f/updates
Resolved conflicts by keeping f/updates changes:
- Keep Angular frontend with dark theme styling
- Keep updated quickstart scripts at root level
- Remove static HTML/JS files (replaced by Angular)
- Keep sim_source_id field implementation
- Merge backend improvements from main

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 11:44:01 -05:00
pratik
6cbdcfbd10 Integrate dark theme styling from main branch with Angular Material
- Apply dark blue color scheme (#0f172a, #1e293b, #334155) throughout UI
- Update header with blue gradient and Obsidian branding
- Add missing toolbar buttons: Auto-refresh, Seed Data, Search filter
- Implement action buttons (Download, Delete) in artifacts table
- Add client-side search/filtering functionality
- Update app to support sim_source_id field in database
- Move quickstart scripts to repository root for easier access
- Apply dark theme to tables, tabs, and all Material components

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 11:42:34 -05:00
2861022ac6 Improve seed data to show clear SIM source grouping
- Guarantee each SIM source has 2-4 artifacts (previously was random)
- Pre-assign artifacts to SIM sources before generation
- 70% of artifacts are grouped, 30% remain ungrouped
- Shuffle assignments to randomize display order
- Makes multi-artifact grouping feature more obvious in demo data

Example output: Each sim_run_* ID now clearly shows 2-4 related artifacts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 09:33:19 -05:00
21347d8c65 Add tags prominence and SIM source grouping features
Database changes:
- Add sim_source_id column to artifacts table for grouping multiple artifacts
- Create Alembic migration (001_add_sim_source_id) for schema update
- Add Alembic env.py for migration support with environment-based DB URLs

API enhancements:
- Add sim_source_id parameter to upload endpoint
- Add sim_source_id filter to query endpoint
- Add new /grouped-by-sim-source endpoint for getting artifacts by group
- Update all API documentation to include sim_source_id

UI improvements:
- Make tags required field and more prominent in upload form
- Add tags display directly in artifacts table (below filename)
- Add SIM Source ID field in upload form with helper text for grouping
- Update table to show sim_source_id (falls back to test_suite if null)
- Tags now displayed as inline badges in main table view

Seed data updates:
- Generate sim_source_id for 70% of artifacts to demonstrate grouping
- Multiple artifacts can share same sim_source_id
- Improved seed data variety with tag combinations

Features:
- Tags are now prominently displayed in both table and detail views
- Multiple artifacts can be grouped by SIM source ID
- Users can filter/query by sim_source_id
- Backward compatible - existing artifacts without sim_source_id still work

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 09:30:25 -05:00
6eab60987e Switch PostgreSQL to Alpine-based image for consistency
- Change from postgres:15 to postgres:15-alpine
- Maintains consistency with Alpine-based API container
- Smaller image size and better ARM64 support
- All services now use Alpine or minimal base images

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 09:20:11 -05:00
f910c0d67d Switch to Alpine Linux and improve deployment reliability
- Switch from Debian (python:3.11-slim) to Alpine (python:3.11-alpine) for better ARM64 support
- Replace apt-get with apk package manager for lighter, faster builds
- Update package dependencies for Alpine (musl-dev, postgresql-dev, linux-headers)
- Change user creation from useradd to adduser (Alpine syntax)
- Add .gitkeep files to preserve empty alembic directories in git
- Update all quickstart scripts to always rebuild containers with --build flag
- Fixes ARM64 package installation errors on Apple Silicon Macs
- Fixes missing alembic directory errors on fresh clones

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 09:13:08 -05:00
17fc9c9b75 Update quickstart scripts to always rebuild containers
- Added --build flag to docker-compose up command
- Ensures latest code changes are always included
- Prevents issues with stale cached images
- Updated all three quickstart scripts (Linux/macOS, Windows batch, PowerShell)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 09:06:50 -05:00
85e8776fc3 Revert "Add --fix-missing flag to handle Debian mirror issues"
This reverts commit 1a47ba9369.
2025-10-15 08:59:00 -05:00
1a47ba9369 Add --fix-missing flag to handle Debian mirror issues
- Cleans apt cache before update to avoid stale data
- Adds --fix-missing flag to handle transient mirror synchronization issues
- Fixes hash sum mismatch errors during package installation
- Improves reliability when building on different mirrors

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 08:56:03 -05:00
ca86e7a04f Fix ARM64 architecture support in Dockerfile
- Added libpq-dev package for ARM64 PostgreSQL client libraries
- Added --no-install-recommends flag to reduce image size
- Ensures compatibility with Apple Silicon (M1/M2/M3) and ARM servers
- Fixes package installation errors on arm64 architecture

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 08:53:39 -05:00
b584cb96bf Add .gitkeep files to preserve alembic directories
- Ensures alembic/ and alembic/versions/ directories exist when cloning
- Fixes error on fresh installations where directories were missing
- Git doesn't track empty directories, .gitkeep solves this

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 08:50:05 -05:00
4d9d235111 Add sortable columns and inline search filter
- Implemented sortable table headers with visual indicators (▲▼)
- Click any column to sort ascending/descending
- Sort state persists during auto-refresh
- Added compact inline search filter in toolbar
- Unified search across all columns (Sim Source, Artifacts, Date, Uploaded By)
- Positioned search on right side of toolbar for cleaner layout
- Real-time filtering as you type
- Combined filtering and sorting work seamlessly together

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 08:45:31 -05:00
4bc8310070 Rebrand to Obsidian with modern UI and auto-refresh
- Renamed project from "Test Artifact Data Lake" to "Obsidian"
- Updated all branding across README, quickstart scripts, and API
- Implemented dark mode theme with professional color palette
- Simplified table to 4 essential columns (Sim Source, Artifacts, Date, Uploaded By)
- Replaced emoji icons with Lucide SVG icons for better scaling
- Added auto-refresh functionality (5-second intervals, toggleable)
- Enhanced UI with modern flexbox layouts and hover effects
- Updated upload form labels to match new terminology

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-15 08:30:21 -05:00
pratik
f6d1412bc8 Switch to angular 2025-10-14 23:32:38 -05:00
1ce27976a9 Add Windows quick start scripts and update documentation
New files:
- quickstart.bat - Windows batch script for Command Prompt
- quickstart.ps1 - Windows PowerShell script with colored output
- Both scripts auto-detect Docker/Docker Compose
- Automatically open browser after setup
- Error handling and user-friendly messages

Updated:
- README.md - Added one-command setup section for all platforms
- Highlighted Web UI as primary access method

Now Windows users can run:
  quickstart.bat  (Command Prompt)
  quickstart.ps1  (PowerShell)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-14 16:25:03 -05:00
7b2b49e394 Add web UI with artifact table and upload functionality
Features:
- Modern web interface with table view of all artifacts
- Display all metadata: filename, type, size, test info, tags
- Upload form with full metadata support
- Query/filter interface
- Detail modal for viewing full artifact information
- Download and delete actions
- Integrated seed data generation via UI
- Responsive design with gradient theme

Technical:
- Pure HTML/CSS/JavaScript (no frameworks)
- FastAPI serves static files
- Seed data API endpoint for easy testing
- Pagination support
- Real-time deployment mode display

The UI is now accessible at http://localhost:8000/

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-14 16:12:32 -05:00
2dea63f99f Add feature flags, seed data utilities, and Angular frontend scaffold
Major enhancements:
- Feature flag system for cloud vs air-gapped deployment modes
- Automatic storage backend selection based on deployment mode
- Comprehensive seed data generation utilities
- Support for generating CSV, JSON, binary, and PCAP test files
- Quick seed script for easy data generation
- Angular 19 frontend complete setup documentation
- Material Design UI component examples and configuration

Fixes:
- Resolve SQLAlchemy metadata column name conflict
- Rename metadata to custom_metadata throughout codebase
- Fix API health check issues

Documentation:
- FEATURES.md - Complete feature overview
- FRONTEND_SETUP.md - Angular 19 setup guide with examples
- SUMMARY.md - Implementation summary

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-14 15:57:49 -05:00
6821e717cd init 2025-10-14 15:37:37 -05:00