GraveYardJokes Studios Logo
GraveYardJokes Studios

Blog · TikTok · Discord · Facebook · Instagram

← Back to Blog
· Joshua

July 2026 — GSAP, Redesigns, and a Studio Built for Content

July was the month the portfolio started to feel alive. GSAP animations landed across every project, Studio was rebuilt as a proper content hub, SynthVeil got a full visual redesign, and the auth system analytics got significantly smarter. Here is what actually shipped.

July was a sustained push. No single project dominated — every site in the portfolio got touched, and a few of them changed substantially. Here is the honest account.


GSAP — Portfolio-Wide Animations

The biggest cross-cutting change this month was adding GSAP across every project. Graveyard Jokes, Hollow Press, Lunar Blood, SynthVeil, The Velvet Pulse, and Velvet Radio all got hero parallax, scroll-triggered reveals, and page transitions in the same pass.

Graveyard Jokes also got 3D card tilt on the services section — a small touch that makes the page feel substantially more premium. The ScrollTrigger plugin required explicit registration, which caused a brief production regression before it was caught and fixed.

The animations are not decorative noise. Each one is tied to a scroll position or navigation event. Pages that previously loaded flat now have a sense of depth and progression. It changes how the work reads.


Studio — Rebuilt as a Content Hub

Studio was redesigned from the ground up this month. The previous version was a portfolio showcase. The new version is a content hub: blog, TikTok video log, Discord feed, Facebook posts, and Instagram — all pulled from their respective APIs and presented in one place.

Four new sync commands were added: facebook:sync-posts, discord:sync-posts, tiktok:sync-posts, and instagram:sync. Each one pulls recent content from its platform and stores it locally, so the studio pages are not dependent on live API calls at render time. Facebook and Instagram now appear in the nav and on the homepage.

The mobile nav was also fixed — the hamburger toggle and dropdown were wired up properly, which they had not been since the previous redesign. That was embarrassing in retrospect.

This post is appearing on the new Studio. The irony of writing about rebuilding the blog on the blog is not lost on me.


SynthVeil — Full Redesign

SynthVeil received the first full visual redesign of any portfolio project since launch. The previous version was functional but generic. The new version has an animated gradient hero, a character reveal section, and GSAP scroll animations tied to the releases, shows, and about sections.

The design leans into the SynthVeil brand identity — dark, atmospheric, electronic. It is a substantial departure from what was there before and the first site in the portfolio that feels genuinely distinct rather than a variation on a shared template.


Hollow Press — Artist Cards and Visual Polish

Hollow Press got a visual polish pass. Artist cards now have colorful avatar gradients instead of grey placeholder boxes. Project cards show a gradient placeholder when no cover image is set — previously they collapsed or showed a broken image. Small changes, but the kind that make a demo feel finished rather than scaffolded.

An SSR build regression was also fixed here — the manualChunks configuration was conflicting with the @sentry/react external during SSR builds. The fix (isSsrBuild ? undefined : {...}) was applied across the full portfolio wherever the pattern appeared.


Lunar Blood — Payment Idempotency and Caching

Lunar Blood's payment flow received a reliability upgrade. The idempotency key implementation was hardened: keys are now server-generated, use an atomic Cache::add check, and require orderData validation. A redirect guard was added to the checkout route to prevent duplicate submissions on page reload.

Dashboard queries also got caching added with a short TTL. The event management pages were loading slowly under modest traffic — this brings them in line with the rest of the portfolio.


Auth System — Analytics Gets Smarter

The shared auth system analytics dashboard had three meaningful additions this month.

First, bot filtering. A scopeHuman scope was added to the SiteVisit model and an is_bot index was added to the site_visits table. The analytics dashboard now filters out bot traffic by default, so the numbers reflect actual human visits. The index makes those queries fast at scale.

Second, a social referrals section was added — showing which social platforms are actually driving traffic. Having Search Console, Google Business, and social referral data in one dashboard is genuinely useful for understanding what is working.

Third, a potential clients panel was added. This surfaces visits that look like agency evaluation traffic — relevant for Graveyard Jokes' client pipeline.


Graveyard Jokes — eCommerce Add-On and Scheduling

An eCommerce add-on package was added back to the Graveyard Jokes services page and homepage. It had been removed in the June services overhaul. Based on a few conversations, it was clear that leaving it out entirely was losing leads — so it is back, repositioned as an explicit add-on rather than a core offering.

The social post scheduler also got a bulk-delete endpoint, which makes it significantly faster to clean up or reschedule batches of queued posts. Previously that required individual deletes.


Security and CI/CD — Finishing the Sweep

The Guzzle CVE (GHSA-wm3w/f283/94pj) was patched across every project — Graveyard Jokes, Hollow Press, Lunar Blood, SynthVeil, The Velvet Pulse, Velvet Radio, Noteleks, and Auth System all got the update.

Weekly security audit and daily uptime check GitHub Actions workflows were added to every project that was still missing them. Manual re-run support (workflow_dispatch) was added to the CD workflows across the board.

Noteleks was upgraded from PHP 8.3 to PHP 8.4 and got ESLint and Prettier added to its CI. Legal pages — cookie policy and terms — were added to SynthVeil, The Velvet Pulse, Velvet Radio, and Noteleks, completing the legal coverage across the portfolio.


What Is Next

The portfolio is visually and technically in the best shape it has been. The next priorities are Noteleks enemy art (still placeholder rectangles — that has been the backlog item since May), continuing the Graveyard Jokes client pipeline, and keeping the Studio content updated more consistently.

A month between posts is too long. That changes from here.

If you are looking for web development, design, or social media management — Graveyard Jokes Studios is open. Reach out.

— Joshua, Graveyard Jokes Studios

Stay in the loop

Get an email when a new post goes up. No spam — just new posts.