A desktop file manager application built with Neutralino.js that allows you to browse local filesystems and Kubernetes pod filesystems, with the ability to copy files between them.
Note: This project is a prototype and was generated using AI. It is intended for demonstration and experimentation purposes.
- Node.js (v14 or higher)
- npm or yarn
- kubectl or minikube (for Kubernetes functionality)
- Install dependencies:
npm install- Install Neutralino CLI globally (optional, but recommended):
npm install -g @neutralinojs/neuRun the application in development mode:
npm startOr if you have the CLI installed globally:
neu runBuild the application for your platform:
npm run buildOr:
neu build.
├── neutralino.config.json # Neutralino configuration
├── package.json # Node.js dependencies
├── resources/ # Application resources
│ ├── index.html # Main HTML file
│ ├── styles.css # Stylesheet
│ └── js/
│ ├── main.js # Main entry point
│ ├── main.js.backup # Backup of original monolithic file
│ ├── neutralino.js # Neutralino client library
│ ├── config/
│ │ └── constants.js # Application constants
│ ├── state/
│ │ └── appState.js # State management
│ └── modules/
│ ├── window/ # Window management
│ ├── filesystem/ # Filesystem operations
│ ├── kubernetes/ # Kubernetes operations
│ ├── ui/ # UI components
│ └── utils/ # Utility functions
└── README.md # This file
- Dual Panel Interface: Browse local filesystem and Kubernetes pods side-by-side
- Pod Filesystem Access: Navigate and browse files inside Kubernetes pods
- File Copying: Copy files between local filesystem and pods
- Modern UI: Clean, responsive interface with custom window controls
- Keyboard Navigation: Use Backspace to navigate up directories
- Breadcrumb Navigation: Click on path segments to navigate
The application uses a modular ES6 architecture with clear separation of concerns:
- Window Management: Handles window controls and resizing
- Filesystem Operations: Manages local and pod filesystem access
- Kubernetes Integration: Handles kubectl operations and pod management
- UI Components: Reusable UI rendering and interaction components
- State Management: Centralized application state with change notifications
- Utilities: Reusable helper functions