Inspiration

Content creators and platform moderators waste hours everyday manually scrubbing video timelines, slicing waveforms, and masking frames just to comply with strict monetization and safety guidelines. Traditional video editing is tedious, expensive, and non-scalable. I was inspired to build an automated, cloud-ready "drop-and-forget" utility that handles the messy work of post-production censorship instantly, giving creators an effortless way to keep their content completely safe for any platform.

What it does

CensorShield is an automated video post-production pipeline that strips profanity and blocks sensitive visual material in seconds.Users drag and drop a raw video file into a sleek dashboard. The system splits the file into parallel processing channels: the audio track is analyzed using speech-to-text to map profanity onto precise millisecond timestamps and swap them with a 1000hz sine-wave beep tone. Simultaneously, the visual tracking engine scans the video at 1 frame per second, generating relative coordinate bounding boxes over explicit or violent content to overlay a high-density blur mask. Users receive a clean, fully sanitized, platform-ready video file alongside an interactive timestamp transparency log.

How I built it

Frontend: Built using React.js and TailwindCSS, featuring a multi-stage rendering progress bar and an HTML5 media player to preview the final, processed outputs.

Backend & Media Engine: Powered by Node.js and Express. I used multer for stream ingestion and drove server-side binary media execution using fluent-ffmpeg to map volume drops, generate sine audio frequencies, and render visual blur masks

Challenges I ran into

Handling video files without crashing the server's main event loop was incredibly difficult. Standard sequential processing would cause memory drops on large high-definition uploads, requiring me to implement tight streaming mechanics.

Furthermore, building this on MeDo.dev added intense platform friction. The AI engine repeatedly polluted the media controllers with unnecessary Chinese variables, system comments, and syntax regressions that required immediate manual cleanup. Worst of all, MeDo continuously corrupted the JWT middleware state logic between upload chunks, frequently dropping user context entirely. I had to pause the build multiple times, force the AI to do granular structural code analyses, and hard-verify our cookie extraction arrays to stabilize the session security.

Accomplishments that I am proud of

I am proud of engineering a bulletproof binary processing pipeline using code-driven FFmpeg commands that accurately stitches modulated audio back into blurred video streams. Overcoming the constant MeDo language shifts and locking down a fully functional, stable JWT authentication loop across unstable media uploads is a huge win for me. Standing up an asynchronous framework that handles data securely without relies on expensive, bloated SaaS video editors feels incredible.

What I learned

Watching the AI platform spin up multi-stage file streams and complex command-line configurations in a jiffy completely blew my mind—it was an absolute "WTF" moment that proved how quickly a project can scale when you use generative tools correctly. I learned how to handle binary files as raw input streams to prevent server strain, and how to read normalized relative coordinate percentages (relativeX, relativeY) to ensure our visual masks scale flawlessly across different resolutions, from mobile vertical screens to 1080p video profiles.

What's next for CensorShield

The potential for CensorShield is massive. Next, I want to scale the background execution logic into a distributed worker network using Redis and BullMQ to handle thousands of concurrent video uploads simultaneously. I also plan to build an interactive, frontend timeline editor where creators can preview flagged frames and "un-censor" specific segments with a single click if they want a light edit instead of a total lock.

Built With

Share this project:

Updates

Submission history