0031456f4e1af6aa23e7d57f54eaf394585bf689
Android PWA Requirements: - Add mobile-web-app-capable meta tag for Android - Add application-name meta tag - Add prefer_related_applications: false to manifest - Add explicit icon sizes (192x192, 512x512) for both any and maskable - Add orientation: any for flexible display - Add lang and dir to manifest for proper localization - Add ?source=pwa to start_url for analytics - Add crossorigin="use-credentials" to manifest link - Add proper service worker registration in main.ts - Add vite-plugin-pwa/client types to env.d.ts This ensures Android recognizes it as a full PWA instead of creating a shortcut 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%