Practitionist / Practitionist/elluminar_web
Content authoring gaps: sales description, thumbnails/trailers, Tiptap editor, real free-preview, embed CSP
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 0
- Avg merge
- 17h 2m
- Merged PRs (30d)
- 18
Description
Storefront-quality blockers from audit:
- Course.description has NO authoring field → empty sales pages
- thumbnail/trailer/logo/banner assets have zero upload paths (all gradient placeholders)
- ARTICLE = plain textarea; Tiptap installed, no editor component exists anywhere
- Free-preview cosmetic — player redirects unentitled users before preview matters
- EMBED lessons blocked by our own CSP frame-src (next.config.ts:18)
- Rich description editor on course settings (shared with #3 renderer)
- Shared media-picker → public-assets bucket for thumbnails/logos/banners; trailer via existing video flows
- TiptapEditor client comp + sanitized server-safe renderer
- Preview: marketing detail page lists isFreePreview lessons with inline playback; ?preview=1 deep link gated to preview lessons only
- frame-src allowlist (youtube-nocookie, player.vimeo.com, docs.google) + host validation in upsertLesson
Spec: temp prompt library 08-content-authoring.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the referenced spec, “temp prompt library 08-content-authoring,” then inspect next.config.ts:18 and the upsertLesson entry point. Trace the existing course settings, lesson player, video flows, and article rendering before splitting the checklist into smaller changes. Done means authoring fields and media paths work, preview playback is gated correctly, Tiptap content renders safely, and the embed allowlist and host validation pass.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- next.js, typescript
- Domain
- backend, frontend, full-stack, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100