A modern Electron-based file manager specifically designed for Salesforce B2C Commerce (SFCC) WebDAV servers. This application provides secure credential management, intuitive file operations, and pre-configured SFCC folder structures.
Despite this paragraph this application and the readme was completely AI built. As is best practise in software development the readme reflects the development at some point, but is out of date in some regard. Maybe I will ask the overlords to update the scripture.
Use at your own risk and dont try to generate a bearer token in Account manager
- Basic Authentication: Username/password authentication
- Bearer Token: OAuth/JWT token-based authentication
- Encrypted Storage: Credentials stored securely using OS keychain (macOS Keychain, Windows Credential Store, Linux Secret Service)
- Additional Encryption: Double-layer encryption with AES for sensitive data
- Standard SFCC Folders: Pre-configured quick access to common SFCC directories:
cartridges- Custom cartridges and business logicimpex- Import/Export files and datacatalogs- Product catalogs and catalog datalogs- Application and system logsstatic- Static resources (CSS, JS, images)libraries- Shared libraries and dependenciesmetadata- System and custom object metadatasites- Site-specific configurations
- Clean Design: Modern, professional interface with intuitive navigation
- File Operations: Upload, download, create folders, delete files/folders
- Search: Real-time file search and filtering
- Breadcrumb Navigation: Easy navigation with clickable path segments
- File Type Icons: Visual file type identification
- Connection Management: Save and manage multiple SFCC instances
- Node.js (version 16 or higher)
- npm or yarn package manager
-
Clone or download this repository
-
Navigate to the project directory:
cd sfcc-webdav-manager -
Install dependencies:
npm install
-
Run the application:
npm start
For development with auto-reload:
npm run devTo build the application for distribution:
npm run build- Launch the SFCC WebDAV Manager
- Click the "Connect" button or "Add Connection" in the sidebar
- Fill in your connection details:
- Connection Name: A friendly name for your SFCC instance
- WebDAV URL: Your SFCC WebDAV endpoint (usually
https://your-instance.demandware.net/on/demandware.servlet/webdav/Sites) - Authentication Type: Choose between Basic Auth or Bearer Token
- Credentials: Enter your username/password or bearer token
- Select a saved connection from the sidebar
- Click the connect button (plug icon)
- Once connected, you can browse files and folders
- Navigate: Double-click folders to enter them
- Upload: Click the upload button and select files
- Download: Click the download button next to any file
- Create Folder: Click the folder+ button and enter a name
- Delete: Click the trash button next to any file/folder
- Search: Use the search box to filter files by name
Use the predefined SFCC folders in the sidebar for quick access to common directories:
- Click any folder name to navigate directly to that path
- These folders follow SFCC best practices and standard project structure
- OS Integration: Leverages your operating system's secure credential storage
- Encryption: Additional AES encryption layer for sensitive data
- Separation: Public data (URLs, names) stored separately from sensitive credentials
- Auto-cleanup: Secure removal of credentials when connections are deleted
- Credentials are never stored in plain text
- All sensitive operations use secure IPC communication
- No sensitive data is logged or exposed in the interface
- Regular security updates through Electron framework
Common SFCC WebDAV URL patterns:
- Production:
https://your-instance.demandware.net/on/demandware.servlet/webdav/Sites - Staging:
https://staging-your-instance.demandware.net/on/demandware.servlet/webdav/Sites - Development:
https://dev-your-instance.demandware.net/on/demandware.servlet/webdav/Sites
For Account Manager integration:
- Generate an API token in SFCC Account Manager
- Select "Bearer Token" as authentication type
- Paste your token in the Bearer Token field
Connection Failed
- Verify your WebDAV URL is correct
- Check your credentials are valid
- Ensure your SFCC instance allows WebDAV connections
- Verify network connectivity
Certificate Errors
- Some SFCC instances may have SSL certificate issues
- Contact your SFCC administrator for proper SSL configuration
Permission Denied
- Ensure your SFCC user has appropriate permissions
- Check with your SFCC administrator about WebDAV access rights
Run the application with debug information:
npm run devThis opens the Developer Tools for debugging.
src/
βββ main.js # Main Electron process
βββ preload.js # Secure IPC bridge
βββ credential-manager.js # Secure credential storage
βββ webdav-manager.js # WebDAV operations
βββ renderer/
βββ index.html # Main UI
βββ styles.css # Application styles
βββ app.js # Frontend logic
- Electron: Cross-platform desktop app framework
- WebDAV: Industry-standard web-based file management protocol
- Keytar: Secure OS credential storage
- CryptoJS: Additional encryption layer
- Electron Store: Configuration and settings storage
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
MIT License - see LICENSE file for details.
For issues, questions, or feature requests, please create an issue in the project repository.
This application handles sensitive credentials. Always:
- Keep the application updated
- Use strong passwords
- Regularly rotate API tokens
- Report security issues responsibly