Commit Graph

82 Commits

Author SHA1 Message Date
daniel 119bb1d0f6 feat: migrate analytics dashboard to Astro + modernize TUI
Analytics Dashboard (Phase 1 + Phase 2):
- Replace 8663-line vanilla JS monolith with Astro static build
- New bento-grid layout with Geist design system (dark/light themes)
- ECharts (offline, tree-shaken) replaces Chart.js CDN dependency
- React island with KPI cards, token timeline, activity heatmap, agent BarList
- WebSocket client with reconnect backoff; polling fallback when WS disconnects
- API client with 30s cache; normalizes backend field names (inputTokens→totalInput)
- Build source in analytics-ui/, output committed to src/analytics-web/
- Fix: /api/activity now uses in-memory cache (was re-scanning all files on each request)
- Fix: remove duplicate /api/agents route (dead code since Express uses first match)
- Fix: /api/data and /api/fast-update no longer mutate this.data.conversations in place

TUI Modernization:
- Add src/tui.js with @clack/prompts-powered banner and helpers
- Replace inline showBanner() in bin/create-claude-config.js with tui.showBanner()
- Migrate showMainMenu() in src/index.js to @clack select() (replaces inquirer)
- Add @clack/prompts ^1.5.1 and gradient-string ^2.0.2 to dependencies

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-13 13:20:08 -04:00
Daniel Avila fb27d6fe8d Merge pull request #467 from davila7/dependabot/npm_and_yarn/cli-tool/jest-30.3.0
chore(deps-dev): bump jest from 30.0.4 to 30.3.0 in /cli-tool
2026-03-27 10:14:33 -04:00
dependabot[bot] 50c3134b96 chore(deps-dev): bump jest from 30.0.4 to 30.3.0 in /cli-tool
Bumps [jest](https://github.com/jestjs/jest/tree/HEAD/packages/jest) from 30.0.4 to 30.3.0.
- [Release notes](https://github.com/jestjs/jest/releases)
- [Changelog](https://github.com/jestjs/jest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jestjs/jest/commits/v30.3.0/packages/jest)

---
updated-dependencies:
- dependency-name: jest
  dependency-version: 30.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-26 23:20:47 +00:00
dependabot[bot] ceafbd175d chore(deps): bump ws from 8.18.3 to 8.20.0 in /cli-tool
Bumps [ws](https://github.com/websockets/ws) from 8.18.3 to 8.20.0.
- [Release notes](https://github.com/websockets/ws/releases)
- [Commits](https://github.com/websockets/ws/compare/8.18.3...8.20.0)

---
updated-dependencies:
- dependency-name: ws
  dependency-version: 8.20.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-26 23:20:30 +00:00
Dani 741c3e3dde chore: bump version to 1.28.13
- Add bash script support for hook installation
- Enable automatic download of .sh files for hooks
- LangSmith tracing hook now fully functional

Published to npm: claude-code-templates@1.28.13
2026-01-10 18:26:21 -05:00
Dani 1ccf692c08 chore: Bump version to 1.28.12 2025-12-31 21:59:27 -05:00
Dani 881d274cdb chore: Bump version to 1.28.8 2025-12-29 22:02:47 -05:00
Dani 285f81bfe2 chore: Bump version to 1.28.7 2025-12-29 21:56:52 -05:00
Dani 72e50cb215 chore: Bump version to 1.28.6 2025-12-29 21:50:49 -05:00
Dani fd20e9d663 feat: Improve Year in Review 2025 dashboard UI/UX
- Remove timeline bar and date display from visualization
- Remove numbers from right panel (Models, Tools, Components lists)
- Implement collision detection system to prevent nodes overlapping
- Add restart function to clear permanent connection beams
- Clean up token tracking (removed from frontend display)

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

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-29 21:50:21 -05:00
Dani fb18b698f5 fix(2025): Group subagents by type to reduce node count
- Group Plan, Explore, Agent subagents by type instead of individual IDs
- Aggregate counts per day to reduce timeline events
- Prevents rendering issues with thousands of subagent nodes

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-29 21:06:41 -05:00
Dani b69e56ae20 feat: Add plugin skills support to Skills Manager Dashboard
🎯 Skills Manager now detects skills from 3 sources:
- Personal: ~/.claude/skills/
- Project: .claude/skills/
- Plugin: ~/.claude/plugins/marketplaces/*/plugins/*/skills/*/

✨ Features:
- Added loadPluginSkills() to scan marketplace-installed skills
- Skills from /plugin install now appear in dashboard
- Detailed logging for debugging skill detection
- Fixed filter counts to show consistent totals

🔧 Improvements:
- Filter counts remain static regardless of active filter
- Shows total count for each category (All, Personal, Project, Plugin)
- Enhanced logging for better troubleshooting
- Supports skills installed via Claude Code plugin system

📦 Version: 1.28.3

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-15 15:40:19 -05:00
Dani e3d3c0ed81 chore: Bump version to 1.28.2 2025-11-15 11:21:48 -05:00
Dani 1539290b11 chore: Bump version to 1.28.1 2025-11-15 11:13:42 -05:00
Dani 4ab8925ca0 chore: Bump version to 1.28.0 2025-11-15 10:30:23 -05:00
Dani 7cb214e083 feat: Add command usage tracking system to Neon Database
This update adds comprehensive tracking of CLI command executions
to understand community usage patterns of the npm package.

**What's New:**
- Command usage logging in Neon Database with PostgreSQL
- Tracks: --chats, --analytics, --health-check, --plugins, --sandbox, and more
- API endpoint: /api/track-command-usage with validation
- Comprehensive test suite (18/18 tests passing)
- Fire-and-forget tracking (non-blocking, respects privacy)
- Auto-aggregated statistics with PostgreSQL triggers
- Useful views: daily usage, platform distribution, popular commands

**Technical Details:**
- Database: Neon PostgreSQL (separate from Supabase component downloads)
- Endpoint: https://www.aitmpl.com/api/track-command-usage
- Privacy: Respects CCT_NO_TRACKING environment variable
- Metadata: Includes tunnel usage, platform, Node version, etc.

**Files Changed:**
- api/track-command-usage.js - New endpoint for command tracking
- database/migrations/002_create_command_usage_logs.sql - Database schema
- cli-tool/src/tracking-service.js - Added trackCommandExecution()
- cli-tool/src/index.js - Integrated tracking for 10+ commands
- api/__tests__/endpoints.test.js - Added comprehensive tests

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-01 15:21:28 -04:00
Dani 4c8a8383ae chore: bump version to 1.26.3
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-31 16:03:01 -04:00
Dani 1b831afe95 chore: bump version to 1.26.2
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-31 15:46:09 -04:00
Dani f49b05d8fc chore: bump version to 1.26.0 2025-10-30 14:36:33 -04:00
Dani eef6c5dfb6 upgrade npm version 2025-10-28 05:17:25 -04:00
Daniel Avila 65156dda84 Session Sharing & Chats UI Improvements (#122)
* feat: add session sharing and cloning functionality

Implement complete session sharing system for Claude Code conversations:

Features:
- Share button in chats interface with QR code generation
- Upload sessions to x0.at (temporary file hosting)
- Clone sessions with --clone-session command
- Limit shared sessions to last 100 messages
- Security confirmation modal with service information
- Resume command display after cloning

Backend:
- New SessionSharing class for export/upload/download/install
- Integration with ConversationAnalyzer
- x0.at upload service (tested and working)
- JSONL format conversion for Claude Code compatibility

Frontend:
- Confirmation modal with x0.at security info
- Centered QR code display
- Improved button styling (Resume, Share, Search)
- Real-time upload progress indication

CLI:
- Added --clone-session <url> parameter
- Automatic session installation to ~/.claude/projects/
- Display resume command with conversation ID

Dependencies:
- Added qrcode package for QR generation

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

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: improve chats UI with project grouping and unified action buttons

Major improvements to chats interface:

Project Organization:
- Group conversations by project with collapsible sections
- Projects collapsed by default for cleaner interface
- Auto-expand projects during search with matching results
- Sticky project headers for better navigation
- Project avatars with gradients and conversation counts

Terminology Update:
- Changed "conversations" to "sessions" throughout UI
- Updated empty state messages
- Consistent terminology in headers and labels

Action Buttons Enhancement:
- Unified Resume, Share, and Search buttons in center header
- Replaced emojis with professional SVG icons
- Grouped design with orange accent border
- Individual hover states (green/blue/orange)
- Responsive button group with smooth transitions

Search Improvements:
- Fixed search to work with grouped project structure
- Search in both project names and session IDs
- Auto-collapse all projects when clearing search
- Proper filter clearing in advanced search
- Maintained state management across search operations

Visual Design:
- Orange accent border highlighting action buttons (2px)
- Subtle orange background for button group
- Consistent hover effects with color coding
- Enhanced visual hierarchy
- Better spacing and alignment

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

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-27 15:42:15 -04:00
Dani a467d114e1 chore: Bump version to 1.24.17 for npm release 2025-10-23 15:19:19 -04:00
Dani 82ba6e2d04 chore: Bump version to 1.24.4 with Cloudflare fixes 2025-10-20 17:45:08 -04:00
Dani 7880073473 chore: Bump version to 1.24.3 2025-10-20 17:44:57 -04:00
Dani 8ea8212e49 chore: Bump version to 1.22.2
Release v1.22.2 - Skills Integration

New Features:
- 🎨 Added 19 official Anthropic skills to components library
- 📦 Organized skills into 4 categories (creative-design, development, document-processing, enterprise-communication)
- 🌐 Web interface support for skills with filter, search, and cart
- 📊 Supabase analytics integration for skill downloads
- 🔗 URL routing support for /skills path

Skills Categories:
- creative-design: algorithmic-art, canvas-design, slack-gif-creator, theme-factory
- development: artifacts-builder, git-commit-helper, mcp-builder, skill-creator, webapp-testing
- document-processing: docx, xlsx, pptx, pdf-anthropic, pdf-processing, pdf-processing-pro
- enterprise-communication: brand-guidelines, email-composer, excel-analysis, internal-comms

Installation:
npx claude-code-templates@latest --skill=category/skill-name

Package size optimized: 319.2 kB (components downloaded on-demand from GitHub)
2025-10-17 18:29:19 -04:00
Dani d6b27f48d6 feat: Add skills integration with categorization and web interface support
## Skills System
- Add 19 Anthropic skills to components/skills/ with proper categorization
- Create 4 skill categories: creative-design, development, document-processing, enterprise-communication
- Add ANTHROPIC_ATTRIBUTION.md with license information (Apache 2.0 and Source-Available)

## Data Generation
- Update generate_components_json.py to handle skills with category/skill-name structure
- Skills now use SKILL.md inside category directories
- Extract descriptions from skill frontmatter
- Support proper path generation: category/skill-name

## CLI Installation
- Update installIndividualSkill() to support category/skill-name format
- Handle both "skill-name" and "category/skill-name" installation paths
- Improve error messages with category suggestions
- Download additional files (scripts/, reference/, templates/) via GitHub API

## Web Interface
- Add skills filter chip with "NEW" label and 🎨 icon to docs/index.html
- Update JavaScript to support skills filtering and categorization
- Add skills support to shopping cart system
- Generate correct installation commands: --skill=category/skill-name
- Update data-loader.js, index-events.js, and cart-manager.js for skills

## Skills Included
### Creative & Design (4)
- algorithmic-art, canvas-design, slack-gif-creator, theme-factory

### Development (5)
- artifacts-builder, git-commit-helper, mcp-builder, skill-creator, webapp-testing

### Document Processing (6)
- docx, pdf-anthropic, pdf-processing, pdf-processing-pro, pptx, xlsx

### Enterprise Communication (4)
- brand-guidelines, email-composer, excel-analysis, internal-comms

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-17 17:27:34 -04:00
Daniel Avila 5cba740dde Improve validation modal text display and UX enhancements (#112)
## Changes Made:

### 1. Modal Text Display Improvements
- Increased error/warning message font size from 14px to 16px for better readability
- Improved line height from 1.5 to 1.6 for better spacing
- Increased margin-bottom from 4px to 8px for better visual separation

### 2. Code Preview Text Wrapping
- Removed horizontal scroll (`overflow-x: auto`) from code previews
- Added `white-space: normal` to prevent excessive whitespace at line start
- Added `word-wrap: break-word` and `overflow-wrap: break-word` for proper text wrapping
- Applied to all code preview sections:
  - Error line text previews
  - Warning line text previews
  - Example line text in errors
  - Example line text in warnings

### 3. Line Number Scroll Synchronization
- Added `position: relative` to `.code-body` for better layout control
- Added `overflow: hidden` and `max-height: 600px` to `.code-line-numbers`
- Added `max-height: 600px` to `.code-content`
- Implemented JavaScript scroll sync between line numbers and code content
- Line numbers now scroll perfectly in sync with code content

### 4. Clickable Error Line Numbers
- Added `cursor: pointer` to error/warning line numbers
- Added "Click to see details" tooltip on error/warning lines
- Implemented click event listeners on all error/warning lines
- Click handler searches through validators to find matching error
- Opens validation modal with correct validator details when clicked
- Added hover effects with `transform: translateX(-2px)` and `cursor: help`

## User Experience Improvements:
- ✅ Error messages are now larger and easier to read (16px)
- ✅ Code snippets wrap naturally without horizontal scroll
- ✅ No excessive whitespace at the beginning of code lines
- ✅ Line numbers stay synchronized during scroll
- ✅ Error line numbers are interactive and open detailed validation modals
- ✅ Better visual hierarchy with improved spacing and sizing

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

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-16 15:34:11 -04:00
Dani 90eb8a23e0 Delete roadmap and test files, update package version 2025-10-10 15:44:09 -04:00
Dani 5234cf7d9d chore: bump version to 1.21.13 2025-10-01 20:03:52 -04:00
Dani 92fdaa1f87 feat: add Python scripts for all Git Flow hooks
- Created conventional-commits.py for commit message validation
- Created prevent-direct-push.py for protected branch enforcement
- Updated all hook JSONs to use Python scripts with proper JSON output
- All hooks now use permissionDecision: "deny" for proper blocking

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-01 20:02:20 -04:00
Dani 22c2aad0d7 chore: sync project files and configurations
- Update local settings and configurations
- Add Vertex AI Claude Code integration blog post
- Sync analytics components and documentation
- Remove test data files and update configurations

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-24 11:24:34 -04:00
Dani a3c0187e55 feat: component page improvements and SEO-friendly URLs
• Complete component page implementation with cart functionality
• Clean component names (remove .md/.json extensions in display)
• SEO-friendly URLs: /component/type/name format
• Local/production URL detection for development compatibility
• Improved header actions positioning and responsive design
• API keys setup (Anthropic + E2B) for sandbox execution
• Enhanced cart functionality with clean path/name display
• Share dropdown positioning fix (opens upward)
• Compact back navigation styling

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-10 17:07:04 -04:00
Dani 840138efe4 Add real-time streaming output to E2B sandbox execution
- Implement on_stdout/on_stderr callbacks for live output streaming
- Add progress indicators during long operations
- Remove unnecessary warning message for aitmpl.com API
- Create API endpoint for agents list at /docs/api/agents.json
- Update getAvailableAgentsFromGitHub to use aitmpl.com API fallback
- Improve user experience with visual feedback during execution
- Version bump to 1.21.5

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 17:54:49 -04:00
Dani 4a8f09faff agent.json api 2025-09-07 17:39:35 -04:00
Dani 98ecceeed3 Add cloud sandbox execution loading message
- Add visual separator and loading message after permissions check
- Show 'Executing Claude Code in secure cloud sandbox' message
- Include status indicators for processing, isolation, and output
- Improve user feedback during execution wait time

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-07 16:25:32 -04:00
Dani 4d3e2521d1 add package version and trending json 2025-09-03 10:18:27 -04:00
Dani 5f47678ecb feat: Add statusline context monitor with Python script support
- Add new statusline/context-monitor component with real-time context usage monitoring
- Implement automatic Python script download for statusline components
- Update installIndividualSetting to support additional files installation
- Add context-monitor.py with visual progress bars, color-coded alerts, and session analytics
- Modify generate_components_json.py to exclude .py files from component listings
- Use relative paths (.claude/scripts/) instead of hardcoded paths
- Support executable file permissions for Python scripts
- Version bump to 1.20.2

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-01 14:57:09 -04:00
Dani 66aac1ce0e chore: bump version to 1.20.1 for agent debugging improvements
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 21:21:40 -04:00
Dani fd35940a4a chore: bump version to 1.20.0 for Claude Code SDK global agents feature
🚀 Released: Major new feature integrating Claude Code SDK
- Global agents accessible from anywhere with zero configuration
- Auto-detects project context and provides specialized AI assistance
- Complete CLI integration with create/list/update/remove commands
- Frontend integration with enhanced agent modals

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-20 12:58:30 -04:00
Dani a176679fad feat: integrate Claude Code SDK with global agents functionality
🌍 Major new feature: Global AI Agents powered by Claude Code SDK

## New Features
- **Global Agent Creation**: `--create-agent <agent-name>`
- **Agent Management**: `--list-agents`, `--update-agent`, `--remove-agent`
- **Zero Configuration**: Agents install to /usr/local/bin (immediately available)
- **Auto Context Detection**: Smart project type detection and file context
- **Universal Access**: Works from any directory, in scripts, CI/CD, npm tasks

## Technical Implementation
- New global-agent-manager.js module with complete agent lifecycle
- Automatic PATH management across shell environments
- Executable script generation with Claude Code SDK integration
- Real-time loading indicators during AI processing
- Robust error handling and fallback mechanisms

## Frontend Integration
- Enhanced agent modals with Global Agent installation options
- New CSS styles for global agent sections
- Copy-to-clipboard functionality for all commands
- Usage examples and feature highlights

## User Experience
Before: Traditional project-based agent installation
After: `cct --create-agent security-auditor` → `security-auditor "prompt"` (anywhere)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-20 12:56:49 -04:00
Dani 77539b9982 fix: remove nested cli-tool directory and add local testing
- Remove accidentally created nested cli-tool/cli-tool directory
- Add simple tracking test script for local verification
- Confirmed tracking system works correctly with proper error handling
- Both database and telemetry endpoints are functional
- System gracefully handles local vs production differences

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 15:03:40 -04:00
José Zúñiga ff86deb8a9 fix: upgrade jest-watch-typeahead to resolve npm install dependency conflicts (#59)
- Upgraded jest-watch-typeahead from ^2.2.2 to ^3.0.1
- Resolves dependency compatibility issues causing npm install failures
- Version 3.0.1 provides improved Node.js compatibility and resolves known security vulnerabilities
- Updated package-lock.json to reflect the new dependency tree

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

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-16 18:06:31 -04:00
daniel 362ea869f7 fix: Update version in package-lock.json to 1.16.0 and adjust notification script formatting 2025-08-13 23:01:16 -04:00
daniel 4bfb26626e 📝 Update README with Mobile Chats Interface and Cloudflare Tunnel
- Added mobile-first chats interface in Quick Start section
- Highlighted --tunnel option with Cloudflare installation requirements
- Updated Core Features with new mobile interface and tunnel support
- Added installation instructions for cloudflared across platforms

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-09 11:07:01 -04:00
daniel 50979a01b1 🚀 Release v1.15.0 - Complete Mobile Chats Interface
🎯 Major Features:
- ✅ Complete mobile-first chats interface with real-time WebSocket updates
- 🧠 Intelligent auto-scroll system with user behavior detection
- 🛡️ DOM-aware WebSocket message correlation protection
- 🌐 Enhanced Cloudflare Tunnel support with improved URL detection
- 📱 Separate --chats (mobile) and --analytics (dashboard) commands

🔄 Architecture Changes:
- Removed AgentsPage.js - chats now completely independent
- Simplified Sidebar for analytics-only functionality
- CLI commands restructured: --chats, --analytics, --agents, --verbose, --tunnel

🐛 Bug Fixes:
- Fixed tool summary text overflow for long file paths
- Resolved WebSocket message correlation conflicts
- Protected DOM-rendered text messages from tool overwrites
- Fixed status footer overlapping messages

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-09 09:41:01 -04:00
Dani cd6b220ba7 feat: new layout chat 2025-08-08 12:57:40 -04:00
Dani c11c7452cf chore: bump version to 1.14.9
- Released with MCP installation deep merge fix
- Fixes MCP server configuration overwriting issues
- Published to npm registry

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-01 06:27:49 -04:00
Dani 9914e3606c feat: update version to 1.14.8 and add database optimization agent 2025-07-31 17:27:06 -04:00
Dani cf3fe394c2 feat: update tracking service to use GitHub Pages endpoint
- Switch from Vercel to GitHub Pages tracking endpoint
- Use custom domain aitmpl.com for tracking requests
- Verified working with successful 200 responses
- Completely anonymous tracking through GitHub Pages infrastructure
2025-07-31 17:15:03 -04:00
Dani 67b75cbd57 feat: implement public telemetry tracking system
- Add public telemetry endpoint that returns 1x1 GIF (like Google Analytics)
- Enable anonymous tracking via GET requests with no-cors mode
- Endpoint creates GitHub issues for existing analytics workflow
- Maintains full compatibility with current download-stats.json system
- No authentication required - completely anonymous tracking
2025-07-31 13:35:02 -04:00