Author: Builder 02

  • Build Log 006 — Social MVP and Foundation Recovery

    Category: Build Log
    Author: Co-Builder
    Status: Draft or Publish
    Tags: build-log, social, social-feed, member-posting, roles, access, functions-php, composer, uploads, og-links, foundation, codex-workflow


    Build Log 006 — Social MVP and Foundation Recovery

    This checkpoint marks the first working member Social system inside No Signal Media.

    The work started with a foundation issue and ended with a much clearer system. Earlier in the build, a simplified functions.php overwrite caused existing No Signal modules to lose functionality. That became an important lesson: No Signal Media is now too interconnected for foundational files to be replaced casually.

    From here forward, functions.php must always be amended from the current working version, not restarted from a thinner copy.

    That recovery led directly into a cleaner modular structure and the first usable Social MVP.

    Foundation Recovery

    The project is still built on the established No Signal Media foundation:

    • WordPress
    • Twenty Twenty-Five child theme
    • ACF
    • Members
    • Core pages for Home, About, Radio, TV, Social, Learn, Private, Meet, My Room, Account, and Settings
    • Logged-out navigation limited to Home and About
    • Logged-in navigation expanded across the full No Signal experience

    The foundation confirms the core WordPress setup, page list, navigation model, and the purpose of the conditional navigation plugin.

    The conditional navigation plugin switches the active Twenty Twenty-Five block navigation depending on whether the visitor is logged in or logged out.

    The access rules plugin separates public and private page behavior and redirects logged-out visitors away from private sections.

    Module Structure

    The Social MVP now lives inside the child theme module structure:

    “`text
    /wp-content/themes/no-signal-media/inc/

  • Build Log 005: The Current Becomes a System

    This build started as a simple question:

    Can news feeds be filtered into a cryon, ticker, or crawl?

    The answer turned into a working feature called The Current.

    The Current is now the first version of a live signal layer for No Signal Media. It can display short broadcast-style messages across selected pages, using either imported feed items or manually launched admin messages.

    What Changed

    The first version of the RSS intake system is now working.

    We added a new flow:

    Feed Source

    Feed Item

    Signal Item

    The Current

    A feed source can now pull in RSS items, create reviewable feed records, and convert those records into ticker-ready Signal Items.

    The system started with a manual approval path. Then we expanded it to support auto-import and auto-publish options. That makes it possible for trusted sources to feed The Current without needing every item approved one at a time.

    Human Signals

    The bigger realization was that RSS should not be the only source.

    No Signal also needs a human broadcast layer.

    That led to the Human Signals idea:

    Human Signal

    Signal Item

    The Current

    Human Signals are meant for admin-written messages, alerts, scheduled notes, and reusable announcements. They are not just one-off ticker text. They are a source type.

    This creates room for things like:

    SITE: Build Log 005 is live.
    RADIO: Quiet Current is now featured.
    SYSTEM: Maintenance window starts soon.
    LIVE: New session starting in 20 minutes.

    Human Signals can be drafted, scheduled, edited, launched, and eventually expired.

    Signal Lifetime

    Signal Items now support timing.

    The working model is:

    Timed signals expire automatically.
    Always-on signals stay active until manually removed.

    The practical defaults are:

    RSS Signal Items: short lifespan
    Human Signals: flexible lifespan
    Always On: no end date, no auto delete

    This lets The Current stay fresh without turning into another archive that has to be cleaned up manually.

    Template Parts

    The app shell also started to move in the right direction.

    The old page template carried too much responsibility. Header, Rooms nav, Tools nav, page content, and footer were all living together inside one file.

    We started breaking that apart into block theme parts:

    parts/nsm-header.html
    parts/nsm-nav-rooms.html
    parts/nsm-nav-tools.html
    parts/nsm-footer.html

    The page template now acts more like a shell assembler instead of a giant markup file.

    That is the right architecture for where No Signal is heading.

    CSS Split

    We also began separating the shell styles into smaller files:

    nsm-header.css
    nsm-nav.css
    nsm-shell.css
    nsm-footer.css
    nsm-ticker.css

    This was not a clean straight line. One functions.php pass broke the backend, so we rolled back to the older stable version and rebuilt carefully.

    That was the right move.

    The current rule is simple:

    Make one change. Test it. Then move to the next layer.

    Footer and Ticker Behavior

    The ticker now behaves more like a fixed broadcast bar.

    The important design decision:

    The footer should never feel like it scrolls underneath the ticker.

    The footer needs enough spacing so it lands naturally above The Current. The ticker itself can stay fixed, but the page should still feel like it has a real ending.

    This is part of making the app shell feel intentional instead of patched together.

    Current Status

    Working now:

    RSS intake works
    Feed Items import
    Signal Items display in The Current
    Ticker styling is moving into theme CSS
    Template parts are created
    Page shell has started moving into parts
    Footer, header, nav, shell, and ticker CSS are being separated carefully

    Still in progress:

    Final Human Signals workflow
    Cleaner empty ticker behavior
    Better scheduled launch controls
    Final mobile ticker and bottom nav spacing
    Full cleanup of duplicate or older CSS

    Build Note

    This was a useful build because it exposed the difference between a feature and a system.

    A ticker by itself is small.

    A ticker connected to RSS, Human Signals, scheduled alerts, page shell architecture, and member navigation becomes something else.

    It becomes a broadcast layer.

    That is the real feature.