{"id":51570423,"url":"https://github.com/boopi7/cardano-explorer","last_synced_at":"2026-07-10T19:01:58.877Z","repository":{"id":322057267,"uuid":"1088070808","full_name":"Boopi7/cardano-explorer","owner":"Boopi7","description":"A lightweight, vanilla JavaScript block explorer for the Cardano blockchain using the Blockfrost API. This project demonstrates building a secure client-server application with real-time blockchain data display.","archived":false,"fork":false,"pushed_at":"2025-11-02T09:43:24.000Z","size":2121,"stargazers_count":2,"open_issues_count":5,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-17T20:51:44.124Z","etag":null,"topics":["css","html","javascript"],"latest_commit_sha":null,"homepage":"https://www.web3studio.dev/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Boopi7.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-02T09:43:24.000Z","updated_at":"2025-12-06T15:56:55.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Boopi7/cardano-explorer","commit_stats":null,"previous_names":["devnova777/cardano-explorer","dravynn/cardano-explorer","boopi7/cardano-explorer"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/Boopi7/cardano-explorer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2Fcardano-explorer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2Fcardano-explorer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2Fcardano-explorer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2Fcardano-explorer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Boopi7","download_url":"https://codeload.github.com/Boopi7/cardano-explorer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Boopi7%2Fcardano-explorer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35339931,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-10T02:00:06.465Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["css","html","javascript"],"created_at":"2026-07-10T19:01:57.231Z","updated_at":"2026-07-10T19:01:58.871Z","avatar_url":"https://github.com/Boopi7.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cardano Block Explorer\n\nA lightweight, high-performance block explorer for the Cardano blockchain built with vanilla JavaScript and the Blockfrost API. This application provides real-time blockchain data visualization with robust security features and a clean, responsive interface.\n\n```mermaid\ngraph TD\n    A[Client Application] --\u003e B[API Layer]\n    B --\u003e C[Service Layer]\n    C --\u003e D[Blockfrost API]\n```\n\n## 🚀 Features\n\n### Real-time Block Information\n\n- Latest block data auto-refresh\n- Detailed block information display\n- Transaction list viewing with pagination\n- Block navigation and search\n- Advanced transaction details with UTXO tracking\n- Address tracking and balance display\n\n### Performance Optimized\n\n- Efficient DOM updates with modular renderers\n- Debounced search and event handlers\n- Optimized rendering cycles\n- BigInt support for precise calculations\n- Smart date formatting and validation\n- Responsive UI components\n\n### Security First\n\n- Rate limiting protection\n- Secure headers (Helmet)\n- CORS protection\n- API key validation\n- Input validation and sanitization\n- Error handling and logging\n- Type checking and validation\n\nFor detailed security information, see [SECURITY.md](docs/SECURITY.md).\n\n### Clean UI/UX\n\n- Responsive design with mobile support\n- Enhanced loading states\n- Comprehensive error handling\n- Clear navigation with breadcrumbs\n- Smooth transitions\n- Copy-to-clipboard functionality\n- Warning/Error differentiation\n\n## 🛠️ Prerequisites\n\n- Node.js (v18 or higher)\n- npm (v8 or higher)\n- Blockfrost API key ([Get one here](https://blockfrost.io))\n\n## 📦 Installation\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/Jimmyh-world/cardano-explorer.git\n   cd cardano-block-explorer\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n3. Create `.env` file:\n   ```env\n   BLOCKFROST_API_KEY=your_api_key_here\n   NODE_ENV=development\n   ```\n\n## 🚀 Deployment Options\n\n### Local Development\n\n```bash\n# Start the development server\nnpm run dev\n\n# The application will be available at http://localhost:3001\n```\n\n### Production Deployment (Vercel)\n\n1. Connect your repository to Vercel\n2. Set environment variables in Vercel dashboard\n3. Deploy using the provided `vercel.json` configuration\n\nFor detailed deployment information, see [TECHNICAL.md](/docs/TECHNICAL.md#deployment-process).\n\n## 🏗️ Project Structure\n\n```\ncardano-block-explorer/\n├── server/\n│   ├── middleware/          # Error handling, validation, and async handlers\n│   │   ├── errorHandler.js  # Centralized error handling\n│   │   ├── asyncHandler.js  # Async operation wrapper\n│   │   └── validators.js    # Input validation\n│   ├── services/           # Business logic and external services\n│   │   └── blockfrost/    # Blockfrost API integration\n│   ├── utils/             # Server utilities\n│   │   ├── APIError.js    # Custom error handling\n│   │   └── validators.js  # Validation utilities\n│   └── server.js          # Express server setup\n├── public/                # Client-side assets\n│   ├── js/               # JavaScript modules\n│   │   ├── api.js        # API client\n│   │   ├── utils.js      # Client utilities\n│   │   ├── main.js       # Application entry\n│   │   ├── wallet.js     # Wallet functionality\n│   │   ├── ui.js         # UI controllers\n│   │   └── renderers/    # UI components\n│   │       ├── shared.js    # Shared components\n│   │       ├── search.js    # Search functionality\n│   │       └── transactions.js # Transaction views\n│   ├── css/              # Stylesheets\n│   │   ├── modules/     # CSS modules\n│   │   └── styles.css   # Main styles\n│   └── assets/          # Static assets\n│       ├── images/      # Image resources\n│       └── icons/       # Icon assets\n├── docs/                # Documentation\n│   ├── ARCHITECTURE.md  # System architecture\n│   ├── TECHNICAL.md    # Technical details\n│   ├── API.md          # API documentation\n│   └── SECURITY.md     # Security guidelines\n├\n├── vercel.json        # Vercel configuration\n└── index.html         # Entry point\n```\n\nFor detailed architecture information, see [ARCHITECTURE.md](/docs/ARCHITECTURE.md).\n\n## 🔒 Security Features\n\nFor comprehensive security documentation, see [SECURITY.md](/docs/SECURITY.md).\n\nKey security features include:\n\n- Rate limiting (100 requests per 15 minutes)\n- HTTP security headers via Helmet\n- CORS protection with environment config\n- API key validation and security\n- Comprehensive error handling\n- Input validation and sanitization\n- Production error sanitization\n- Secure number handling with BigInt\n\n## 📚 Documentation\n\n- [Architecture Overview](docs/ARCHITECTURE.md)\n- [Technical Documentation](docs/TECHNICAL.md)\n- [API Documentation](docs/API.md)\n- [Security Guidelines](docs/SECURITY.md)\n\n## 🧪 Testing\n\nFor detailed API testing information, see [API.md](/docs/API.md#testing).\n\nQuick test examples:\n\n```bash\n# Get latest block\ncurl http://localhost:3001/api/blocks/latest | json_pp\n\n# Get specific block\ncurl http://localhost:3001/api/blocks/{block_hash} | json_pp\n\n# Get block transactions\ncurl http://localhost:3001/api/blocks/{block_hash}/transactions | json_pp\n\n# Get transaction details\ncurl http://localhost:3001/api/tx/{tx_hash} | json_pp\n\n# Search\ncurl http://localhost:3001/api/blocks/search?q={query} | json_pp\n```\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create your feature branch\n3. Follow code style guidelines:\n   - Use meaningful variable names\n   - Add JSDoc comments\n   - Follow type checking practices\n   - Update documentation\n   - Test thoroughly\n4. Submit a pull request\n\nFor detailed contribution guidelines, see [TECHNICAL.md](/docs/TECHNICAL.md#contributing-guidelines).\n\n## 📧 Contact\n\nJames Barclay - jamesqbarclay@gmail.com\n\n## 🗺️ Roadmap\n\nUpcoming Features:\n\n- [ ] Asset information display\n- [ ] Stake pool integration\n- [ ] WebSocket updates\n- [ ] Caching layer\n- [ ] TypeScript migration\n\nFor detailed enhancement plans, see [TECHNICAL.md](/docs/TECHNICAL.md#future-enhancements).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboopi7%2Fcardano-explorer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fboopi7%2Fcardano-explorer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fboopi7%2Fcardano-explorer/lists"}