<?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: Sunny</title>
    <description>The latest articles on DEV Community by Sunny (@sanaullahraisofficial).</description>
    <link>https://dev.to/sanaullahraisofficial</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%2F3050441%2F2cb74f74-3dfd-4a57-9b7f-9007b9b3108c.jpg</url>
      <title>DEV Community: Sunny</title>
      <link>https://dev.to/sanaullahraisofficial</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sanaullahraisofficial"/>
    <language>en</language>
    <item>
      <title>Switching AI coding tools? Keep the conversation with a local handoff</title>
      <dc:creator>Sunny</dc:creator>
      <pubDate>Sun, 18 Oct 2026 22:16:54 +0000</pubDate>
      <link>https://dev.to/sanaullahraisofficial/switching-ai-coding-tools-keep-the-conversation-with-a-local-handoff-1j81</link>
      <guid>https://dev.to/sanaullahraisofficial/switching-ai-coding-tools-keep-the-conversation-with-a-local-handoff-1j81</guid>
      <description>&lt;p&gt;Hi! Switching between AI coding tools is useful until you have to explain the same task all over again.&lt;/p&gt;

&lt;p&gt;The next agent needs more than the original prompt. It needs to know what you tried, what failed, which files matter and which decisions you already made.&lt;/p&gt;

&lt;p&gt;I built &lt;a href="https://github.com/ssanaullahrais/Chat-Vault" rel="noopener noreferrer"&gt;ChatVault&lt;/a&gt;, a free, open source Windows app, to make local coding conversations easier to find, back up and carry between tools. Here is the workflow I wanted.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with the conversation you already have
&lt;/h2&gt;

&lt;p&gt;When you switch tools in the middle of a task, reconstructing everything from memory is slow. The old conversation may contain the exact error, a constraint you forgot about or a failed fix that the next agent would otherwise repeat.&lt;/p&gt;

&lt;p&gt;ChatVault brings local conversations from Claude Code, Codex, Cursor, Gemini CLI, OpenCode and Cline into one reader. Search is useful when you remember the bug but not the tool or account where you discussed it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FHU8fvx8aoAAVrBP%3Fformat%3Djpg%26name%3Dsmall" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FHU8fvx8aoAAVrBP%3Fformat%3Djpg%26name%3Dsmall" alt="ChatVault dashboard" width="680" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Dashboard with sample data.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Preserve the reasoning trail
&lt;/h2&gt;

&lt;p&gt;A useful handoff answers a few practical questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What are we trying to achieve?&lt;/li&gt;
&lt;li&gt;What currently works, and what is broken?&lt;/li&gt;
&lt;li&gt;What have we tried already?&lt;/li&gt;
&lt;li&gt;Which files or commands should the next tool inspect?&lt;/li&gt;
&lt;li&gt;What is the next concrete action?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The transcript is supporting evidence for these answers. It lets you revisit details rather than treating the latest summary as the whole story.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FHU8fvx-aAAExiQa%3Fformat%3Djpg%26name%3Dsmall" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FHU8fvx-aAAExiQa%3Fformat%3Djpg%26name%3Dsmall" alt="ChatVault chat reader showing code and tool steps" width="680" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Chat reader with a sample conversation.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;ChatVault lets you read the original discussion and export it as Markdown, HTML, plain text or JSON. That makes it useful for both a new agent session and your own project notes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Carry context into the next tool
&lt;/h2&gt;

&lt;p&gt;The handoff feature prepares a conversation for continuation in another supported coding tool. For example, you can investigate a problem in Claude Code, then bring that discussion into Codex for another attempt.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FHU8fvx6bAAA9JPz%3Fformat%3Djpg%26name%3Dsmall" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fpbs.twimg.com%2Fmedia%2FHU8fvx6bAAA9JPz%3Fformat%3Djpg%26name%3Dsmall" alt="ChatVault continuation menu" width="680" height="425"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Continuation menu with sample data.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;This transfers context as a file. It does not move a model's internal state or guarantee that the next agent will make the same decisions. Different tools also have different context limits, so a long transcript may need a focused brief.&lt;/p&gt;

&lt;p&gt;My preferred pattern is to keep the transcript available and give the next agent a short next-step instruction:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Review the previous investigation, verify the suspected cause against the current code, and propose the smallest fix. Check the tests before editing.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That makes the handoff something the next agent can evaluate rather than an instruction to trust every previous conclusion.&lt;/p&gt;

&lt;h2&gt;
  
  
  Check the project before continuing
&lt;/h2&gt;

&lt;p&gt;Conversation history and the current working tree are different things. Before another tool edits files, check that it is in the intended project and understands which changes already exist.&lt;/p&gt;

&lt;p&gt;If you run agents concurrently, decide how their edits will stay separate. A chat handoff alone does not isolate file changes. Good conversational context cannot compensate for working in the wrong folder or an outdated checkout.&lt;/p&gt;

&lt;h2&gt;
  
  
  Back up before you need the history
&lt;/h2&gt;

&lt;p&gt;Local chat files can disappear if they are deleted or a machine is replaced. ChatVault includes local backup features so you can preserve a separate copy of conversations that matter.&lt;/p&gt;

&lt;p&gt;It works with the files that remain available on your computer. It cannot recover a transcript that has already been deleted or turn a partial record into a complete one.&lt;/p&gt;

&lt;p&gt;I also like exporting important conversations into project documentation. An explanation of a subtle bug can be worth keeping after the task is finished.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep control of what you share
&lt;/h2&gt;

&lt;p&gt;ChatVault reads local chat files and does not upload your conversations. It needs no ChatVault account. The project documentation describes GitHub requests for application updates.&lt;/p&gt;

&lt;p&gt;When you deliberately hand an export to another tool or person, check the contents first. A transcript may include credentials, private project details or unrelated messages. Keeping an archive local and choosing what to share are separate parts of the workflow.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try ChatVault
&lt;/h2&gt;

&lt;p&gt;ChatVault runs on 64-bit Windows 10 and Windows 11. The &lt;a href="https://github.com/ssanaullahrais/Chat-Vault/releases/latest" rel="noopener noreferrer"&gt;releases page&lt;/a&gt; offers a normal installer, an MSI and a portable executable.&lt;/p&gt;

&lt;p&gt;The source is available under the MIT license. The app uses Tauri, Rust, SQLite, React and TypeScript. It is an independent project, not an official product from any of the supported tool makers.&lt;/p&gt;

&lt;p&gt;How do you move context between coding tools? Do you keep a short handoff note, export the whole chat or start fresh?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ssanaullahrais/Chat-Vault" rel="noopener noreferrer"&gt;Source and downloads on GitHub&lt;/a&gt;. Feedback, issues and contributions are welcome 🙂&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>opensource</category>
      <category>tools</category>
    </item>
    <item>
      <title>I built ChatVault: one place for your Claude Code, Codex and Cursor chats</title>
      <dc:creator>Sunny</dc:creator>
      <pubDate>Sat, 17 Oct 2026 11:26:27 +0000</pubDate>
      <link>https://dev.to/sanaullahraisofficial/i-built-chatvault-one-place-for-your-claude-code-codex-and-cursor-chats-3h9j</link>
      <guid>https://dev.to/sanaullahraisofficial/i-built-chatvault-one-place-for-your-claude-code-codex-and-cursor-chats-3h9j</guid>
      <description>&lt;p&gt;Hi devs, I built &lt;strong&gt;ChatVault&lt;/strong&gt;, a free, open source Windows app for people who use more than one AI coding tool or account.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgo9azjkv7dx728brlu3z.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgo9azjkv7dx728brlu3z.jpg" alt=" " width="799" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A useful conversation can be hard to find once you switch accounts or move between Claude Code, Codex and Cursor. ChatVault brings locally stored conversations into one window so you can read them, search your history and keep local backups.&lt;/p&gt;

&lt;h3&gt;
  
  
  Try it
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Download the latest build from &lt;a href="https://github.com/ssanaullahrais/Chat-Vault/releases/latest" rel="noopener noreferrer"&gt;GitHub Releases&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Choose the EXE installer, MSI package or portable EXE.&lt;/li&gt;
&lt;li&gt;Open ChatVault and explore the chat history available on your PC.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The portable version runs without installing. Windows 10 or 11, 64-bit, is required.&lt;/p&gt;

&lt;p&gt;The project uses Tauri, Rust, SQLite and React. The code is available under the MIT license.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ssanaullahrais/Chat-Vault" rel="noopener noreferrer"&gt;Source code and README&lt;/a&gt; · &lt;a href="https://youtu.be/ELxoq_pdI3I" rel="noopener noreferrer"&gt;Watch the app tour&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you try it, I’d appreciate specific feedback: does it find the chats you expect, and what would make finding an old conversation easier?&lt;/p&gt;

&lt;p&gt;If you hit a problem, please open a GitHub issue without including private chat contents.&lt;/p&gt;

</description>
      <category>showdev</category>
      <category>opensource</category>
    </item>
    <item>
      <title>I Built a Cloud Terminal Because I Was Tired of Babysitting My Laptop</title>
      <dc:creator>Sunny</dc:creator>
      <pubDate>Sat, 21 Feb 2026 12:19:31 +0000</pubDate>
      <link>https://dev.to/sanaullahraisofficial/i-built-a-cloud-terminal-because-i-was-tired-of-babysitting-my-laptop-2k2g</link>
      <guid>https://dev.to/sanaullahraisofficial/i-built-a-cloud-terminal-because-i-was-tired-of-babysitting-my-laptop-2k2g</guid>
      <description>&lt;p&gt;For the last 8 years, I have been building software mostly inside terminals.&lt;/p&gt;

&lt;p&gt;SSH sessions. Long running scripts. AI agents. Deployments. Background workers. And there was always one annoying problem.&lt;/p&gt;

&lt;p&gt;If I closed my laptop, lost internet, logged out, or switched devices… everything stopped.&lt;/p&gt;

&lt;p&gt;Processes died. Sessions broke. Progress was gone.&lt;/p&gt;

&lt;p&gt;So I built something to fix that.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Problem&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most of us use:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Local terminal&lt;/li&gt;
&lt;li&gt;SSH into servers&lt;/li&gt;
&lt;li&gt;Maybe tmux or screen&lt;/li&gt;
&lt;li&gt;AI tools running from CLI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But even with tmux, you are still tied to a specific machine. If your laptop shuts down or you move away from your setup, you are limited.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I wanted:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sessions that never die&lt;/li&gt;
&lt;li&gt;Device independence&lt;/li&gt;
&lt;li&gt;Real time sync&lt;/li&gt;
&lt;li&gt;No babysitting my laptop&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The Idea&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A cloud hosted terminal. Your sessions run on the server. Not in your browser. Not on your local machine. If the browser disconnects, the process keeps running. If you log out, it keeps running. If you switch devices, you reconnect and continue exactly where you left off.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How It Works (High Level)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Persistent PTY layer&lt;/li&gt;
&lt;li&gt;Server side session management&lt;/li&gt;
&lt;li&gt;Secure WebSocket communication&lt;/li&gt;
&lt;li&gt;Encrypted sensitive data storage&lt;/li&gt;
&lt;li&gt;Per user isolated sessions&lt;/li&gt;
&lt;li&gt;The browser is just a window.&lt;/li&gt;
&lt;li&gt;The actual shell runs in the cloud.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Security&lt;/strong&gt;: Security was a priority from day one:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTTPS and secure WebSocket connections&lt;/li&gt;
&lt;li&gt;Encrypted sensitive data&lt;/li&gt;
&lt;li&gt;Isolated sessions per user&lt;/li&gt;
&lt;li&gt;Optional server lock and inactivity auto lock&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can also test it with non critical servers first if you want to evaluate it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;It Is Live&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I started building this about a month ago, and now it is live.&lt;/p&gt;

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

&lt;p&gt;I would genuinely love feedback from other developers. Especially those who live inside terminals daily.&lt;/p&gt;

&lt;p&gt;If you have thoughts, concerns, or ideas, I am open.&lt;/p&gt;

&lt;p&gt;Let us build tools that make our lives easier.&lt;/p&gt;

</description>
      <category>vibecoding</category>
      <category>chatgpt</category>
      <category>claude</category>
    </item>
    <item>
      <title>ShipPHP Faster: A Simple, Safe Way to Deploy PHP Without FTP Hell</title>
      <dc:creator>Sunny</dc:creator>
      <pubDate>Tue, 27 Jan 2026 22:40:04 +0000</pubDate>
      <link>https://dev.to/sanaullahraisofficial/shipphp-faster-a-simple-safe-way-to-deploy-php-without-ftp-hell-56en</link>
      <guid>https://dev.to/sanaullahraisofficial/shipphp-faster-a-simple-safe-way-to-deploy-php-without-ftp-hell-56en</guid>
      <description>&lt;p&gt;If you have ever deployed a PHP website using FTP or cPanel file manager, you already know the pain:&lt;/p&gt;

&lt;p&gt;• Uploading files one by one&lt;br&gt;
• Accidentally overwriting production files&lt;br&gt;
• Forgetting which files changed&lt;br&gt;
• No rollback if something breaks&lt;br&gt;
• No history of what was deployed&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;I built ShipPHP Faster to fix exactly this.&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;ShipPHP Faster is an all in one deployment toolkit for PHP websites. It lets you push and pull only changed files, manage multiple projects with global profiles, and create automatic version tracked backups, all without SSH, Git, or server setup. Works perfectly on shared hosting, VPS, and traditional servers.&lt;/p&gt;

&lt;p&gt;Just &lt;strong&gt;one PHP file&lt;/strong&gt; on the server, and a simple CLI locally.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;How it works:-&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;ShipPHP Faster works by first installing the CLI via Composer, initializing your project, and uploading a single server file to the client’s website.&lt;/strong&gt; You can then use &lt;code&gt;shipphp pull&lt;/code&gt; to download the complete website from the client’s server to your local machine, making it easy to start working on an existing site. &lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;How backups works:-&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;ShipPHP also allows you to create backups directly on the server via the CLI and download them back to your local machine when needed. Each backup is stored with a unique version and timestamp, making it easy to compare, sync, restore, or roll back to any previous state safely  all using the same simple pull and push workflow, without SSH or manual file handling.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Why I Built This&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Recently, I had a situation where I uploaded files manually to a client’s server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The site crashed.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I had no quick rollback.&lt;br&gt;
No backup.&lt;br&gt;
No record of what changed.&lt;/p&gt;

&lt;p&gt;That moment made it clear:&lt;br&gt;
FTP is not a deployment system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;So I built ShipPHP Faster.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What ShipPHP Faster Does:-&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;• Deploy only changed files&lt;br&gt;
• Pull changes from the server&lt;br&gt;
• Track deployment state&lt;br&gt;
• Create versioned backups&lt;br&gt;
• Restore any previous version&lt;br&gt;
• Manage multiple websites&lt;br&gt;
• Work on shared hosting&lt;br&gt;
• Avoid SSH and Git on servers&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;All with simple commands like:&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;shipphp status&lt;br&gt;
shipphp push&lt;br&gt;
shipphp pull&lt;br&gt;
shipphp backup create&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Installation (Global CLI)&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;composer global require shipphp/faster&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Now you can use shipphp from anywhere.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Requirements:&lt;/strong&gt;&lt;br&gt;
• PHP 7.4+&lt;br&gt;
• Composer&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Token Based Security:&lt;/strong&gt;&lt;br&gt;
• 64 character tokens&lt;br&gt;
• Timing safe comparison&lt;br&gt;
• Token rotation&lt;br&gt;
• Secure profile storage&lt;br&gt;
• Optional IP whitelisting&lt;br&gt;
• Rate limiting&lt;br&gt;
• Request logging&lt;/p&gt;

&lt;p&gt;No passwords.&lt;br&gt;
No SSH keys.&lt;br&gt;
No Git credentials on servers.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Works on Shared Hosting&lt;/strong&gt;&lt;br&gt;
This is the big one.&lt;br&gt;
You don’t need:&lt;br&gt;
• SSH&lt;br&gt;
• Git&lt;br&gt;
• Node&lt;br&gt;
• Docker&lt;br&gt;
• CI/CD&lt;br&gt;
• Server access&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Just upload one PHP file.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  That’s it.
&lt;/h2&gt;

&lt;p&gt;So now question is, Why Not Just Use Git Deploy?&lt;/p&gt;

&lt;p&gt;Git based deploy is great, if you have:&lt;/p&gt;

&lt;p&gt;• SSH access&lt;br&gt;
• Git installed on server&lt;br&gt;
• Deployment hooks&lt;br&gt;
• Server permissions&lt;/p&gt;

&lt;p&gt;Many shared hosts don’t.&lt;/p&gt;

&lt;p&gt;ShipPHP Faster fills that gap.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;When ShipPHP Faster Makes Sense *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Use it if:&lt;br&gt;
• You deploy to shared hosting&lt;br&gt;
• You work with non technical clients&lt;br&gt;
• You don’t want server setup&lt;br&gt;
• You want rollback safety&lt;br&gt;
• You want simple workflows&lt;br&gt;
• You manage multiple websites&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What It’s Not. ShipPHP Faster is not:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;• A full CI/CD replacement&lt;br&gt;
• A cloud native deployment pipeline&lt;br&gt;
• A Docker orchestration tool&lt;/p&gt;

&lt;p&gt;It’s a practical PHP deployment tool for real hosting environments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Project Links - GitHub&lt;/strong&gt;&lt;br&gt;
&lt;code&gt;https://github.com/ssanaullahrais/ShipPHP-Faster&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Packagist:-&lt;br&gt;
&lt;code&gt;https://packagist.org/packages/shipphp/faster&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I would love to know:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Does the idea make sense?&lt;/li&gt;
&lt;li&gt;Is the workflow clear?&lt;/li&gt;
&lt;li&gt;Is there anything you would improve or change?&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>automation</category>
      <category>php</category>
      <category>github</category>
    </item>
  </channel>
</rss>
