X — Xx Vidos
| Category | Requirement | Metric / Target | |----------|-------------|-----------------| | Performance | Page load < 2 s (mobile, 3G) for public channel pages. | Lighthouse > 90. | | Scalability | Support 100 K concurrent viewers at launch, auto‑scale to 10 M. | Horizontal auto‑scaling groups, CDN cache hit > 95 %. | | Reliability | 99.9 % uptime SLA for video streaming. | Multi‑AZ deployment, health checks. | | Security | GDPR & CCPA compliant. | Data‑subject request pipeline, encryption‑at‑rest (S3) & in‑transit (TLS 1.3). | | Privacy | Default to minimal data collection; opt‑in analytics. | Clear consent banners. | | Accessibility | WCAG 2.1 AA compliance. | Automated aXe testing + manual audit. | | Legal | No DMCA safe‑harbor needed at MVP (user‑generated content only). | TOS includes “Take‑Down” process. | | Internationalization | UI ready for i18n (English + 2 additional languages at launch). | i18next integration. |
| Vision | Create a lightweight, community‑driven video hub that lets creators upload, organize, and monetize short‑form and long‑form content without the overhead of a full‑blown “YouTube‑style” platform. |
|------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Target Users | • Micro‑creators (artists, educators, hobbyists) who need a quick, zero‑fee launchpad.
• Niche communities (e.g., indie game devs, DIY makers) that want a shared video space with custom branding.
• Brands looking for a “white‑label” video channel that can be embedded on their own sites. |
| Key Differentiators | 1. Instant “One‑Click” Upload – drag‑and‑drop, auto‑transcode, no manual settings.
2. Customizable “Channel Pods” – each creator gets a mini‑site with theme‑able layouts.
3. Built‑in “Tip‑Jar” & “Pay‑Per‑View” without platform‑wide revenue sharing (creator keeps 100%).
4. Community‑First Moderation – reputation‑based flags + AI‑assisted review. | x xx vidos
| Goal | Success Criterion (SMART) | |------|----------------------------| | Engagement | Average time spent in the feed ≥ 2 minutes per user within 30 days of launch. | | Retention | 7‑day retention for users who watch ≥3 videos in the feed ≥ 55 %. | | Monetisation | 1.5 × increase in ad impressions per active user compared with the baseline. | | Quality | Video load time (first frame) ≤ 1 second on 4G; ≤ 300 ms on Wi‑Fi. | | Safety | Content‑moderation flag rate ≤ 0.5 % of total videos shown. | | Category | Requirement | Metric / Target
| AC # | Given | When | Then |
|------|-------|------|------|
| AC‑1 | User is on home screen (logged‑in or guest) | Feed loads | At least 10 video cells are displayed, first video auto‑plays muted, UI elements visible. |
| AC‑2 | Network = 3G | Feed request starts | Video start latency ≤ 1.5 s, fallback to 240p bitrate. |
| AC‑3 | Creator records a 12‑second clip and taps “Post” | Upload finishes | Video appears in the feed of the creator and a random sample of other users within 5 seconds. |
| AC‑4 | Viewer double‑taps on a video | Action registers | Like count increments instantly, like event sent to analytics. |
| AC‑5 | Moderator marks video as “violating” | System processes flag | Video is removed from the feed within 30 seconds; user receives a notification. |
| AC‑6 | User swipes up on a video cell | Navigation occurs | Creator profile screen slides in, showing their short‑video grid. |
| AC‑7 | Ads are enabled | Feed reaches 9th video | Native ad unit is displayed, respects user’s ad‑personalisation opt‑out. |
| AC‑8 | QA runs load test with 2 M concurrent users | System under load | 95 % of /feed responses < 150 ms, error rate < 0.5 %. | | Vision | Create a lightweight, community‑driven video
| Week | Milestone | |------|-----------| | 1 | Project scaffolding – repo, CI/CD, core services (Auth, DB, S3 bucket). | | 2 | Basic React UI: Channel creation wizard, simple dashboard. | | 3 | Upload endpoint + S3 multipart; background job stub (no real transcoding yet). | | 4 | Video player integration (play raw MP4 directly). | | 5 | Metadata form & “Publish” flow; list videos on channel pod. | | 6 | Simple tip‑jar (Stripe Checkout) + earnings page. | | 7 | Comment system (CRUD) + like button; basic moderation flag. | | 8 | Search (title only) + SEO‑friendly public pages; final QA & launch checklist. |
Post‑MVP (Weeks 9‑12) – add HLS streaming, pay‑per‑view pricing, AI moderation, analytics dashboard, and embed API.
| ID | As a … | I want … | So that … | |----|--------|----------|-----------| | US‑001 | New visitor | to see a short‑video feed on the home screen without signing in | I can instantly gauge whether the app is worth using. | | US‑002 | Signed‑in user | personalized video recommendations based on my watch history, likes, and follows | the feed feels relevant and keeps me engaged. | | US‑003 | Creator | a one‑tap “Capture” button that opens the camera in 5 seconds | I can quickly record and share a short clip. | | US‑004 | Creator | to add optional captions, stickers, and background music from a curated library | My videos look polished and stand out. | | US‑005 | Viewer | to double‑tap to like, swipe left/right to skip, and swipe up to view the creator’s profile | Interaction feels natural and fast. | | US‑006 | Viewer | to report inappropriate content directly from the video overlay | I can help keep the community safe. | | US‑007 | Product Analyst | to receive real‑time metrics (views, likes, watch‑through) per video | I can optimise recommendation models and ad placement. | | US‑008 | Operations | automated transcoding to 3 adaptive bitrate ladders (240p, 480p, 720p) | Videos play smoothly on any network condition. |