<?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: Arun</title>
    <description>The latest articles on DEV Community by Arun (@arun_ceptorlabs).</description>
    <link>https://dev.to/arun_ceptorlabs</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%2F4167838%2F1539de13-b38b-4859-8e96-55a4e8657617.png</url>
      <title>DEV Community: Arun</title>
      <link>https://dev.to/arun_ceptorlabs</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arun_ceptorlabs"/>
    <language>en</language>
    <item>
      <title>Introducing ReMOAT: Remote Debugging Without the Headache</title>
      <dc:creator>Arun</dc:creator>
      <pubDate>Wed, 07 Oct 2026 11:52:41 +0000</pubDate>
      <link>https://dev.to/ceptorlabs/introducing-remoat-remote-debugging-without-the-headache-49n</link>
      <guid>https://dev.to/ceptorlabs/introducing-remoat-remote-debugging-without-the-headache-49n</guid>
      <description>&lt;p&gt;Ever tried debugging a website that isn't running on your machine?&lt;/p&gt;

&lt;p&gt;Maybe it's on a client's browser.&lt;/p&gt;

&lt;p&gt;Maybe it's running on a Smart TV.&lt;/p&gt;

&lt;p&gt;Maybe the bug only happens in a specific environment that you can't easily reproduce.&lt;/p&gt;

&lt;p&gt;And then comes the usual process:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Can you send me a screenshot?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Can you open DevTools?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"What does the console say?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Can you try it again?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Five minutes later, you're still trying to figure out what actually went wrong.&lt;/p&gt;

&lt;p&gt;That's the problem ReMOAT is trying to solve.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is ReMOAT?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://remoat.dev/" rel="noopener noreferrer"&gt;ReMOAT&lt;/a&gt; is a remote debugging tool that lets developers &lt;strong&gt;debug browser-based applications remotely in real time&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of asking someone to explain what they're seeing, you can connect to the browser and investigate the problem yourself.&lt;/p&gt;

&lt;p&gt;You can inspect what's happening, check console errors, look at network activity, interact with the page, and troubleshoot issues while the problem is actually happening.&lt;/p&gt;

&lt;h2&gt;
  
  
  Debug the actual environment
&lt;/h2&gt;

&lt;p&gt;One of the frustrating parts of debugging is that:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"It works on my machine."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The application might work perfectly in your local browser but fail on another device or environment.&lt;/p&gt;

&lt;p&gt;ReMOAT is designed to let you debug the &lt;strong&gt;actual browser session&lt;/strong&gt; instead of trying to recreate the problem from screenshots and descriptions.&lt;/p&gt;

&lt;p&gt;The workflow becomes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User encounters a bug
        ↓
Connect to the browser
        ↓
Inspect the actual environment
        ↓
Find the problem
        ↓
Fix it
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Much less guessing.&lt;/p&gt;

&lt;h2&gt;
  
  
  No more screenshot debugging
&lt;/h2&gt;

&lt;p&gt;Screenshots are useful, but they rarely tell the whole story.&lt;/p&gt;

&lt;p&gt;A screenshot can't show you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What happened in the console&lt;/li&gt;
&lt;li&gt;Which network request failed&lt;/li&gt;
&lt;li&gt;What the page state was&lt;/li&gt;
&lt;li&gt;What the browser was actually doing&lt;/li&gt;
&lt;li&gt;Whether the issue is reproducible&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;With remote debugging, you can investigate the problem directly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Built for real-world debugging
&lt;/h2&gt;

&lt;p&gt;ReMOAT is useful for more than just normal websites.&lt;/p&gt;

&lt;p&gt;It can help with browser-based applications and environments where reproducing the exact issue locally can be difficult.&lt;/p&gt;

&lt;p&gt;You can use it for things like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Remote browser debugging&lt;/li&gt;
&lt;li&gt;Console error investigation&lt;/li&gt;
&lt;li&gt;Network debugging&lt;/li&gt;
&lt;li&gt;Local storage inspection&lt;/li&gt;
&lt;li&gt;Reproducing frontend issues&lt;/li&gt;
&lt;li&gt;Real-time collaboration&lt;/li&gt;
&lt;li&gt;Debugging applications on remote devices&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;See the problem. Don't just hear about it.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why ReMOAT?
&lt;/h2&gt;

&lt;p&gt;Tools like browser DevTools are excellent when the browser is right in front of you.&lt;/p&gt;

&lt;p&gt;The problem starts when the browser is somewhere else.&lt;/p&gt;

&lt;p&gt;That's where remote debugging becomes useful.&lt;/p&gt;

&lt;p&gt;Instead of sending instructions back and forth, ReMOAT gives developers a way to get closer to the actual environment where the bug is happening.&lt;/p&gt;

&lt;p&gt;You can check out ReMOAT here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://remoat.dev/" rel="noopener noreferrer"&gt;https://remoat.dev/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;And I'd genuinely like to hear from other developers:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What's the most painful remote debugging problem you've had to deal with?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Was it a browser issue, a Smart TV, a client's device, or simply a bug that refused to reproduce locally?&lt;/p&gt;

</description>
      <category>ai</category>
      <category>webdev</category>
      <category>webrtc</category>
      <category>serverless</category>
    </item>
    <item>
      <title>Introducing CallCeptor: Turn Your Website Into a Call Button</title>
      <dc:creator>Arun</dc:creator>
      <pubDate>Wed, 07 Oct 2026 11:49:07 +0000</pubDate>
      <link>https://dev.to/arun_ceptorlabs/introducing-callceptor-turn-your-website-into-a-call-button-20l</link>
      <guid>https://dev.to/arun_ceptorlabs/introducing-callceptor-turn-your-website-into-a-call-button-20l</guid>
      <description>&lt;p&gt;You visit a website because you have a question.&lt;/p&gt;

&lt;p&gt;You find the phone number.&lt;/p&gt;

&lt;p&gt;Then you have to take out your phone, type the number, navigate a menu, explain which page you were looking at, and hope someone answers.&lt;/p&gt;

&lt;p&gt;For a lot of businesses, especially financial firms, that's still how a website call works.&lt;/p&gt;

&lt;p&gt;We thought there had to be a simpler way.&lt;/p&gt;

&lt;h2&gt;
  
  
  Meet CallCeptor
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://callceptor.com/" rel="noopener noreferrer"&gt;CallCeptor&lt;/a&gt; turns the phone number on your website into a &lt;strong&gt;Call button&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A visitor clicks it, gives a little context, and talks to the right person directly from their browser.&lt;/p&gt;

&lt;p&gt;No app to install.&lt;/p&gt;

&lt;p&gt;No number to type.&lt;/p&gt;

&lt;p&gt;No leaving the page.&lt;/p&gt;

&lt;p&gt;The agent can also see &lt;strong&gt;which page the visitor was on and where the visitor came from&lt;/strong&gt; before answering.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why does this matter?
&lt;/h2&gt;

&lt;p&gt;Consider someone reading an IPO article on a brokerage website.&lt;/p&gt;

&lt;p&gt;They have a question about the IPO.&lt;/p&gt;

&lt;p&gt;With a normal phone number, the journey might look like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Read article
    ↓
Find phone number
    ↓
Take out phone
    ↓
Dial
    ↓
Navigate IVR
    ↓
Explain the question
    ↓
Hopefully reach the right person
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;With CallCeptor:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Read article
    ↓
Click "Call"
    ↓
Select the topic
    ↓
Talk to the right desk
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The context travels with the call.&lt;/p&gt;

&lt;p&gt;That's the part we wanted to fix.&lt;/p&gt;

&lt;h2&gt;
  
  
  What happens when nobody answers?
&lt;/h2&gt;

&lt;p&gt;This is where things get interesting.&lt;/p&gt;

&lt;p&gt;A missed website call shouldn't simply disappear.&lt;/p&gt;

&lt;p&gt;CallCeptor can turn a missed call into a &lt;strong&gt;callback task&lt;/strong&gt;, with a deadline and escalation. Calls, missed calls, and callbacks are also recorded as leads with information such as the page, referrer, and campaign.&lt;/p&gt;

&lt;p&gt;So instead of:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Someone called earlier. Does anyone know who it was?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You have:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"This person called from this page, from this campaign, and needs a callback."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  One script is enough
&lt;/h2&gt;

&lt;p&gt;Adding CallCeptor to a website is designed to be simple.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;script
  &lt;/span&gt;&lt;span class="na"&gt;src=&lt;/span&gt;&lt;span class="s"&gt;"https://callceptor.com/callceptor-sdk.js"&lt;/span&gt;
  &lt;span class="na"&gt;data-site-key=&lt;/span&gt;&lt;span class="s"&gt;"YOUR_SITE_KEY"&lt;/span&gt;
  &lt;span class="na"&gt;async&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then you can configure departments, agents, business hours, holidays, and routing rules.&lt;/p&gt;

&lt;p&gt;The calling code is loaded when someone actually clicks Call, rather than loading everything upfront.&lt;/p&gt;

&lt;h2&gt;
  
  
  Built for more than just calling
&lt;/h2&gt;

&lt;p&gt;The call itself is only one part.&lt;/p&gt;

&lt;p&gt;CallCeptor also provides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Browser-based calling&lt;/li&gt;
&lt;li&gt;Routing by page and topic&lt;/li&gt;
&lt;li&gt;Mobile fallback&lt;/li&gt;
&lt;li&gt;Callback management&lt;/li&gt;
&lt;li&gt;Caller intake&lt;/li&gt;
&lt;li&gt;Agent context&lt;/li&gt;
&lt;li&gt;Call recording&lt;/li&gt;
&lt;li&gt;Lead attribution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For regulated businesses, it also includes features around recording rules, consent, retention, audit trails, and data hosting in Indian cloud regions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why we built it
&lt;/h2&gt;

&lt;p&gt;A phone number tells a visitor:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Here is how you can contact us."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A Call button should say:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"We'll connect you to the right person."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's the difference we're trying to build.&lt;/p&gt;

&lt;p&gt;CallCeptor is designed for brokerages, wealth firms, advisers, AMCs, insurance distributors, lenders, and other businesses where a website visitor may want to talk to someone before taking the next step.&lt;/p&gt;

&lt;p&gt;If you're curious, you can try it here:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://callceptor.com/" rel="noopener noreferrer"&gt;https://callceptor.com/&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'd genuinely like to hear from other developers and product teams:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Would you rather have a phone number on a website, or a button that connects you directly to the right person?&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sass</category>
      <category>productivity</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Introducing ProxyCeptor: A Simpler Way to Handle APIs</title>
      <dc:creator>Arun</dc:creator>
      <pubDate>Wed, 07 Oct 2026 11:41:53 +0000</pubDate>
      <link>https://dev.to/ceptorlabs/introducing-proxyceptor-a-simpler-way-to-handle-apis-3bgj</link>
      <guid>https://dev.to/ceptorlabs/introducing-proxyceptor-a-simpler-way-to-handle-apis-3bgj</guid>
      <description>&lt;p&gt;_Have you ever wanted to test one small API change, but ended up spending more time setting up the environment than actually testing it?&lt;br&gt;
_&lt;br&gt;
Maybe you want an API to return a &lt;code&gt;500&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Maybe you want to change one field in a response.&lt;/p&gt;

&lt;p&gt;Maybe you want to redirect a request to staging.&lt;/p&gt;

&lt;p&gt;Or maybe you just want to see what happens when an API takes 3 seconds to respond.&lt;/p&gt;

&lt;p&gt;Usually, you end up changing backend code, creating temporary mocks, deploying something to staging, or setting up a proxy and dealing with certificates.&lt;/p&gt;

&lt;p&gt;That is where &lt;strong&gt;ProxyCeptor&lt;/strong&gt; comes in.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://proxyceptor.com/?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Try ProxyCeptor&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  What is ProxyCeptor?
&lt;/h2&gt;

&lt;p&gt;ProxyCeptor is a developer tool for &lt;strong&gt;intercepting and modifying API traffic while your application is running&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of changing your backend just to test a frontend scenario, you can intercept the request and change what happens to it.&lt;/p&gt;

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

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Application
     ↓
  API Request
     ↓
 ProxyCeptor
     ↓
Modify / Mock / Delay / Block
     ↓
    API
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can modify requests, change responses, mock APIs, redirect URLs, inject headers, simulate errors, and introduce network delays.&lt;/p&gt;

&lt;p&gt;The idea is pretty simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Don't change your application just to test a different API scenario. Change the traffic instead.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  A simple example
&lt;/h2&gt;

&lt;p&gt;Imagine your API normally returns:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"status"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"success"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"John"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You want to see how your frontend behaves when the API returns an error.&lt;/p&gt;

&lt;p&gt;Instead of modifying the backend, you can make the response behave like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"status"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"error"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"message"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Something went wrong"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can also simulate HTTP errors such as &lt;code&gt;401&lt;/code&gt;, &lt;code&gt;404&lt;/code&gt;, &lt;code&gt;500&lt;/code&gt;, or &lt;code&gt;503&lt;/code&gt;, or add artificial latency to see how your UI handles slow networks.&lt;/p&gt;

&lt;p&gt;ProxyCeptor supports these kinds of request and response modifications directly.&lt;/p&gt;

&lt;h2&gt;
  
  
  What can you do with it?
&lt;/h2&gt;

&lt;p&gt;Some of the useful things you can do are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Modify request URLs&lt;/li&gt;
&lt;li&gt;Change request payloads&lt;/li&gt;
&lt;li&gt;Inject or modify headers&lt;/li&gt;
&lt;li&gt;Mock complete API responses&lt;/li&gt;
&lt;li&gt;Modify only specific JSON fields&lt;/li&gt;
&lt;li&gt;Redirect requests&lt;/li&gt;
&lt;li&gt;Block network traffic&lt;/li&gt;
&lt;li&gt;Simulate API delays&lt;/li&gt;
&lt;li&gt;Change HTTP status codes&lt;/li&gt;
&lt;li&gt;Transform API responses&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One feature I particularly like is &lt;strong&gt;JSON Deep Merge&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Instead of replacing an entire response, you can change only the field you care about while keeping the rest of the real API response intact.&lt;/p&gt;

&lt;p&gt;That makes testing much less painful.&lt;/p&gt;

&lt;h2&gt;
  
  
  No backend changes
&lt;/h2&gt;

&lt;p&gt;This is probably the biggest reason to use a tool like this.&lt;/p&gt;

&lt;p&gt;Suppose you're working on a frontend feature that needs to handle:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"What happens when the payment API returns 503?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;You shouldn't have to ask the backend team to create a special response, deploy it, test it, and then revert it.&lt;/p&gt;

&lt;p&gt;You can simulate that response locally and continue working.&lt;/p&gt;

&lt;p&gt;That means frontend developers and QA engineers can test edge cases without waiting for backend changes.&lt;/p&gt;

&lt;h2&gt;
  
  
  And it isn't limited to browsers
&lt;/h2&gt;

&lt;p&gt;ProxyCeptor can also work with Smart TV environments such as Android TV, Fire TV, Samsung Tizen, and LG webOS.&lt;/p&gt;

&lt;p&gt;For environments where installing a root SSL certificate or configuring a traditional system proxy is painful, ProxyCeptor provides an SDK-based approach that intercepts traffic inside the application runtime.&lt;/p&gt;

&lt;p&gt;That makes it useful for testing things that are otherwise surprisingly difficult to reproduce on real devices.&lt;/p&gt;

&lt;h2&gt;
  
  
  The idea behind ProxyCeptor
&lt;/h2&gt;

&lt;p&gt;The goal isn't to replace your existing testing framework.&lt;/p&gt;

&lt;p&gt;Unit tests still have their place.&lt;/p&gt;

&lt;p&gt;Integration tests still have their place.&lt;/p&gt;

&lt;p&gt;Mock servers still have their place.&lt;/p&gt;

&lt;p&gt;ProxyCeptor is useful for that layer in between:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"I'm running the real application, making real requests, but I want to control what happens to those requests."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;That's where API interception becomes really useful.&lt;/p&gt;

&lt;p&gt;You can inspect the traffic, change it, reproduce an edge case, and see how your actual application reacts.&lt;/p&gt;

&lt;p&gt;No temporary backend endpoint.&lt;/p&gt;

&lt;p&gt;No waiting for another deployment.&lt;/p&gt;

&lt;p&gt;Just change the traffic and test.&lt;/p&gt;

&lt;h2&gt;
  
  
  Give it a try
&lt;/h2&gt;

&lt;p&gt;If you're working with APIs, frontend applications, QA testing, or Smart TV applications, you can try ProxyCeptor here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://proxyceptor.com/?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;https://proxyceptor.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There is also a live sandbox where you can experiment with API interception without setting up a project first.&lt;/p&gt;

&lt;p&gt;I'd be interested to know how other developers handle this today.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Do you use Charles, Burp, Postman, browser DevTools, mock servers, or something else when you need to change API behavior during development?&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>api</category>
      <category>qa</category>
      <category>testing</category>
      <category>debugging</category>
    </item>
    <item>
      <title>Introducing CeptorLabs: Building Tools for the Problems Developers Actually Debug</title>
      <dc:creator>Arun</dc:creator>
      <pubDate>Wed, 07 Oct 2026 06:05:02 +0000</pubDate>
      <link>https://dev.to/arun_ceptorlabs/introducing-ceptorlabs-building-tools-for-the-problems-developers-actually-debug-e4</link>
      <guid>https://dev.to/arun_ceptorlabs/introducing-ceptorlabs-building-tools-for-the-problems-developers-actually-debug-e4</guid>
      <description>&lt;p&gt;&lt;em&gt;Debugging shouldn't require reproducing the impossible.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;There is a certain kind of bug that every developer eventually encounters.&lt;/p&gt;

&lt;p&gt;It works locally.&lt;/p&gt;

&lt;p&gt;It works on your machine.&lt;/p&gt;

&lt;p&gt;It works in staging.&lt;/p&gt;

&lt;p&gt;And then someone says:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"It doesn't work for me."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Maybe it's an API behaving differently.&lt;/p&gt;

&lt;p&gt;Maybe a browser request fails only under certain conditions.&lt;/p&gt;

&lt;p&gt;Maybe a bug appears on a Smart TV but nowhere else.&lt;/p&gt;

&lt;p&gt;Maybe the issue disappears the moment you try to debug it.&lt;/p&gt;

&lt;p&gt;These problems aren't necessarily difficult because the code is complicated.&lt;/p&gt;

&lt;p&gt;They're difficult because &lt;strong&gt;reproducing the problem is complicated&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That's the problem we're interested in at &lt;strong&gt;Ceptor Labs&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Ceptor Labs?
&lt;/h2&gt;

&lt;p&gt;Ceptor Labs is a developer tools company focused on making debugging, testing, and troubleshooting easier.&lt;/p&gt;

&lt;p&gt;We're building tools around a simple idea:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developers should be able to reproduce and understand problems without spending hours trying to recreate the environment where they happened.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Our products are designed around different parts of that problem.&lt;/p&gt;

&lt;h3&gt;
  
  
  ProxyCeptor
&lt;/h3&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://proxyceptor.com/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fproxyceptor.com%2Fog-image.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://proxyceptor.com/" rel="noopener noreferrer" class="c-link"&gt;
            ProxyCeptor — Modern Proxy Interceptor &amp;amp; API Mocking Tool
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Intercept, mock, delay, and debug HTTP traffic across Smart TVs and web apps in 1 click. Zero-cert proxy interceptor with cloud rule sync.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fproxyceptor.com%2Ffavicon.ico" width="48" height="48"&gt;
          proxyceptor.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;API and network debugging without the usual proxy headaches.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;ProxyCeptor lets developers inspect and modify network traffic, mock APIs, rewrite requests, change responses, and reproduce difficult API scenarios.&lt;/p&gt;

&lt;p&gt;Instead of asking:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Can someone change the backend so I can test this?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;you can test the scenario directly.&lt;/p&gt;

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

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Real Application
       ↓
   API Request
       ↓
   ProxyCeptor
       ↓
   Modify Response
       ↓
    Application
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Want to see what happens when an API returns &lt;code&gt;500&lt;/code&gt;?&lt;/p&gt;

&lt;p&gt;Do it.&lt;/p&gt;

&lt;p&gt;Want to test a malformed response?&lt;/p&gt;

&lt;p&gt;Do it.&lt;/p&gt;

&lt;p&gt;Want to simulate a slow endpoint?&lt;/p&gt;

&lt;p&gt;Do it.&lt;/p&gt;

&lt;p&gt;The backend doesn't need to change.&lt;/p&gt;


&lt;h2&gt;
  
  
  ReMOAT
&lt;/h2&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://remoat.dev/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fremoat.dev%2Fog-image.png" height="447" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://remoat.dev/" rel="noopener noreferrer" class="c-link"&gt;
            ReMOAT — Real-Time Remote Browser Debugging &amp;amp; DevTools
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Debug live browser sessions in real-time over WebRTC. Inspect remote console logs, network requests, DOM mutations, and time-travel replay with zero cloud storage.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fremoat.dev%2Ffavicon.svg%3Fv%3D3.2.3" width="512" height="512"&gt;
          remoat.dev
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;Debugging a browser remotely has its own set of problems.&lt;/p&gt;

&lt;p&gt;Sometimes the browser isn't on your machine.&lt;/p&gt;

&lt;p&gt;Sometimes the issue happens on another device.&lt;/p&gt;

&lt;p&gt;Sometimes asking someone to share their entire screen isn't the right solution.&lt;/p&gt;

&lt;p&gt;ReMOAT focuses on &lt;strong&gt;remote browser debugging&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The goal is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Connect to the browser, understand what's happening, and debug the problem without turning the debugging session into a screen-sharing session.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Call Ceptor
&lt;/h2&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
        &lt;div class="c-embed__cover"&gt;
          &lt;a href="https://callceptor.com/" class="c-link align-middle" rel="noopener noreferrer"&gt;
            &lt;img alt="" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcallceptor.com%2Fog%2Fhome.png" height="420" class="m-0" width="800"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="c-embed__body"&gt;
        &lt;h2 class="fs-xl lh-tight"&gt;
          &lt;a href="https://callceptor.com/" rel="noopener noreferrer" class="c-link"&gt;
            CallCeptor: Click-to-Call for Indian Brokers and AMCs
          &lt;/a&gt;
        &lt;/h2&gt;
          &lt;p class="truncate-at-3"&gt;
            Put a Call button on your brokerage, AMC or advisory website. Visitors reach the right desk from the browser, and every call becomes a lead. Hosted in India.
          &lt;/p&gt;
        &lt;div class="color-secondary fs-s flex items-center"&gt;
            &lt;img alt="favicon" class="c-embed__favicon m-0 mr-2 radius-0" src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fcallceptor.com%2Ffavicon.ico%3Ffavicon.2-eag26rl9er2.ico" width="48" height="48"&gt;
          callceptor.com
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;We're also exploring developer communication with &lt;strong&gt;Call Ceptor&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Because debugging isn't always just about logs and requests.&lt;/p&gt;

&lt;p&gt;Sometimes you need to talk to another developer while looking at the same problem.&lt;/p&gt;

&lt;p&gt;We're building tools that bring communication closer to the development workflow instead of forcing developers to constantly jump between unrelated tools.&lt;/p&gt;




&lt;h1&gt;
  
  
  Why build another set of developer tools?
&lt;/h1&gt;

&lt;p&gt;Because we've experienced the problem ourselves.&lt;/p&gt;

&lt;p&gt;Modern applications have become increasingly distributed.&lt;/p&gt;

&lt;p&gt;A simple user action can involve:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Browser
   ↓
Frontend
   ↓
API
   ↓
Authentication
   ↓
Multiple services
   ↓
Third-party APIs
   ↓
Device / Browser
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When something breaks, knowing &lt;strong&gt;where&lt;/strong&gt; it broke isn't always enough.&lt;/p&gt;

&lt;p&gt;You need to reproduce it.&lt;/p&gt;

&lt;p&gt;And reproduction is often the hardest part.&lt;/p&gt;

&lt;p&gt;That's where we want to help.&lt;/p&gt;




&lt;h1&gt;
  
  
  What we'll share here
&lt;/h1&gt;

&lt;p&gt;This won't just be a product announcement channel.&lt;/p&gt;

&lt;p&gt;We'll share what we're learning while building these tools.&lt;/p&gt;

&lt;p&gt;Expect posts about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;API debugging&lt;/li&gt;
&lt;li&gt;Network interception&lt;/li&gt;
&lt;li&gt;Frontend testing&lt;/li&gt;
&lt;li&gt;Remote browser debugging&lt;/li&gt;
&lt;li&gt;Smart TV debugging&lt;/li&gt;
&lt;li&gt;QA workflows&lt;/li&gt;
&lt;li&gt;Reproducing production bugs&lt;/li&gt;
&lt;li&gt;Developer tooling&lt;/li&gt;
&lt;li&gt;Things that didn't work&lt;/li&gt;
&lt;li&gt;Things that surprisingly did&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We'll also share technical breakdowns of problems we encounter while building.&lt;/p&gt;

&lt;p&gt;Sometimes the solution will be elegant.&lt;/p&gt;

&lt;p&gt;Sometimes it will be:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"We spent two days debugging the wrong thing."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Those are probably worth writing about too.&lt;/p&gt;




&lt;h1&gt;
  
  
  The bigger goal
&lt;/h1&gt;

&lt;p&gt;We're not trying to build another collection of dashboards.&lt;/p&gt;

&lt;p&gt;We're interested in the messy part of software development:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Something is broken.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You don't know why.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You need to reproduce it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;And you need to fix it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ceptor Labs exists to make that process less painful.&lt;/p&gt;

&lt;p&gt;We're starting with &lt;strong&gt;ProxyCeptor, ReMOAT, and Call Ceptor&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And we're going to keep building from there.&lt;/p&gt;

&lt;p&gt;If you're interested in developer tooling, debugging, QA, or the strange problems that only appear in production, &lt;strong&gt;follow Ceptor Labs&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;We'll have plenty to share.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt; &lt;code&gt;#devtools #debugging #testing #webdev #opensource&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Suggested DEV canonical URL/slug:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;introducing-ceptor-labs-building-tools-for-the-problems-developers-actually-debug&lt;/code&gt;&lt;/p&gt;

</description>
      <category>debugging</category>
      <category>developer</category>
      <category>softwaredevelopment</category>
      <category>tools</category>
    </item>
  </channel>
</rss>
