If you have ever wanted to get into programming, but never wanted to learn how to code, the day of A Written: November 29, 2025 If you have ever wanted to get into programming, but never wanted to learn how to code, the day of AI tools is here and it is quick and easy and ANYONE can code now. Sersiously, just download VSCode from Microsoft, then inside there is an AI chat window that can create and modify files... thus to program in modern times, below is what the "prompt" would look like for a beta version of an application. As you can see you need to explain a ton of details, or you should anyways, BUT the same tool can help you work through all that and writing this code. ==================== You are assisting in the creation of a small, self-contained television station system. The goal is to build a broadcast screen, a control panel, and a scheduling engine that work together smoothly. Focus on behavior, structure, and outcomes while using the technology stack and practices listed below. The environment is a Windows machine using VS Code. Technology Stack To Use o Frontend: React + TypeScript, built with Vite o Styling: Tailwind CSS o Drag and Drop: react-beautiful-dnd or @dnd-kit o Real-time Communication: WebSockets using the ws library o Backend: Node.js with Express o Data: JSON during early development, with an eventual migration to SQLite o Video Playback: HTML5 video served by Express with range request support Use this stack consistently throughout development. Version Control Requirements You must use Git for all project work and keep the repository in a clean, professional state. Your responsibilities include: o Initializing a Git repository for the project o Creating an appropriate .gitignore for Node.js, Vite, and build artifacts o Making small, focused commits with clear commit messages that describe what changed and why o Structuring work into logical steps so that each commit represents a stable, working change o Using branches when adding major features or refactors, and merging them back in a controlled way o Ensuring the main branch remains buildable and deployable at all times Treat Git as part of the development process, not an afterthought. Core System Overview The system consists of three major parts: The Broadcast Screen The public-facing view. It plays whatever is currently active in the schedule such as movies, commercials, short features, announcement cards, or station IDs during pauses. It always reflects the current position in the schedule. The Control Panel The private station console. It shows what is playing now and the next ten items in the queue. Items in the upcoming lineup must be draggable so the operator can reorder programming at any time. The panel must also allow the operator to: o start commercials o run short spots o show announcement cards o pause and resume the current movie When these actions occur, the overall schedule must adjust automatically. The Program Shelf The library of all content the station can air, including: o movies o commercials o short spots o scheduled announcement cards Each item has a running time. Movies can be paused and resumed. Commercials and spots always play to completion. Scheduling Requirements The system must maintain a living, dynamic schedule based on the current lineup. It should: o Automatically fill at least ten upcoming slots o Support drag and drop reordering of the schedule o Calculate accurate start times for all upcoming items based on their durations o Recalculate start times immediately when the lineup changes o Pause movies when commercials or spots run, then resume them at the correct position o Include announcement cards with accurate timing o Maintain precise timing so the operator can see what is coming up and when it starts Operator Experience The operator should feel like they are running a real late-night television station from a single console. They must be able to: o Watch the live broadcast o Adjust the schedule on the fly by dragging items o Insert commercials or announcement cards instantly o Trust that all timing and playback remain accurate o View a clear rundown of upcoming programming with real start times o Manage the entire station from within the control panel Overall Objective Create a complete, reliable broadcast system where the control panel, broadcast screen, and scheduling engine operate as a unified whole. The final product should behave like a small, professional television station that one operator can run confidently, with all work tracked and managed through Git.