Skip to content
Building 'Nexus Share' with Kiro and Q Developer
November 28, 2025 • Lockhead

Building 'Nexus Share' with Kiro and Q Developer

One problem of social media

As some of you know I’m active on a few social media page - mainly Linkedin, but also X/Twitter, Bluesky, Threads. A problem that I’ve always had is that it takes a lot of time and energy t o get content spread out accross multiple pages, especially if you want to also mention friends or colleagues.

There are a few SaaS offerings for that already, but none of them really works for me. Or I would need to pay for it myself :-)

I’ve tried a few and some of them add branding (that I don’t want), others are hard to use, others are missing features… So I decided to try to build something myself and offer it as a SaaS solution :-)

So I’ve built Nexus Share.

A lot of learnings already

I’ve had this idea for a longer while, but it really kicked off when I got my Q developer licence and when I started to play around with Kiro. As most of my recent projects, I’m focussing on making this a multi-platform application using Flutter. But this time, the application needs a proper backend, using serverless technologies - GraphQL, Lambda, Eventbridge, DynamoDB, …

I’ve already learned a lot since I started to build this - how to guide the agents to work efficiently in a more complex setting, how to teach flutter to read the proper backend configuration, how Amplify Flutter SDK handles OAuth2 credentials, …

How I built what Nexus Share is today

When I started this project, I was using AWS Q Developer for most of my development tasks. Throughout the project, I got access to Kiro and started to use it for a lot of the bigger features. Since we are able to pay through the AWS Identity Center (IDC) for Kiro, I’ve migrated my Q Developer Subscription to use it with Kiro. Let’s see how long it lasts.

Both tools are very powerful in creating all kind of code - as long as you steer them correctly and makethe tasks small and understandable. The calendar view that we just launched was created by Kiro within 60-90 minutes - and I needed to only prompt it once for the “Specs” of the calendar view. Of course, afterwards a few changes and improvements where required, but the whole feature was ready within less than 24 hours!

What Nexus Share can do for you today

A few weeks ago Nexus Share officially “launched” - we already have sent out more than 100 invites to join the application!

You can use Nexus Share to post, plan and schedulue social media pressence accross X/Twitter, LinkedIn and Bluesky. You can write single-posts to one or multiple social networks or you can schedule up to 10 posts at once.

AI helps you to write better posts, to indlude appropiate tags or to schedule posts at the perfect point in time. AI supports you to write different types of posts and you can get detailed analytics about your usage.

Since earlier this week, Nexus Share allows you to switch to a different time zone…and while you’re reading this, we have just lauched “Calendar View” that shows all of your past and future posts on a calendar.

The Leaderboard & User Cards can be shared to show how active (or inactive) you are.

Nexus Share calculates and keeps track of you posting and activity streak and can also send you reminders if you are not holding up with your own “goals” of number of posts.

Nexus Share has evolved to a pretty powerful model - and you are able to choose between a free plan and three different paid plans: pro, business, enterprise.

The application is not only available on the web, you can also use it and access your subscription on iOS and Android - as we have a mobile app that you can use.

The vision

When I started to build this application I wanted to solve my very own problem of marketing my YouTube channel. I’ve achieved the original goal of having a tool to self-market my created content. The tool can obviously be used not only for YouTube, but also for any other type of content.

Architecture overview

This project is composed of 2 main components:

  • the Backend that exposes a GraphQL API
  • the Frontend that exposes a Web Interface interacting with the GraphQL API

Backend

The Nexus Share backend is deployed as GraphQL API using AWS Serverless technologies:

  • AWS AppSync to provide the GraphQL API
  • AWS Lambda for business logic and integration with social networks
  • Amazon DynamoDB for data persistence
  • AWS Cognito for Authentication and Authorization
  • AWS CloudFront for content delivery
  • Amazon Bedrock for AI-powered content enhancement and generation
    • Content enhancement and optimization for different social networks
    • Post generation from topics and prompts
    • Tone adjustment (professional, casual, engaging)
    • Hashtag and mention suggestions
    • Multi-language support with usage limits by tier

The AWS Cloud Development Kit (CDK) provides the infrastructure-as-code used to deploy to a live AWS environment. You can find all of the above under the ‘/backend’ folder in the repository.

Frontend Application - Web

  • Technology: Flutter Web
  • Hosting: Amazon S3 + CloudFront
  • Authentication: AWS Cognito
  • API Communication: AWS Amplify

Frontend Application - Android and iOS

  • Technology: Flutter
  • Hosting: N/A
  • Authentication: AWS Cognito
  • API Communication: AWS Amplify

The frontend application provides a responsive user interface for:

  • Creating and editing posts
  • Scheduling posts for future publication
  • Managing social network connections
  • Viewing post history and analytics

System Architecture

Monitoring

External Services

Data Layer

AI Services

Compute Layer

Authentication

API Gateway

CDN & Hosting

Client Layer

HTTPS

Serve Static Assets

Cache

GraphQL Queries/Mutations

Auth Requests

OAuth2 Flow

Performance Metrics

Authorize

Invoke

Invoke

Invoke

Invoke

Read/Write

Upload Media

Enhance Content

Publish Posts

Publish Posts

Publish Posts

Publish Posts

Publish Posts

Publish Posts

Schedule Events

Process Webhooks

Store Tokens

Authenticate

Authenticate

Authenticate

Authenticate

Authenticate

Authenticate

Logs

Logs

Logs

Logs

User Browser

Flutter Web App

AWS CloudFront

S3 Static Hosting

AWS AppSync

GraphQL API

AWS Cognito

User Pool

OAuth2 Service

PKCE Flow

Lambda Functions

Post Management

Lambda Functions

Social Publishing

Lambda Functions

Scheduling

Lambda Functions

Webhooks

Amazon Bedrock

Content Enhancement

DynamoDB

Posts, Users, Contacts

S3 Bucket

Media Storage

Stripe

Payments

LinkedIn API

X/Twitter API

Bluesky API

Threads API

Mastodon API

Slack API

CloudWatch

Logs & Metrics

CloudWatch RUM

Frontend Monitoring

Frontend Architecture

External APIs

Data Access

Business Logic

State Management

Presentation Layer

Use

Use

Manage

Call

Call

Call

Call

Call

Call

API Calls

API Calls

API Calls

Upload

Cache

Persist

Query/Mutate

Authenticate

Upload Files

Screens/Pages

Reusable Widgets

Provider State

Data Models

Auth Service

Post Service

OAuth2 Service

Media Service

Feature Flag Service

Theme Service

GraphQL Client

Amplify

Local Storage

SharedPreferences

AppSync GraphQL API

Cognito Auth

S3 Media Storage

Cards and Leaderboards & Join page

We are also hosting a “Join” page for quicker loading times under the same CloudFront instance as the Flutter Web page - Join page. This page is built using Angular and it connects to the GraphQL API using the Amplify SDK.

In addition to that there is the page that we have: Leaderboard & User Cards

This is a different CloudFront instance that also hosts an Angular application - which then loads the already generated profile cards from the S3 backend and displays the leaderboard and statistics and information about the users. Also here we’ve choosen Angular because it loads faster than Flutter.

Next steps

What’s next? I would like to continue to grow the user base and get more people to try out if the toolworks for them. I am aiming to get offer the service for free for a bunch of the AWS Community (Community Builders, Heroes, User Group) - if you are part of one of these groups and would like to give it a try, please reach out to me personally.

Also I would like to optimize the used prompts under the hood and the User Experience.

I’ve been asked to provide an API (GraphQL or REST) - would you be interested in using that to coordinate your social media posts? Please let me know.

How to get involved

Join the waitlist, once you are invited set up an account, connect your social media accounts and start posting.

And then, start giving feedback.

Use the in-app feedback system to provide feedback on what is or what is not working well. If you have ideas on how to improve the User Experience or if you find anything that could be simpler - LET ME KNOW!