Giter Club home page Giter Club logo

winpinator's Introduction

Winpinator

GitHub release (latest by date) License GitHub issues

Winpinator is an unofficial Windows port of Warpinator, rewritten from scratch in C++. It supports the gRPC based protocol of its Linux equivalent, as well as zeroconf/mDNS based service discovery. Due to the fact that Windows has a completely different filesystem, some Warpinator features have to be emulated, e.g. sending filesystem permissions along with the files.

Winpinator should integrate well into Windows ecosystem by supporting drag-and-drop and appearing in Windows Explorer's Send to context menu.

Screenshots

readme/screen1.png readme/screen2.png readme/screen4.png readme/screen3.png

Features

  • Answer and process mDNS queries to be able to discover Warpinator clients running on local network
  • Support both Warpinator registration protocols (v1 and v2)
  • Send and receive files, directories or any combination of those
  • Support deflate compression of data stream during transfers
  • Optionally save zone information to received files (This file came from another computer and might be blocked to help protect this computer. in File Properties dialog)
  • Store transfer history as well as all transferred file paths
  • Accept files to send as command line parameters and handle the Send to option in Windows Explorer's context menu
  • Optionally start on system startup
  • Run in background and show toast notifications when someone sends some files

Building

As for now, Visual Studio 2019 is used to compile binaries. Any newer version of VS should work, but is not actively tested. C++14 is used to develop the software.

Dependencies

Dependencies of Winpinator are managed by vcpkg, but using vcpkg during compilation is optional. In that case all header and lib files have to be installed manually. Currently, Winpinator depends on the following libraries and tools:

Installer

Winpinator uses NSIS as its install system. Currently, only one additional NSIS plugin is required for the script to compile - inetc.

Translations

Winpinator makes use of wxWidgets' built-in gettext implementation, so it should be localizable using standard set of gettext tools (like Poedit). POT template file is available at po/winpinator.pot. To make the language appear in preferences, an additional line is required to be added in res/to_copy/Languages.xml. Its format is:

    <Language code="[ISO language code, e.g. de_DE]" name="[Local name of the language, e.g. Deutsch]" flag="[flag filename, e.g. de.png]" />

Remember that you should also localize the installer by inserting a line

!insertmacro MUI_LANGUAGE "[Language name in English, e.g. German]"

and then translating all the lines right below, starting with LangString.

After translating all the strings and adding that line to Languages.xml, please submit a Pull Request.

License

GNU General Public License version 3, available here

winpinator's People

Contributors

swiszczoo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.