<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>File Editor on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/file-editor/</link>
        <description>Recent content in File Editor on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Fri, 05 Sep 2025 15:26:45 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/file-editor/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>Termix</title>
        <link>https://producthunt.programnotes.cn/en/p/termix/</link>
        <pubDate>Fri, 05 Sep 2025 15:26:45 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/termix/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1566072535552-15c9f8a35079?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTcwNTcxODl8&amp;ixlib=rb-4.1.0" alt="Featured image of post Termix" /&gt;&lt;h1 id=&#34;lukegustermix&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LukeGus/Termix&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LukeGus/Termix&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;repo-stats&#34;&gt;Repo Stats
&lt;/h1&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;https://flagcdn.com/us.svg&#34; alt=&#34;English&#34; width=&#34;24&#34; height=&#34;16&#34;&gt; English | 
  &lt;a href=&#34;README-CN.md&#34;&gt;&lt;img src=&#34;https://flagcdn.com/cn.svg&#34; alt=&#34;中文&#34; width=&#34;24&#34; height=&#34;16&#34;&gt; 中文&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://img.shields.io/github/stars/LukeGus/Termix?style=flat&amp;amp;label=Stars&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub Repo stars&#34;
	
	
&gt;
&lt;img src=&#34;https://img.shields.io/github/forks/LukeGus/Termix?style=flat&amp;amp;label=Forks&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub forks&#34;
	
	
&gt;
&lt;img src=&#34;https://img.shields.io/github/v/release/LukeGus/Termix?style=flat&amp;amp;label=Release&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub Release&#34;
	
	
&gt;
&lt;a href=&#34;https://discord.gg/jVQGdvHDrf&#34;&gt;&lt;img alt=&#34;Discord&#34; src=&#34;https://img.shields.io/discord/1347374268253470720&#34;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4 id=&#34;top-technologies&#34;&gt;Top Technologies
&lt;/h4&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-React-61DBFB?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=react&amp;amp;logoColor=61DBFB&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;React Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-TypeScript-3178C6?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=typescript&amp;amp;logoColor=3178C6&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;TypeScript Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-Node.js-3C873A?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=node.js&amp;amp;logoColor=3C873A&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Node.js Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-Vite-646CFF?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=vite&amp;amp;logoColor=646CFF&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Vite Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-TailwindCSS-38B2AC?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=tailwindcss&amp;amp;logoColor=38B2AC&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Tailwind CSS Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-Docker-2496ED?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=docker&amp;amp;logoColor=2496ED&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Docker Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-SQLite-003B57?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=sqlite&amp;amp;logoColor=003B57&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;SQLite Badge&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;#&#34; &gt;&lt;img src=&#34;https://img.shields.io/badge/-Radix%20UI-161618?style=flat-square&amp;amp;labelColor=black&amp;amp;logo=radixui&amp;amp;logoColor=161618&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Radix UI Badge&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;br /&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://github.com/LukeGus/Termix&#34;&gt;
    &lt;img alt=&#34;Termix Banner&#34; src=./repo-images/HeaderImage.png style=&#34;width: auto; height: auto;&#34;&gt;  &lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;If you would like, you can support the project here!&lt;br&gt;
&lt;a class=&#34;link&#34; href=&#34;https://github.com/sponsors/LukeGus&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/Sponsor-LukeGus-181717?style=for-the-badge&amp;amp;logo=github&amp;amp;logoColor=white&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;GitHub Sponsor&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1 id=&#34;overview&#34;&gt;Overview
&lt;/h1&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://github.com/LukeGus/Termix&#34;&gt;
    &lt;img alt=&#34;Termix Banner&#34; src=./public/icon.svg style=&#34;width: 250px; height: 250px;&#34;&gt;  &lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;Termix is an open-source, forever-free, self-hosted all-in-one server management platform. It provides a web-based solution for managing your servers and infrastructure through a single, intuitive interface. Termix offers SSH terminal access, SSH tunneling capabilities, and remote file editing, with many more tools to come.&lt;/p&gt;
&lt;h1 id=&#34;features&#34;&gt;Features
&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;SSH Terminal Access&lt;/strong&gt; - Full-featured terminal with split-screen support (up to 4 panels) and tab system&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SSH Tunnel Management&lt;/strong&gt; - Create and manage SSH tunnels with automatic reconnection and health monitoring&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Remote File Editor&lt;/strong&gt; - Edit files directly on remote servers with syntax highlighting, file management features (uploading, removing, renaming, deleting files)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SSH Host Manager&lt;/strong&gt; - Save, organize, and manage your SSH connections with tags and folders&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Server Stats&lt;/strong&gt; - View CPU, memory, and HDD usage on any SSH server&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;User Authentication&lt;/strong&gt; - Secure user management with admin controls and OIDC and 2FA (TOTP) support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Modern UI&lt;/strong&gt; - Clean interface built with React, Tailwind CSS, and Shadcn&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Languages&lt;/strong&gt; - Built-in support for English and Chinese&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;planned-features&#34;&gt;Planned Features
&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Improved Admin Control&lt;/strong&gt; - Give more fine-grained control over user and admin permissions, share hosts, etc&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Theming&lt;/strong&gt; - Modify theming for all tools&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved Terminal Support&lt;/strong&gt; - Add more terminal protocols such as VNC and RDP (anyone who has experience in integrating RDP into a web-application similar to Apache Guacamole, please contact me by creating an issue)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mobile Support&lt;/strong&gt; - Support a mobile app or version of the Termix website to manage servers from your phone&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;installation&#34;&gt;Installation
&lt;/h1&gt;&lt;p&gt;Visit the Termix &lt;a class=&#34;link&#34; href=&#34;https://docs.termix.site/install&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Docs&lt;/a&gt; for more information on how to install Termix. Otherwise, view a sample docker-compose file here:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;services&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;termix&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;image&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;ghcr.io/lukegus/termix:latest&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;container_name&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;termix&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;restart&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;unless-stopped&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ports&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;s2&#34;&gt;&amp;#34;8080:8080&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;volumes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;- &lt;span class=&#34;l&#34;&gt;termix-data:/app/data&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;environment&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;PORT&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;8080&amp;#34;&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;volumes&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;termix-data&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;driver&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;local &lt;/span&gt;&lt;span class=&#34;w&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h1 id=&#34;support&#34;&gt;Support
&lt;/h1&gt;&lt;p&gt;If you need help with Termix, you can join the &lt;a class=&#34;link&#34; href=&#34;https://discord.gg/jVQGdvHDrf&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Discord&lt;/a&gt; server and visit the support channel. You can also open an issue or open a pull request on the &lt;a class=&#34;link&#34; href=&#34;https://github.com/LukeGus/Termix/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;GitHub&lt;/a&gt; repo.&lt;/p&gt;
&lt;h1 id=&#34;show-off&#34;&gt;Show-off
&lt;/h1&gt;&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;./repo-images/Image 1.png&#34; width=&#34;400&#34; alt=&#34;Termix Demo 1&#34;/&gt;
  &lt;img src=&#34;./repo-images/Image 2.png&#34; width=&#34;400&#34; alt=&#34;Termix Demo 2&#34;/&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;img src=&#34;./repo-images/Image 3.png&#34; width=&#34;250&#34; alt=&#34;Termix Demo 3&#34;/&gt;
  &lt;img src=&#34;./repo-images/Image 4.png&#34; width=&#34;250&#34; alt=&#34;Termix Demo 4&#34;/&gt;
  &lt;img src=&#34;./repo-images/Image 5.png&#34; width=&#34;250&#34; alt=&#34;Termix Demo 5&#34;/&gt;
&lt;/p&gt;
&lt;p align=&#34;center&#34;&gt;
  &lt;video src=&#34;https://github.com/user-attachments/assets/f9caa061-10dc-4173-ae7d-c6d42f05cf56&#34; width=&#34;800&#34; controls&gt;
    Your browser does not support the video tag.
  &lt;/video&gt;
&lt;/p&gt;
&lt;h1 id=&#34;license&#34;&gt;License
&lt;/h1&gt;&lt;p&gt;Distributed under the Apache License Version 2.0. See LICENSE for more information.&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
