async getMediaTypes() return [ value: 'movie', label: 'Movies', icon: '🎬' , value: 'tv_show', label: 'TV Shows', icon: '📺' , value: 'music', label: 'Music', icon: '🎵' , value: 'game', label: 'Games', icon: '🎮' , value: 'podcast', label: 'Podcasts', icon: '🎙️' , value: 'article', label: 'Articles', icon: '📰' , value: 'video', label: 'Videos', icon: '📹' ];
"items": [...], "pagination": "page": 1, "limit": 20, "total": 150, "totalPages": 8 , "filters": ... Searching for- porn collection in-All Categorie...
router.get('/api/categories', async (req, res) => try const type = 'entertainment' = req.query; const categories = await searchService.getCategoriesByType(type); res.json(categories); catch (error) res.status(500).json( error: error.message ); async getMediaTypes() return [ value: 'movie'
async extractFeatures(contentId) // Extract genre, actors, directors, keywords // Using NLP or pre-defined tags return genres: [], keywords: [], cast: [], director: '' ; label: 'TV Shows'
/* Search Bar */ <form onSubmit=handleSearch className="search-bar"> <input type="text" placeholder="Search movies, TV shows, music, games..." value=searchQuery onChange=(e) => setSearchQuery(e.target.value) className="search-input" /> <button type="submit" className="search-button">Search</button> </form>
return ( <div className="content-card"> item.thumbnail_url && ( <img src=item.thumbnail_url alt=item.title className="card-thumbnail" /> ) <div className="card-content"> <div className="card-header"> <span className="media-badge"> getMediaIcon(item.media_type) item.media_type.replace('_', ' ') </span> <span className="category-badge">item.category_name</span> </div> <h3 className="card-title">item.title</h3> <p className="card-description">item.description?.substring(0, 150)...</p> <div className="card-meta"> <span className="rating">★ 'N/A'</span> item.release_date && ( <span className="date">new Date(item.release_date).getFullYear()</span> ) item.duration_minutes && ( <span className="duration">item.duration_minutes min</span> ) </div> <button className="view-details-btn">View Details</button> </div> </div> ); ;
.media-badge, .category-badge padding: 4px 8px; border-radius: 4px; font-size: 12px; font-weight: 500;