iptvnator-nx-architecture
Skill7.6k starsChanged 6 days agoMITView on GitHub
Use when deciding where IPTVnator code belongs, creating or moving Nx projects, changing scoped aliases or tags, editing lint targets, or validating module boundaries.
- Installs packages
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 44
Every project keeps one scope:*, domain:*, and type:* tag.
- Very specific: line 61
Use aliases from tsconfig.base.json and public src/index.ts barrels.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
IPTVnator Nx Architecture
Discover Before Deciding
In a fresh worktree, install first:
pnpm install --frozen-lockfile
pnpm nx show projects
pnpm nx show project <name>
pnpm nx show projects --withTarget test
pnpm nx show projects --withTarget e2eDiscovery is authoritative. The current app groups are web,
electron-backend, web-backend, remote-control-web, website, web-e2e,
electron-backend-e2e, stalker-mock-server, and xtream-mock-server. Current
tool projects are eslint-tools, packaging, release-tools, and
repository-skills.
Place Code by Ownership
apps/: runtime, development, E2E, and mock-server applications.tools/: repository automation; tag its projectsscope:tools.libs/: domain libraries.type:feature: route and screen orchestration.type:ui: reusable visual components.type:data-access: injectable state, API, persistence, or orchestration.type:util: the destination for new pure helpers and contracts only.
Provider-neutral collection services that coordinate persistence belong in
libs/portal/shared/data-access; pure collection helpers belong in
libs/portal/shared/util; reusable views belong in
libs/portal/shared/ui. Existing injectable/stateful services under a util
path are legacy debt, not placement precedent.
Preserve Boundaries
Every project keeps one scope:*, domain:*, and type:* tag. Enforced type
directions are:
| Source | Allowed dependencies |
| app, E2E, dev-app | feature, UI, data-access, util |
| website | UI, util |
| feature | feature, UI, data-access, util |
| UI | UI, data-access, util |
| data-access | data-access, util |
| util | util |
Domain constraints are additive. Never weaken either constraint to solve a
placement problem. Preserve the documented workspace-shell-util path/tag
exception: its injectable services require type:data-access so app routes can
eagerly import them without loading the lazy shell feature.
Use aliases from tsconfig.base.json and public src/index.ts barrels. Do not
add legacy bare aliases or deep imports. For a buildable library that has a
local package.json, its package name must match its scoped alias.
Validate the Change
Production TypeScript targets under 300 lines; 400 is the hard limit. Tests are
limited to 1200. The legacy baseline may only shrink. See
tools/eslint/max-lines-config.mjs and regenerate after a split with
tools/eslint/generate-max-lines-baseline.mjs; never add a new baseline entry.
Quote recursive globs in command-based lint targets, for example
eslint "apps/<project>/**/*.ts", then compare coverage with
find apps/<project> -name '*.ts' | wc -l.
Discover targets, then run affected lint/test/build targets and the closest
available E2E target; do not invent targets. Canonical guidance:
docs/architecture/nx-workspace-boundaries.md.
Trending
More talk lately.about the whole repository
Who's talking about 4gray/iptvnator
- @github-trending.bsky.social“📦 4gray / iptvnator ⭐ 2,929 (+64) 🗒 TypeScript 📺 Cross-platform IPTV player application with multiple …”Bluesky · Nov 30, 2024 · 3 likes
- @iptvnator.bsky.social“IPTVnator — free cross-platform IPTV player. Available as PWA and native application for macOS, Linux and …”Bluesky · Nov 27, 2024 · 2 likes
- @github-trending-js.bsky.social“📦 4gray / iptvnator ⭐ 2,379 (+68) 🗒 TypeScript 📺 Cross-platform IPTV player application with multiple …”Bluesky · Aug 20, 2024 · 2 likes
- Dispatcharr/Dispatcharr“[Feature]: Parse fallback/backup stream URLs from M3U playlist entries”GitHub · Jun 30, 2026 · 1 reactions
- @dailygithubtrends.bsky.social“今日のGitHubトレンド 4gray/iptvnator IPTVnatorは、m3u/m3u8形式のIPTVプレイリストを再生するクロスプラットフォームのビデオプレーヤーです。…”Bluesky · Dec 1, 2024 · 1 likes
The biggest 5 of 25 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 25
Talked about on GitHub, Bluesky and Stack Overflow (25 times).
On GitHub · 19
- Jun 30, 2026[Feature]: Parse fallback/backup stream URLs from M3U playlist entries — Dispatcharr/Dispatcharr1 reaction
- Jun 17, 2024[Request]: Iptvnator — ScoopInstaller/Extras1 reaction · 1 comment
- Oct 27, 2026Catalog.6: accepted M3U, XMLTV/EPG, playback and history improvements — mkaand/iptvnator0 reactions
- Oct 11, 2026Update iptvnator — AppImage/appimage.github.io0 reactions · 1 comment
- Oct 10, 2026Pisi contrib güncellik panosu — bbssyl/pisi-bump-bot0 reactions · 10 comments
14 more on GitHub
- Sep 26, 2026iptvnator: 0.23.0 -> 0.24.0 — NixOS/nixpkgs0 reactions · 1 comment
- Sep 6, 2026App Request:IPTVnator — wimpysworld/deb-get0 reactions · 2 comments
- Aug 31, 2026iptvnator: 0.22.0 -> 0.23.0 — NixOS/nixpkgs0 reactions · 1 comment
- Jun 30, 2026[Feature]: Parse fallback/backup stream URLs from M3U playlist entries — Dispatcharr/Dispatcharr0 reactions · 1 comment
- Jun 30, 2026Feature: Parse fallback/backup stream URLs from M3U playlist entries — Dispatcharr/Dispatcharr0 reactions · 1 comment
- Mar 31, 2026`gh pr list --search "linked:issue"` returns PRs without any linked issues (False Positives) — cli/cli0 reactions · 6 comments
- Jan 20, 2026[Update Request]: 4gray.IPTVnator (0.18.0) — microsoft/winget-pkgs0 reactions
- Dec 12, 2025使用IPTVnator播放问题反馈 — stackia/rtp2httpd0 reactions · 1 comment
- Mar 23, 2025[Problema] non apre molti canali l'app per OSx IptvNator — Tundrak/IPTV-Italia0 reactions
- Jan 15, 2025CA Template Request - IPTVNATOR — selfhosters/unRAID-CA-templates0 reactions · 1 comment
- Jan 17, 2024gamblec561920@gmail.com — GambleC67328/Gamble-0 reactions
- Feb 15, 2023I made a to-do list to maintain appimage.github.io — AppImage/appimage.github.io0 reactions · 13 comments
- Sep 18, 2021Create iptvnator — AppImage/appimage.github.io0 reactions
- Aug 10, 2021hls.js vs VLC.js ? Youtube + m3u playlists for website/ WP — dougsillars/VideoPlayerComparison0 reactions
On Bluesky · 5
- Nov 30, 2024📦 4gray / iptvnator ⭐ 2,929 (+64) 🗒 TypeScript 📺 Cross-platform IPTV player application with multiple features, such as support of m3u… — @github-trending.bsky.social3 likes and reposts
- Nov 27, 2024IPTVnator — free cross-platform IPTV player. Available as PWA and native application for macOS, Linux and Windows.… — @iptvnator.bsky.social2 likes and reposts
- Aug 20, 2024📦 4gray / iptvnator ⭐ 2,379 (+68) 🗒 TypeScript 📺 Cross-platform IPTV player application with multiple features, such as support of m3u… — @github-trending-js.bsky.social2 likes and reposts
- Dec 1, 2024今日のGitHubトレンド 4gray/iptvnator IPTVnatorは、m3u/m3u8形式のIPTVプレイリストを再生するクロスプラットフォームのビデオプレーヤーです。… — @dailygithubtrends.bsky.social1 likes and repost
- Nov 30, 2024📦 4gray / iptvnator ⭐ 2,929 (+64) 🗒 TypeScript 📺 Cross-platform IPTV player application with multiple features, such as support of m3u… — @github-trending-js.bsky.social1 likes and repost
On Stack Overflow · 1
- May 25, 2025Display TVheadend stream in HTML5 video element without transcoding0 votes · 1 answer
In this repository8 other files it gives its agents.
- AGENTS.mdAGENTS.md
- iptvnator-sqlite-db-workerSkill
- iptvnator-theme-styleSkill
- iptvnator-ui-designSkill
- release-cutSkill
- release-notesSkill
- stalker-portalSkill
- xtream-electronSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

