Content Automation System (CAS) — an internal tool prototype for FMCG beauty/personal care brand operations in Thailand.
Built by JLC GROUP CO.,LTD · License: MIT
Wecontent is an internal operations platform that takes a marketing team from brief → script → clip → publish → performance tracking in one place. The prototype unifies four workflow phases that today live in separate tools (Google Docs, Premiere, Shopee/Lazada seller centres, spreadsheets).
Four phases the system covers
- Content Creation — SKU-aware script generator with 4 modular phases (customize → generate → review → export), Google Slides / Drive handoff, multi-platform presets (TikTok / Shopee / Lazada / IG / FB).
- Script & Clip Review — Upload script + video to Drive, AI reads and returns severity-tagged notes (MUST-FIX / NICE / POLISH), per-note comment + regen loop, approval gate from script → clip.
- Performance Tracking — Cross-platform ads + organic metrics (Meta / TikTok / Google / Shopee / Lazada), KOL attribution, creator ROI.
- Reporting — Auto-generated weekly / monthly briefs, exec summary, competitor moves, customer voice aggregation.
The prototype is a single-file HTML app — no build step, no server, no database. Open and use.
# Clone
git clone https://github.com/jlc-group/Wecontent.git
cd Wecontent
# Open prototype in your browser
open prototype/dashboard.html # macOS
xdg-open prototype/dashboard.html # Linux
start prototype/dashboard.html # WindowsCurrent prototype stack: vanilla HTML + Alpine.js 3.13.5 + Tailwind CDN + Lucide icons. Everything runs client-side. All data is mock for demo purposes.
Wecontent/
├── README.md ← you are here
├── LICENSE ← MIT
├── DOCS_INDEX.md ← narrative overview of all spec docs
├── CLAUDE.md ← working notes for AI pair-programming
│
├── 00_Master_PRD.md ← product requirements document
├── 01_System_Architecture.md
├── 02_Data_Model.md
├── 03_User_Roles_Permissions.md
├── 04_Phase1_Content_Creation.md
├── 05_Phase2_Video_Review.md
├── 06_Phase3_Performance_Tracking.md
├── 07_Phase4_Reporting.md
├── 08_Settings_Admin.md
├── 09_AI_Prompt_Library.md
├── 10_Team_SOP_RACI.md
├── 11_Integration_Specs.md
├── 12_Tech_Stack_Recommendation.md
├── 13_Phase_Rollout_Plan.md
├── 14_Ads_Data_Contract.md
├── 15_Data_Sources_Spec.md
├── MASTER_ARCHITECTURE.md ← system-wide diagram + data flow
│
├── prototype/
│ ├── dashboard.html ← main interactive prototype (v0.3.8.1, ~7000 lines)
│ └── dashboard_mockup.html ← earlier static mockup
│
├── deploy-notes/
│ ├── CHANGELOG.md ← version history
│ ├── contracts/ ← data contracts between modules
│ ├── learning/ ← decisions + retrospectives
│ └── templates/ ← reusable boilerplate
│
├── templates/
│ ├── cursor_rules.md ← coding rules for AI editors
│ ├── performance_tracker_schema.md
│ ├── script_template_teams.md ← script format per platform
│ └── sku_brand_seed.md ← mock SKU + brand seed data
│
├── skills/ ← JLC custom skills (see skills/README.md)
│ ├── project/ ← 9 CAS-specific skills (cas-script-generator, cas-video-qa, fmcg-claim-library, ...)
│ ├── library/ ← 27 skill folders (branding, creative, kol-management, ...)
│ └── bundles/ ← packaged .skill archives
│
└── plugins/ ← marketplace plugins (see plugins/README.md)
├── brand-voice/ ← from knowledge-work-plugins marketplace
├── data/ marketing/ engineering/ finance/
├── legal/ human-resources/ customer-support/
├── operations/ product-management/ productivity/
└── marketplace-manifest.json
| Layer | Current (prototype) | Planned (production) |
|---|---|---|
| Frontend | HTML + Alpine.js + Tailwind CDN | Next.js 14 + TypeScript + shadcn/ui |
| Backend | — (all mock) | Node.js + tRPC or FastAPI |
| DB | — | PostgreSQL + Prisma |
| Queue | — | BullMQ (Redis) |
| AI | mock responses | GPT-4 / Claude / Gemini + local whisper for video |
| Storage | — | Google Drive + S3 |
| Auth | mock | Google OAuth + RBAC (see 03_User_Roles_Permissions.md) |
| Deployment | open-file | Vercel + Railway / AWS ECS |
See 12_Tech_Stack_Recommendation.md for the rationale.
v0.3.x — current prototype iteration (interactive HTML, UX validation)
v0.4.x — data layer (real schemas from 02_Data_Model.md, Google Drive integration)
v0.5.x — AI pipeline (real script generation + video review behind feature flag)
v1.0 — production (auth, multi-tenant, ads data ingestion live)
See 13_Phase_Rollout_Plan.md for the full phased plan.
Highlights from deploy-notes/CHANGELOG.md:
| Version | Date | Highlight |
|---|---|---|
| v0.3.8.1 | 2026-04-21 | Renamed menu to "รีวิวคลิป + สคริปต์" |
| v0.3.8 | 2026-04-21 | Script & Clip dual-mode review, workflow gating |
| v0.3.7 | 2026-04-21 | Video Review: Drive upload + reasoning + per-note regen |
| v0.3.6 | 2026-04-20 | Vanilla JS dropdown (fixed Alpine @click.away bug) |
| v0.3.5 | 2026-04-20 | KOL Cockpit refactor (3 zones, 8 blocks) |
| v0.3.4 | 2026-04-19 | Campaign tab in Create module, customize section |
Full history → deploy-notes/CHANGELOG.md
Two complementary AI capability folders ship with this repo:
skills/— 27 JLC-authored skills covering Thai FMCG beauty workflows (branding, KOL, trade marketing, regulatory, forecasting, NPD, live commerce, etc.) plus packaged.skillbundles.plugins/— 11 vendored copies of plugins from the publicknowledge-work-pluginsmarketplace (brand-voice, data, marketing, engineering, finance, legal, HR, customer-support, operations, product-management, productivity).
Skills are our domain knowledge. Plugins are general-purpose, third-party, and best installed from the marketplace for live updates.
This is an internal JLC Group project, but we accept PRs for:
- Bug reports on the prototype (open an issue with browser + steps to reproduce)
- UX / copy suggestions for Thai beauty-industry terminology
- Prompt library improvements (
09_AI_Prompt_Library.md) - Data contract refinements (
14_Ads_Data_Contract.md,15_Data_Sources_Spec.md) - New or improved skills under
skills/library/(use theskill-creatorskill to scaffold)
Branch strategy:
main— stable, tagged releasesdevelop— integration branchfeature/<name>— feature branches offdevelop
MIT — see LICENSE. Built and maintained by JLC Group.
All brand names, SKU codes, KOL handles, and numeric examples in this repo are mock data for prototyping only and do not represent real commercial agreements.