DoesItScale.dev helps you compare pricing for different developer tools so you can build what you want without the unknowns. Our algorithms for pricing comparison are open sourced in this repository, allowing you to see how we calculate and compare costs across different services.
This repository contains:
- Open Source Pricing Algorithms: These are available for community use and contributions. If you spot an issue or an outdated pricing model, please submit a pull request or open an issue.
- Local Test UI: A UI that displays the data for these algorithms, designed for local testing and development.
We welcome contributions of all kinds from the community:
- Update Pricing: If you have more current pricing information, please submit a pull request with the updated data.
- Add New Services: Help us expand our comparisons by adding new services to the algorithms.
To add a new auth provider:
- Open the
services/auth/pricing.ts
file. - Create a new function to calculate the cost for the auth provider, e.g.,
calculateNewAuthCost
. - Implement the pricing logic based on the provider's pricing model.
- Add a new entry to the
prices
array with the service name, icon, pricing data, color, and pricing page URL. - Add a new entry to the
pricingBreakdown
object with the pricing details for the new provider. - Add the icon to the
src/icons
you specifed in the prices array - Submit a pull request with your changes.
Example:
// Add the new auth provider pricing function
export function calculateNewAuthCost(users: number): number {
// Implement the pricing logic for the new auth provider
// ...
}
export const prices: ServicePrice[] = [
// ...
{
service: "New Auth",
iconName: "newauth",
users5k: calculateNewAuthCost(5000),
users10k: calculateNewAuthCost(10000),
users50k: calculateNewAuthCost(50000),
users100k: calculateNewAuthCost(100000),
users1m: calculateNewAuthCost(1000000),
users2m: calculateNewAuthCost(2000000),
color: "#ff0000",
pricingPage: "https://newauth.com/pricing",
},
// ...
];
export const pricingBreakdown: PricingBreakdown = {
// ...
"New Auth": [
"Pricing details for New Auth",
// ...
],
// ...
};
To update an existing auth provider:
- Open the
services/auth/pricing.ts
file. - Locate the function that calculates the cost for the auth provider you want to update, e.g.,
calculateFirebaseAuthCost
. - Update the pricing logic and rates according to the latest information.
- Update the corresponding entry in the
pricingBreakdown
object with the new pricing details. - Submit a pull request with your changes.
- Clone the repository:
git clone https://github.com/Porter-smith/does-it-scale.git
- Install dependencies:
cd doesitscale.dev pnpm install
- Run the project locally:
pnpm dev
Please note that while the pricing and authentication algorithms are open source, the frontend code is maintained separately and is not open sourced.