a61da35357b89a742a6f2ba8af293270f35811ed
Issues fixed: 1. Removed duplicate health check from Dockerfile (docker-compose overrides it) 2. Switched from wget to curl (more reliable in alpine) 3. Installed curl in the Docker image 4. Simplified health check command The health check now properly tests if Nginx is serving content on port 7777. Container should show as healthy after 40s start period. Co-authored-by: Cursor <cursoragent@cursor.com>
IndeeHub Prototype - Project Setup
Quick Start
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
Project Structure
src/
├── components/ # Reusable Vue components
│ └── ContentRow.vue
├── views/ # Page components
│ └── Browse.vue
├── stores/ # Pinia state management
│ └── content.ts
├── router/ # Vue Router configuration
├── types/ # TypeScript type definitions
├── utils/ # Utility functions
│ └── indeeHubApi.ts
└── composables/ # Vue composables
Features
- ✅ Netflix-inspired streaming interface
- ✅ Glass morphism design from neode-ui
- ✅ Responsive mobile/desktop layout
- ✅ Horizontal scrolling content rows
- ✅ Vue 3 + TypeScript + Vite
- ✅ Tailwind CSS styling
- ✅ Nostr-tools integration ready
- ⏳ Real IndeeHub content integration (pending data)
Technology Stack
- Frontend: Vue 3 (Composition API)
- Build Tool: Vite
- Styling: Tailwind CSS
- State: Pinia
- Router: Vue Router
- Protocol: Nostr (nostr-tools)
- Package Manager: npm
Next Steps
-
Add Real Content
- Update
src/stores/content.tswith IndeeHub API - Replace placeholder images with real thumbnails
- Add authentication (NIP-98)
- Update
-
Complete Features
- Video player component
- Search functionality
- User authentication
- Content detail pages
- My List feature
-
Nostr Integration
- Nostr relay connections
- Event publishing/fetching
- Creator profiles
- Content discovery
-
Deployment
- Package for Umbrel
- Package for Start9
- Package for Archy
Design System
Using design rules from .cursor/rules/:
- Mobile-first responsive design
- Glass morphism UI
- 4px grid spacing system
- Smooth animations
- Accessibility (WCAG AA)
- Performance optimized
Development Notes
- All components use Composition API
- TypeScript strict mode enabled
- Following Vue 3 best practices
- Tailwind utility-first approach
- Design system consistency enforced
Built with ❤️ for decentralized media streaming
Description
Languages
TypeScript
65.9%
Vue
31.1%
Shell
1.3%
JavaScript
0.9%
Python
0.3%
Other
0.4%