Skip to content

DevShare v1.1.0

Latest
Compare
Choose a tag to compare
@abdorrahmani abdorrahmani released this 28 Jul 10:12
· 4 commits to master since this release

v1.1.0 - DevShare πŸŽ‰

✨ Added

  • Self-Update Command: New devshare update command to automatically check for and install the latest release from GitHub, using the official installer scripts for each platform.
  • Cross-Platform Update: Update logic downloads the correct archive, extracts the binary, and runs the appropriate installer (install.sh or install.bat).
  • Windows Version Info: Windows binaries now include version information, company, product name, and more in the Properties dialog.
  • Windows App Icon: Custom icon is now embedded in the Windows executable.
  • Embedded License Info: License and copyright information are embedded in the Windows binary.
  • Improved Release Automation: GoReleaser workflow now builds with -ldflags="-s -w" for smaller binaries and uses windres to embed resources.

πŸ” Added

  • Password Protection: New --password flag to secure development environments
  • Authentication Proxy: Creates a secure proxy server with password authentication
  • Session Management: Maintains authentication cookies for 1 hour
  • Beautiful Auth UI: Modern, responsive authentication page
  • Secure Access: Protects development work from unauthorized network access

🎯 Features

  • Reverse Proxy: Forwards authenticated requests to the actual development server
  • Cookie-based Sessions: Secure session management with HttpOnly cookies
  • Network Isolation: Direct local access remains available while network access is protected
  • QR Code Integration: QR codes point to the secure proxy URL when authentication is enabled
  • Port Management: Automatically finds available ports for the authentication proxy

πŸ› οΈ Technical Details

  • Authentication Middleware: Custom middleware for password verification
  • Proxy Implementation: HTTP reverse proxy with header forwarding
  • Port Detection: Automatic port availability checking
  • Error Handling: Graceful handling of authentication failures
  • Resource Embedding: Windows resource file (versioninfo.rc) and icon embedding via GoReleaser

πŸš€ Usage

# Basic usage (no authentication)
devshare

# With password protection
devshare --password=mysecret123

# Custom port with authentication
devshare 3000 --password=mysecret123

# Update DevShare to the latest version
devshare update

πŸ” Authentication Flow

  1. User starts DevShare with --password flag
  2. DevShare starts the development server on the original port
  3. DevShare creates an authentication proxy on a different port
  4. Network access requires password authentication
  5. Local access remains direct (no authentication required)
  6. QR codes point to the secure proxy URL