This is the frontend component of Remofy - a secure remote server management platform built with Vue.js.
This is the frontend component of the Web SSH application, built with Vue 3 and Vite. It provides a web interface for connecting to SSH servers.
- Terminal Copy/Paste:
- Auto-copy on selection: Selected text is automatically copied to clipboard
- Ctrl+Shift+C: Manual copy with visual feedback (prevents dev tools from opening)
- Ctrl+Shift+V: Paste from clipboard (native browser functionality)
- WebSocket Keepalive: Client-side ping mechanism to maintain connection during idle periods
- Auto-reconnection: Automatic reconnection with exponential backoff (up to 5 attempts)
- Google OAuth Integration: Secure user authentication
- Multi-server Management: Connect to multiple SSH servers simultaneously
- File Manager: Browse and manage files via SFTP
Before running the application, you need to configure the environment variables.
-
Copy the example configuration file:
cp .env.example .env.production
Note: Use
.env.developmentfor local development. -
Open the file and set the
VITE_API_BASE_URLto point to your backend server:VITE_API_BASE_URL=http://localhost:8080
The project is fully containerized. Follow these steps to run it with Docker:
docker build -t web-ssh-frontend .docker run -d -p 8081:80 web-ssh-frontendThis will start the application on port 8081. You can access it at http://localhost:8081.
To run the application locally for development:
npm install
npm run devThis project uses Vue 3 <script setup> SFCs. For more information, check out the Vue 3 Documentation.