CFCRM
Multi-tenant CRM platform for field service businesses. Real-time scheduling, QuickBooks integration, automated workflows, and per-tenant data isolation.
FastAPI and Django backends, async services, data pipelines, and REST API design. Primary language for production web applications.
Service-layer architecture, dependency injection, event-driven systems, and enterprise patterns. Used for high-throughput backend services.
Game scripting, entity-component systems, modding frameworks, and embedded logic engines. Lightweight and fast where it counts.
Schema design, multi-tenant architectures, complex reporting queries, indexing strategies, and migration systems. SQLite and PostgreSQL.
Machine learning pipelines, predictive modeling, and intelligent automation. Private investment platforms with algorithmic analysis delivering 147% above original margins.
Live production applications with paying customers
Multi-tenant CRM platform for field service businesses. Real-time scheduling, QuickBooks integration, automated workflows, and per-tenant data isolation.
Full-service business platform for a chimney services company. Online booking, service tracking, customer portal, and operational management tools.
Action RPG with real-time combat, procedural generation, and a Lua scripting engine. Entity-component architecture powering game logic and mod support.
Financial analysis and reporting platform for QuickBooks users. Secure data processing, automated report generation, and audit-ready exports.
SaaS productivity toolkit for teams. Task management, time tracking, and project analytics with real-time collaboration and reporting dashboards.
Production code from live applications
from fastapi import APIRouter, Depends, Query
from pydantic import BaseModel, Field
from datetime import datetime
from enum import Enum
router = APIRouter(prefix="/api/v1")
class Status(str, Enum):
ACTIVE = "active"
ARCHIVED = "archived"
DRAFT = "draft"
class ProjectOut(BaseModel):
id: int
title: str
slug: str
status: Status
stack: list[str]
deployed_at: datetime | None
created_at: datetime
class Config:
from_attributes = True
@router.get("/projects", response_model=list[ProjectOut])
async def list_projects(
status: Status | None = None,
limit: int = Query(default=20, ge=1, le=100),
offset: int = Query(default=0, ge=0),
db: AsyncSession = Depends(get_session),
):
stmt = select(Project).order_by(Project.created_at.desc())
if status:
stmt = stmt.where(Project.status == status)
stmt = stmt.limit(limit).offset(offset)
result = await db.execute(stmt)
return result.scalars().all()
package dev.studioblack.service;
import dev.studioblack.model.Project;
import dev.studioblack.repository.ProjectRepository;
import dev.studioblack.event.ProjectCreatedEvent;
import java.util.List;
public class ProjectService {
private final ProjectRepository repository;
private final EventBus eventBus;
private final CacheStore cache;
public ProjectService(ProjectRepository repository,
EventBus eventBus,
CacheStore cache) {
this.repository = repository;
this.eventBus = eventBus;
this.cache = cache;
}
public List<Project> findActive() {
return cache.get("projects:active", () ->
repository.findByStatus(Project.Status.ACTIVE)
);
}
@Transactional
public Project create(CreateProjectRequest request) {
if (repository.existsBySlug(request.slug())) {
throw new ConflictException("Slug already exists");
}
Project project = Project.builder()
.title(request.title())
.slug(request.slug())
.stack(request.stack())
.status(Project.Status.DRAFT)
.build();
project = repository.save(project);
cache.evict("projects:active");
eventBus.publish(new ProjectCreatedEvent(project));
return project;
}
}
local World = {}
World.__index = World
function World:new()
local w = setmetatable({}, self)
w.entities = {}
w.pools = {}
w.nextId = 1
return w
end
function World:spawn(components)
local id = self.nextId
self.nextId = id + 1
self.entities[id] = true
for name, data in pairs(components) do
if not self.pools[name] then
self.pools[name] = {}
end
self.pools[name][id] = data
end
return id
end
function World:query(...)
local names = {...}
local result = {}
for id in pairs(self.entities) do
local match = true
for _, name in ipairs(names) do
if not self.pools[name]
or not self.pools[name][id] then
match = false
break
end
end
if match then
result[#result + 1] = id
end
end
return result
end
function World:get(id, component)
return self.pools[component]
and self.pools[component][id]
end
function World:destroy(id)
for _, pool in pairs(self.pools) do
pool[id] = nil
end
self.entities[id] = nil
end
return World
CREATE TABLE clients (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
email TEXT UNIQUE NOT NULL,
tier TEXT CHECK(tier IN ('free','pro','enterprise'))
DEFAULT 'free',
created_at TEXT DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ','now'))
);
CREATE TABLE projects (
id INTEGER PRIMARY KEY,
client_id INTEGER NOT NULL REFERENCES clients(id),
title TEXT NOT NULL,
slug TEXT UNIQUE NOT NULL,
status TEXT CHECK(status IN ('draft','active','archived'))
DEFAULT 'draft',
stack TEXT NOT NULL,
deployed_at TEXT,
created_at TEXT DEFAULT (strftime('%Y-%m-%dT%H:%M:%SZ','now'))
);
CREATE INDEX idx_projects_status ON projects(status);
CREATE INDEX idx_projects_client ON projects(client_id);
SELECT
c.name AS client,
c.tier,
COUNT(p.id) AS total_projects,
SUM(CASE WHEN p.status = 'active'
THEN 1 ELSE 0 END) AS live,
MAX(p.deployed_at) AS last_deploy
FROM clients c
LEFT JOIN projects p ON p.client_id = c.id
GROUP BY c.id
HAVING total_projects > 0
ORDER BY live DESC, last_deploy DESC;
Base — /api/v1
Request
curl https://studioblack.dev/api/v1/status
Response 200
{
"status": "operational",
"version": "1.0.0",
"uptime": "99.97%",
"endpoints": 6
}
Parameters
status | string | Filter by project status |
limit | integer | Results per page (default: 20) |
offset | integer | Pagination offset |
Response 200
{
"data": [
{
"id": 1,
"title": "CFCRM",
"slug": "cfcrm",
"status": "active",
"stack": ["python", "fastapi", "sqlite"]
}
],
"meta": { "total": 5, "page": 1, "per_page": 20 }
}
Response 200
{
"id": 1,
"title": "CFCRM",
"slug": "cfcrm",
"url": "https://cfcrm.app",
"status": "active",
"stack": ["python", "fastapi", "sqlite", "javascript"],
"deployed_at": "2025-08-15T00:00:00Z",
"created_at": "2025-03-10T00:00:00Z"
}
Headers
Authorization: Bearer <token>
Content-Type: application/json
Body
{
"title": "New Project",
"slug": "new-project",
"stack": ["python", "sql"]
}
Response 201
{
"id": 6,
"title": "New Project",
"slug": "new-project",
"status": "draft",
"stack": ["python", "sql"],
"deployed_at": null,
"created_at": "2026-06-04T12:00:00Z"
}