<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: 23 510 Chokkapu Uma Krishna kanth</title>
    <description>The latest articles on DEV Community by 23 510 Chokkapu Uma Krishna kanth (@23_510chokkapuumakrish).</description>
    <link>https://dev.to/23_510chokkapuumakrish</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4242800%2F54a312fe-fce8-4f93-b947-a3f721f26ec5.png</url>
      <title>DEV Community: 23 510 Chokkapu Uma Krishna kanth</title>
      <link>https://dev.to/23_510chokkapuumakrish</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/23_510chokkapuumakrish"/>
    <language>en</language>
    <item>
      <title>Setsuzoku</title>
      <dc:creator>23 510 Chokkapu Uma Krishna kanth</dc:creator>
      <pubDate>Fri, 13 Nov 2026 11:23:02 +0000</pubDate>
      <link>https://dev.to/23_510chokkapuumakrish/setsuzoku-3a4</link>
      <guid>https://dev.to/23_510chokkapuumakrish/setsuzoku-3a4</guid>
      <description>&lt;h1&gt;
  
  
  I Built SETSUZOKU OS: An Operating System to Manage the Entire Client Journey
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;From First Inquiry to Final Payment.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most service businesses don't have a problem finding customers. They have a problem managing everything that happens after a customer shows interest.&lt;/p&gt;

&lt;p&gt;Think about a typical digital agency or IT services company.&lt;/p&gt;

&lt;p&gt;A customer sends an inquiry through a website. Someone records it in a spreadsheet. A quotation is prepared separately. Once the customer approves, the team creates a project in another tool. Deliverables are shared through email or WhatsApp. Feedback gets lost. Invoices are generated somewhere else.&lt;/p&gt;

&lt;p&gt;Everything is disconnected.&lt;/p&gt;

&lt;p&gt;I started thinking:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What if we could manage this entire journey through one unified system?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's the idea behind &lt;strong&gt;SETSUZOKU OS&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is SETSUZOKU OS?
&lt;/h2&gt;

&lt;p&gt;SETSUZOKU OS is a multi-tenant business operating system designed for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Digital marketing agencies&lt;/li&gt;
&lt;li&gt;Software development companies&lt;/li&gt;
&lt;li&gt;Creative studios&lt;/li&gt;
&lt;li&gt;IT service providers&lt;/li&gt;
&lt;li&gt;Consulting businesses&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The objective is simple: connect customer management, business operations and financial workflows into one platform.&lt;/p&gt;

&lt;p&gt;Instead of managing multiple disconnected tools, businesses can manage their customer journey from a unified workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem We're Trying to Solve
&lt;/h2&gt;

&lt;p&gt;Imagine a software agency receives a new project inquiry.&lt;/p&gt;

&lt;p&gt;The typical workflow looks something like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Receive an inquiry.&lt;/li&gt;
&lt;li&gt;Add customer details to a spreadsheet.&lt;/li&gt;
&lt;li&gt;Follow up with the potential client.&lt;/li&gt;
&lt;li&gt;Prepare and send a quotation.&lt;/li&gt;
&lt;li&gt;Wait for approval.&lt;/li&gt;
&lt;li&gt;Create a project.&lt;/li&gt;
&lt;li&gt;Assign tasks to employees.&lt;/li&gt;
&lt;li&gt;Submit deliverables.&lt;/li&gt;
&lt;li&gt;Collect client feedback.&lt;/li&gt;
&lt;li&gt;Generate an invoice and track payment.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Each step is connected to the previous one, but businesses often manage them using different applications.&lt;/p&gt;

&lt;p&gt;This creates operational friction.&lt;/p&gt;

&lt;p&gt;SETSUZOKU OS aims to bring these workflows together.&lt;/p&gt;

&lt;h2&gt;
  
  
  How the System Works
&lt;/h2&gt;

&lt;p&gt;The platform follows a continuous customer journey:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Inquiry → Lead Management → Client Profile → Quotation → Project → Tasks → Deliverables → Client Approval → Invoicing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Every stage connects to the next.&lt;/p&gt;

&lt;p&gt;The goal isn't simply to create another CRM or project management tool. It's to connect the entire business workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Technology Stack
&lt;/h2&gt;

&lt;p&gt;I wanted to build the platform with a modular architecture that could support multiple organizations and different permission levels.&lt;/p&gt;

&lt;p&gt;Here's the current technology stack:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Technology&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Frontend&lt;/td&gt;
&lt;td&gt;React 18&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Build Tool&lt;/td&gt;
&lt;td&gt;Vite&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Language&lt;/td&gt;
&lt;td&gt;TypeScript&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Styling&lt;/td&gt;
&lt;td&gt;Tailwind CSS&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Backend&lt;/td&gt;
&lt;td&gt;Node.js + Express&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Database&lt;/td&gt;
&lt;td&gt;PostgreSQL 16&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ORM&lt;/td&gt;
&lt;td&gt;Prisma&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Validation&lt;/td&gt;
&lt;td&gt;Zod&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Workspace&lt;/td&gt;
&lt;td&gt;pnpm Monorepo&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The project follows a modular monolith architecture.&lt;/p&gt;

&lt;p&gt;The repository is organized into:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;apps/web&lt;/code&gt; – Frontend application&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;apps/api&lt;/code&gt; – Backend REST API&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;packages/database&lt;/code&gt; – Database schema and Prisma client&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;packages/shared&lt;/code&gt; – Shared types, validation contracts and permissions&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;docs&lt;/code&gt; – Technical documentation and architecture&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Five Engineering Decisions Behind SETSUZOKU OS
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Multi-Tenant Architecture
&lt;/h3&gt;

&lt;p&gt;Different organizations should be able to use the same platform without accessing one another's business information.&lt;/p&gt;

&lt;p&gt;The system uses organization-level scoping, authentication middleware and tenant guards.&lt;/p&gt;

&lt;p&gt;The organization context is passed through the &lt;code&gt;X-Organization-Id&lt;/code&gt; header.&lt;/p&gt;

&lt;p&gt;The goal is to maintain strict data isolation between organizations.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Seven-Level Role-Based Access Control
&lt;/h3&gt;

&lt;p&gt;Not everyone should have access to everything.&lt;/p&gt;

&lt;p&gt;I implemented a seven-role permission structure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SUPER_ADMIN&lt;/li&gt;
&lt;li&gt;ORGANIZATION_OWNER&lt;/li&gt;
&lt;li&gt;ADMIN&lt;/li&gt;
&lt;li&gt;MANAGER&lt;/li&gt;
&lt;li&gt;EMPLOYEE&lt;/li&gt;
&lt;li&gt;FINANCE&lt;/li&gt;
&lt;li&gt;CLIENT&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each role has a different responsibility and access scope.&lt;/p&gt;

&lt;p&gt;For example, an employee can work on assigned tasks, while the finance role manages quotations and invoices.&lt;/p&gt;

&lt;p&gt;Clients have access to their dedicated portal rather than internal team operations.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Decimal-Safe Financial Calculations
&lt;/h3&gt;

&lt;p&gt;Financial calculations require accuracy.&lt;/p&gt;

&lt;p&gt;Using ordinary JavaScript floating-point arithmetic for monetary values can introduce precision issues.&lt;/p&gt;

&lt;p&gt;For this reason, the system uses PostgreSQL &lt;code&gt;Decimal(12, 2)&lt;/code&gt; for monetary fields.&lt;/p&gt;

&lt;p&gt;This is particularly important for quotations, taxes and line-item calculations.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Version-Controlled Deliverables
&lt;/h3&gt;

&lt;p&gt;Client feedback and revisions are part of almost every service business.&lt;/p&gt;

&lt;p&gt;Instead of simply replacing an old deliverable, SETSUZOKU OS maintains multiple versions.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deliverable V1 – Initial submission&lt;/li&gt;
&lt;li&gt;Deliverable V2 – First revision&lt;/li&gt;
&lt;li&gt;Deliverable V3 – Final revision&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Client approval is tracked through an approval workflow.&lt;/p&gt;

&lt;p&gt;An approved version should not silently change.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Dedicated Client Portal
&lt;/h3&gt;

&lt;p&gt;Internal business operations and client-facing interactions should remain separate.&lt;/p&gt;

&lt;p&gt;The dedicated &lt;code&gt;/portal&lt;/code&gt; experience allows clients to review deliverables, approve proposals and provide feedback without exposing internal team discussions or operational information.&lt;/p&gt;

&lt;h2&gt;
  
  
  Current Development Status
&lt;/h2&gt;

&lt;p&gt;This is an actively evolving product.&lt;/p&gt;

&lt;p&gt;The current roadmap is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Foundation, authentication and RBAC – Complete&lt;/li&gt;
&lt;li&gt;CRM, lead pipeline and quotations – Complete&lt;/li&gt;
&lt;li&gt;Project management, tasks and client portal – Complete&lt;/li&gt;
&lt;li&gt;Invoicing and automated ledger – In progress&lt;/li&gt;
&lt;li&gt;Payment gateway webhooks and analytics – Planned&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'm sharing the current implementation and roadmap openly because I believe real product development should be discussed honestly.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;There are several areas I want to explore as development continues:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Automated payment reconciliation.&lt;/li&gt;
&lt;li&gt;Better business analytics and reporting.&lt;/li&gt;
&lt;li&gt;Workflow automation.&lt;/li&gt;
&lt;li&gt;Integrations with communication platforms.&lt;/li&gt;
&lt;li&gt;More efficient client onboarding.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The bigger vision is to make SETSUZOKU OS a practical operating layer for service-based businesses.&lt;/p&gt;

&lt;h2&gt;
  
  
  Open Source and Community Feedback
&lt;/h2&gt;

&lt;p&gt;I'm sharing the project publicly because I want developers to explore the architecture, understand the implementation and challenge the technical decisions.&lt;/p&gt;

&lt;p&gt;If you're interested in:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SaaS architecture&lt;/li&gt;
&lt;li&gt;Multi-tenant applications&lt;/li&gt;
&lt;li&gt;React and Node.js&lt;/li&gt;
&lt;li&gt;PostgreSQL and Prisma&lt;/li&gt;
&lt;li&gt;Business workflow automation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'd genuinely appreciate your feedback.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explore the project:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;GitHub Repository: &lt;a href="https://github.com/ukk1019-yhat/setsuzokuos" rel="noopener noreferrer"&gt;https://github.com/ukk1019-yhat/setsuzokuos&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Live Application: &lt;a href="https://setsuzokuos.vercel.app" rel="noopener noreferrer"&gt;https://setsuzokuos.vercel.app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Company Website: &lt;a href="https://setsuzoku.info" rel="noopener noreferrer"&gt;https://setsuzoku.info&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you were building an operating system for a digital agency, what feature would you prioritize first?&lt;/p&gt;

&lt;p&gt;I'd love to hear your thoughts.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Built by Uma Krishna Kanth | Setsuzoku LLP&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SETSUZOKU OS - From First Inquiry to Final Payment.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>productivity</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
