Price Genie is Now Open Source — Let's Build Smarter Pricing Together


Price Genie is a simple yet powerful pricing calculator that helps entrepreneurs, freelancers, and small businesses determine fair, profitable rates for their products or services. Designed with cost-based pricing principles, Price Genie empowers you to make informed decisions based on your actual costs, expenses, and target profit margins.
“Take control of your pricing with logic, not guesswork.”
LIVE DEMO
NPM Package
GitHub Repository
Why Open Source?
Sometimes, generosity strikes hard.
After receiving tons of great feedback from freelancers, business owners, and developers who tried out Price Genie, I decided to open-source it. Why? Because the mission goes beyond just being "my tool." I want this to evolve into something bigger — something we can all build together to empower small businesses and creatives everywhere.
I believe in accessible tools. I believe in better systems for pricing. And I believe in collaboration.
What Is Price Genie?
Price Genie is a modular TypeScript-based pricing engine designed to help individuals and small businesses simulate pricing models based on their costing, margins, and production limits.
It gives you full control over your:
Costing breakdown (unit cost, quantity)
Simulated outputs (SRP, total supply, margin projections)
Pricing strategies (fixed price)
All done using a structured, highly readable class-based system.
Features
Calculate ideal prices based on costing breakdown
Transparent computation logic with per-item control
Built for freelancers, creatives, startups, and service providers
Written in TypeScript — fully typed, no runtime dependencies
Supports fixed markup, profit targets, or manual override
Modular and extensible class structure
Lightweight — zero dependencies
Installation
npm install @thezelijah/price-genie
Usage
Step 1: Initialize and Setup Price Genie
Basic Setup
import { PriceGenie, type CostingItem } from '@thezelijah/price-genie';
const genie = PriceGenie.initialize();
const sampleCostingItems: CostingItem[] = [
{
label: "Labor",
description: "Skilled worker wages for assembly and packaging",
quantity: 20,
unit: "hrs",
unitPrice: 250,
amount: 5000,
costMargin: 0.25,
multipliers: {
quantity: 1,
unitPrice: 1,
},
},
{
label: "Raw Materials",
description: "High-quality wood used for furniture production",
quantity: 10,
unit: "pcs",
unitPrice: 750,
amount: 7500,
costMargin: 0.2,
multipliers: {
quantity: 1,
unitPrice: 1,
},
},
{
label: "Logistics",
description: "Delivery and transportation of finished goods",
quantity: 2,
unit: "trips",
unitPrice: 1200,
amount: 2400,
costMargin: 0.15,
multipliers: {
quantity: 1,
unitPrice: 1,
},
},
{
label: "Packaging",
description: "Custom printed boxes and wrapping materials",
quantity: 100,
unit: "sets",
unitPrice: 35,
amount: 3500,
costMargin: 0.1,
multipliers: {
quantity: 1,
unitPrice: 1,
},
},
];
// Set Name
let updatedInstance = genie.setItemName("My Product")
.setItemDescription("A new product to add")
.setBasePrice(parseFloat("12345.50"))
.setTotalSupply(parseInt("100"))
.setListCostingBreakdown(sampleCostingItems);
Helper: Clear all costing items breakdown
// Clear and empty List of Items included in the costing breakdown
let updatedInstance = genie.clearListCostingBreakdown();
Helper: Get the most expensive item from the costing breakdown
// Returns the most expensive item from the costing breakdown
const mostExpensiveItem = genie.getMostExpensiveCostItem();
Step 2: Simulation Mode & Slider Implementation
PriceGenie allows you to simulate pricing strategies without affecting your original data. You can plug these into a visual UI using sliders for dynamic experimentation.
2.1 Toggle Simulation Mode
Enable or disable simulation mode for visual controls like sliders:
const handleToggleSimulationMode = (bool: boolean) => {
const updatedInstance = genie.toggleSimulation(bool);
setGenieInstance(updatedInstance);
};
When enabled, simulated values (e.g., quantity, unit price) override base values only in calculations and UI, not in stored data.
2.2 Update Simulation Multipliers via Sliders
Each of these methods updates simulated multipliers that affect pricing computation in real time:
Cost Item Quantity
const handleSimDataQuantity = (multiplier: number, index?: number) => {
if (!!genie && index !== undefined) {
const updatedInstance = genie.updateCostItemQuantityMultiplier(index, multiplier);
setGenieInstance(updatedInstance);
}
};
Cost Item Unit Price
const handleSimDataUnitPrice = (multiplier: number, index?: number) => {
if (!!genie && index !== undefined) {
const updatedInstance = genie.updateCostItemUnitPriceMultiplier(index, multiplier);
setGenieInstance(updatedInstance);
}
};
Global Total Supply
const handleSimDataTotalSupply = (multiplier: number) => {
if (!!genie) {
const updatedInstance = genie.updateTotalSupplyMultiplier(multiplier);
setGenieInstance(updatedInstance);
}
};
Global SRP (Suggested Retail Price)
const handleSimDataSRP = (multiplier: number) => {
if (!!genie) {
const updatedInstance = genie.updateSRPMultiplier(multiplier);
setGenieInstance(updatedInstance);
}
};
Use Cases
Freelancers quoting custom projects
Product makers computing ideal selling price
Startups experimenting with cost inputs
Visual apps needing real-time pricing logic
Contributions Welcome
If you love improving open tools, or you want to add your own flavor to this pricing engine, I welcome contributors!
Feel free to fork, star, or build off the repo:
👉 https://github.com/jedlsf/PriceGenie
Or reach out via email: business@thezelijah.world
A Quick Teaser: What's Next?
I’m almost done with the prototype for my next upcoming platform: Majikah
An all-in-one creative hub space for artists, professionals, and studios.
I designed it with people like us in mind — creatives who have worked both as artists and as clients, and who know the pain of inefficient tools.
Stay tuned for more.
Let’s work! Your vision, my magic.
— Zelijah
Subscribe to my newsletter
Read articles from Josef Elijah Fabian directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Josef Elijah Fabian
Josef Elijah Fabian
Zelijah — born Josef Elijah Fabian — is a Filipino modern-day Renaissance man, a multi-disciplinary artist, entrepreneur, and creative technologist based in Metro Manila, Philippines. With over 11 years of experience since 2014, his dynamic career spans music, software engineering, 3D animation, game audio, branding, and visual storytelling. Known for fusing technical expertise with deeply emotional and cinematic expression, Zelijah bridges the worlds of art, sound, and technology—consistently pushing creative and cultural boundaries through visionary execution.