Skip to case study
HENRY MARKS

Hudson Creative
Calendar

A content planning and approval app I designed and built for Hudson Creative’s restaurant clients.

I built the app around my own work managing restaurant social media, using Lovable and Claude Code to develop it. It brings content calendars, creative assets and client approvals into one place.

My role
Design, building with AI tools,
testing & documentation
Built for
Hudson Creative’s team
and restaurant clients
Timeline
October–November 2026
Launched October 12, 2026
The team’s Today screen, with upcoming posts and their publishing actions
The Today screen shows upcoming posts and anything that still needs work. All content shown is sample content.

The Problem

At Hudson Creative, I manage social media content for multiple restaurant clients, which means constantly planning posts, organizing photos and videos, writing captions, scheduling content, and coordinating client approvals before anything goes live.

While the process sounds straightforward, managing content across multiple restaurants can get complicated quickly. Each client has their own content calendar, brand guidelines, creative assets, and approval process. I needed a way to keep everything organized while making it easy for clients to review their upcoming posts.

Calendar view showing scheduled posts across restaurant accounts
The calendar brings every restaurant’s posting schedule into one view.

Throughout 2026, I tested a number of social media management platforms, including Later, Metricool, Hootsuite, Buffer, and Planoly, to find a better way to manage content calendars. While each had its strengths, none fully solved the problem I was facing. The biggest issue was the client experience. Most required clients to create an account, log into a third-party platform, and learn how to navigate unfamiliar software just to review and approve a few Instagram posts. For restaurant owners and managers who already have plenty on their plates, it felt like an unnecessary extra step.

In the meantime, I was managing content calendars through Google Sheets. While it worked as a temporary solution, it wasn't designed for social media management. Every restaurant had its own spreadsheet, and I was constantly switching between calendars, tracking down photos and videos, and manually keeping up with revisions and approvals. As the number of clients grew, the process became increasingly difficult to manage.

Another challenge was keeping track of which accounts needed posts on which days. With so many restaurant accounts to manage, and publishing dates changing as we planned and revised content, it was difficult to keep the schedule straight. I needed to be able to look at one calendar and see exactly which restaurants had posts scheduled for each day, rather than checking every account separately.

I realized I didn't need another platform packed with features I'd never use. I needed something built specifically for my workflow, with a centralized system for managing content and a straightforward way for clients to review and approve their posts.

What I Built

I decided to build a web app specifically for the content planning and approval process at Hudson Creative. Rather than trying to recreate an existing social media management platform, I focused on the parts of my workflow that needed improvement: organizing content across clients, simplifying the approval process, and making everything easily accessible when it was time to publish.

The app brings every restaurant's content calendar into one centralized platform. I can plan upcoming posts, assign publishing dates, upload photos and videos, write captions, and track approval statuses without having to manage everything across separate documents and folders. Each restaurant has its own organized calendar, while I can oversee all of the accounts from the same system.

The Clients tab with restaurant content calendars
Each restaurant has its own workspace, accessible from the Clients tab.

The client experience was one of my biggest priorities. I wanted reviewing content to be as easy as opening a link, without requiring clients to create an account or learn how to use another platform. Each restaurant has its own private link where the client can view upcoming posts, see the accompanying photos or videos, read captions, and approve content. I kept the interface simple so clients could focus on reviewing their posts rather than figuring out how the software works.

I also designed the app around the actual publishing process. Previously, getting a post ready could involve locating the approved caption, finding the correct media files, and checking multiple places to confirm everything was finalized. Now, I can access the approved content, creative assets, and publishing details together on one screen.

The result is a platform that brings the entire content planning and approval process into one place, making it easier for me to manage multiple restaurant accounts while keeping the experience straightforward for clients.

The Main Screens

The team moves between three main tabs: Today, Clients and Calendar. Each gives us a different view of the same content, depending on whether we’re preparing to publish, working on a restaurant’s posts or planning the month.

Today

This is where the team checks what needs to be published today and tomorrow. Each post includes its caption, media and approval status, with actions to download the files, copy the caption and mark it as posted. It also brings attention to posts that still need work.

Today screen in Hudson Creative Calendar

Clients

The Clients tab brings the restaurant accounts together in one place. Each account shows a summary of its content, including drafts, approvals, posts waiting on the client and replies to read. Opening a client takes the team into that restaurant’s workspace.

Clients screen in Hudson Creative Calendar

Calendar

The Calendar tab shows scheduled posts across all restaurant accounts in one monthly view. I can look at any day and see exactly which accounts we need to post for, without opening each restaurant’s individual calendar.

This was especially important because we manage so many accounts and publishing dates often change. Having the schedule together gives the team a reference for what is planned on each day, instead of relying on memory or checking separate spreadsheets.

I can also filter the calendar to a particular restaurant. Status colors show which posts are drafts, waiting for approval, approved or posted, and holidays and food days are marked alongside the schedule.

Calendar screen in Hudson Creative Calendar

Inside a Client’s Workspace

Each restaurant has its own posts, media library and notes. The list, grid and calendar views show the same content in different ways: the list is for day-to-day planning, the grid shows the feed together, and the calendar places posts in the month. The library holds the media, while the post editor brings the selected photos, caption and preview together.

A restaurant’s workspace showing its posts, list, grid and calendar views, and access to notes and the media library
Media library alongside a restaurant’s posts, showing folders, upload controls and used-photo labels

Planning, Reviewing and Publishing Content

The app has two sides: a workspace where the team manages content, and a private page where each client reviews their posts. I designed the workflow to make it clear what is still being drafted, what is waiting on the client and what is ready to publish.

  1. DraftPrepare the media, caption and date.
  2. SharedChoose what the client can see.
  3. ApprovedApprove the content or request a change.
  4. PostedPublish it, then mark it as posted.

List, grid, calendar

The same posts can be viewed three ways. The list is for day-to-day work, the grid shows how the feed will look, and the calendar shows the whole month.

We use the list most. The calendar marks holidays and food days, which helps when planning around them.

List, grid and calendar views of the same posts.

Writing and Editing Posts

The post editor brings the caption, photos and videos together in a side panel, with a live preview showing how the post will appear to the client. I can work on the content while keeping the rest of the calendar in view.

Drafts save automatically as I work. For posts that have already been shared, edits stay private until I select “Save and close,” so the client sees the finished version.

The post editor: work on the caption alongside a preview.

Client Reviews and Approvals

Each client has a private link where they can review upcoming posts without creating an account. Photos, videos and captions appear together, and clients can click through carousel slides or switch to a grid view to see how the posts look as a feed.

Clients can approve individual posts, approve a batch or request a change and leave a note. Feedback stays attached to the relevant post, so the team can see exactly what needs attention. Drafts and internal team notes are only visible to the team.

Approval applies to the content rather than the publishing date, so an approved post can be rescheduled without asking the client to review it again.

Requesting a change keeps the feedback with the post.

Sharing Content with Clients

The team selects the posts that are ready for review and shares them to the client’s page. The share button confirms how many posts will be shared and copies the client’s private link.

We then send the link through the channel we normally use with that client. The app doesn’t send emails or texts automatically, and posts that are still in draft remain private.

Sharing selected posts and copying the client’s review link.

Preparing to Publish

The Today screen shows posts scheduled for today and tomorrow, with the caption, media and approval status together. It gives the team a place to check what is ready to go live and what still needs attention.

Each post has controls to download its photos and videos, copy the caption and mark it as posted. Missing media, missing captions and outstanding approvals are flagged on the same screen.

Publishing happens outside the app. Once a post is live, marking it as posted updates its status for the whole team.

Downloading media, copying a caption and marking a post as posted.

Using the App on a Phone

The team can access the calendar and prepare posts from a phone as well as a computer. The mobile Today screen presents posts as cards, with controls to copy captions, download media and mark content as posted.

Posts open in a full-screen editor, with the close button kept within reach and space for the keyboard while typing. Media can be saved to the camera roll for posting from the phone.

The client review page also works on mobile. Restaurant owners and managers can open their link, review the content and respond without installing an app.

The team’s posting-day view.
The client’s review link.
A post on a phone.
The feed on a phone.

Try the Client Page

The demo uses the same client interface as the app, with sample posts for a fictional restaurant. You can review the media and captions, approve a post, request a change or switch to the grid to see how the feed looks together.

Open demo in a new tabChanges in the demo are not saved. If the embedded page doesn’t load, open it using the link above.

How I Built It

I started by designing the first version in Lovable. This gave me a starting point for organizing the app around the team’s content calendars and the client review page. I then moved it to its own hosting and database so I could continue developing it with Claude Code.

I didn’t write the code myself. I was responsible for deciding what the app needed to do, how the screens should work and whether the results matched the workflow I had in mind. I used AI tools to build those decisions into a working app, then tested and refined it as we started using it.

Defining the workflow

I used the work I was already doing at Hudson Creative to decide what the app needed to support: planning content for multiple restaurants, organizing media, writing captions, collecting feedback and preparing approved posts for publishing.

That also meant deciding what the team and clients should each be able to see. The team needed access to drafts, internal notes and editing tools, while clients needed a straightforward way to review the content shared with them. Those differences shaped both sides of the app.

Building with Claude Code

I described features and changes in plain English, using screenshots when I needed to point out a layout issue or explain how an interaction should work. My instructions covered the behavior as well as the appearance. For example, I explained when a post should become visible to a client, what an approval applied to and how feedback should stay attached to a post.

After a change was built, I tried it in the app and checked whether it worked the way I intended. If something was confusing or didn’t behave correctly, I explained the problem and continued working through it. This was an ongoing process of giving direction, reviewing the result and testing it in the context of the actual work.

Testing the app

I used a test client to try new features without affecting real client posts. This gave me a separate place to work through the planning and review process before using changes with live content.

The app also records browser errors, which helps identify problems that happen on someone else’s device. Testing on my own computer was only part of the process; using the app with the team also showed me where the experience needed more work, particularly on phones.

Developing it through daily use

Once the app became part of our day-to-day work, I could see which parts were useful and which still made simple tasks harder than they needed to be. I continued developing it around that experience, including the post editor, approval statuses, rescheduling and mobile layouts.

Because I was also using it to manage my own accounts, I could assess changes against the work they were meant to support. The question was whether I could plan the content, get it reviewed and have everything ready when it was time to publish.

Writing the documentation

I wrote a guide for the team explaining how to use the app, along with a separate guide for whoever maintains it next. The team guide supports day-to-day use, while the maintenance guide provides a handoff for continued work on the app.

Both were part of making the project usable beyond my own involvement, so there was a written reference for the people using it and the person responsible for maintaining it.

From an Idea to a Working Platform

The app officially launched on October 12, 2026, and became part of my day-to-day workflow. I now use it to manage content across restaurant clients, with one central place to organize upcoming posts and a simpler way for clients to review and approve their content.

One of the most valuable parts of this project was approaching a problem from both a marketing and product perspective. Because I was dealing with these challenges firsthand, I had a clear understanding of what needed to change and which features would actually be useful.

Rather than continuing to work around the limitations of existing tools, I was able to identify a problem in my own workflow, design and build a solution, and turn it into a working product that I now use in my role.