Big Little Brother

Business systems AngelFire Ammunition

AngelFire Ammunition, a Kansas ammunition manufacturer in Saint Marys

Work for AngelFire Ammunition

Each entry below is a business problem, what I built for it, and the result.

hello@biglittlebrother.dev

Operations

Running the business day to day

Demo data

Production planning

A planning tool that shows what every product can still be made from the components left.

Tools QuickBooks · BigCommerce · Node · AI (Claude) Try it

Demo data

One home for internal tools

One private hub that links the company's internal apps, with a single login shared across several of them.

Tools Python · Flask · PostgreSQL · AWS · AI (Claude) Try it

Demo data

Preorder tracking

A dashboard that tracks shelf stock, promised stock and what still needs building.

Tools Python · Flask · PostgreSQL · ShipStation · AI (Claude) Try it

Demo data

Dealer onboarding

The company's own dealer application form, with one confirmed approval that creates the dealer's store account.

Tools Python · Flask · PostgreSQL · BigCommerce · AWS · AI (Claude) Try it

Demo data

Consignment

One app for the whole consignment cycle: sending stock to a dealer, recording sales, marking reports paid and taking returns.

Tools Python · Flask · PostgreSQL · BigCommerce · AI (Claude) Try it

Demo data

Inventory counts

Scheduled shelf counts and box-size conversions, with every change made through the app recorded.

Tools Python · Flask · PostgreSQL · BigCommerce · AI (Claude) Try it

Demo data

Back-in-stock alerts

A back-in-stock sign-up and waitlist on the company's own email system, replacing a paid outside service.

Tools PHP · MySQL · BigCommerce · AWS · AI (Claude) Try it

Demo data

Issue reporting

An online report form that opens only after a customer enters a real lot number, feeding a staff tracker.

Tools Python · Flask · PostgreSQL · AI (Claude) Try it

Referral program

The problem
AngelFire wanted to reward customers for bringing in new customers, without paying out on dealer accounts, on people referring themselves, or on the same order twice.
What I did
I built a personal share link for every retail customer, and a panel on their account page showing their link, their referrals and their store credit. When a referred retail customer's first order comes in, both customers get store credit automatically.
The result
Both customers get their credit automatically, and the same order can never pay twice. Customers see their link, their referrals and their credit on their own account page, and existing customers have a reason to bring in new ones. Every step leaves a record.

Tools PHP · MySQL · BigCommerce · AI (Claude)

Demo data

Social relaunch

A tagged photo library and a weekly review board that drafts posts for a person to approve.

Tools Python · Flask · a vision model · AI (Claude) Try it

Marketing

Promotion, email and pricing

Shipped work

Weekly promotions

A weekly build process that produces every piece of a promotion from one brief, with checks before each file is written.

Tools Python · Node · BigCommerce · Sendy · AWS · AI (Claude) See it

Demo data

Sale prices

Sale-price displays for product cards and pages, built so the price shown equals what checkout charges.

Tools Node · BigCommerce · AI (Claude) See it

Analytics and search

Measurement, and being found

Weekly reporting

The problem
The weekly promotion report drew on four systems: the store, email, shipping and web analytics. Its numbers were worked out from scratch each week, with no fixed method, so a comparison with last week could not be reproduced, and nothing stopped a confident conclusion from resting on thin evidence.
What I did
I built a pipeline that collects each week's data into one place and computes the week-over-week figures the same way, every time. Missing data is labeled missing rather than shown as zero, and every report is checked by a separate AI reviewer that had no part in writing it, before it is delivered.
The result
The weekly report is ready sooner. Each week is measured the same way, so one week can be compared fairly with the next, and next week's promotion is planned from findings that have already been through that review. Every computed number can be rechecked from the saved data, and nothing missing is hidden.

Tools Node · BigCommerce · ShipStation · Sendy · Google Analytics · AI (Claude)

Demo data

Public lot data

Production lot records published as a public lot lookup and a ballistics chart.

Tools Python · Flask · AI (Claude) Try it

Search data

The problem
Search performance was checked by exporting reports by hand. The exports were capped, so many searches never showed, and the search provider deletes older history, so the past was disappearing.
What I did
I built a pipeline that moves all the search history still available into the company's own database and keeps it current, with a dashboard and a weekly report. If a pull fails, an alert goes out.
The result
The company keeps its own search history, and nobody exports and stitches reports together by hand. After a site change, its effect on search can be checked against that history. The data set the direction: effort goes to the niches the site can win, rather than broad searches it cannot win yet.

Tools Python · PostgreSQL · Flask · Search Console · Google Analytics · AI (Claude)

Search engine data

The problem
The site's structured data, the behind-the-scenes labels search and answer engines read to understand each product, came from two places at once: the store's own theme and a paid SEO app. The two disagreed. The standard validator reported severe errors on product pages, and the labels claimed free shipping and delivery within a day, which was not true.
What I did
I rewrote the product labels and built the site-level ones new, for every product and for the site itself, and removed the false shipping claims.
The result
When it was tested, the validator reported zero severe errors, and all the products checked passed. The false shipping claims are gone, and the paid app has been removed and is no longer paid for.

Tools BigCommerce · structured data · AI (Claude)

Brand

One brand

The problem
AngelFire sold its budget line under a second brand that looked, to a customer, like a completely separate business, with its own website, phone number, customer service contact, Google business listing and social accounts. AngelFire was the stronger, longer-established name, and already an authority on remanufactured ammunition, so the second brand was competing with AngelFire for the same searches and visitors.
What I did
I wound the second business down in stages. It stopped operating on its own, and its remaining stock moved onto the AngelFire website as a second brand so it could sell through. Once it had, the second brand was removed entirely, and its old web address now leads to AngelFire.
The result
One established brand now carries the whole remanufactured range, under one name. There is one business to run instead of two: one website, one phone number, one customer service contact and one set of listings, at a significantly lower cost than two storefronts and everything behind them. Customers find one name, one store and one place to get help.

Tools BigCommerce · AI (Claude)