Add initial Metadata

This commit is contained in:
Gaurav Ujjwal 2021-07-27 18:09:19 +05:30
parent 7c096cd735
commit 7e3335a930
14 changed files with 228 additions and 3 deletions

View file

@ -1,3 +1,81 @@
AVNC
====
**AVNC** is a VNC client for Android.
<p align="center"><img src="metadata/en-US/branding/wordmark.svg" alt="AVNC Banner" height="200"></img></a>
<p align="center"> <b>AVNC</b> is a VNC client for Android. </p>
-------------------------------------------------------------------------------
### Features
- Material Design (with Dark theme)
- Configurable gestures
- Tight encoding
- Virtual Keys
- Picture-in-Picture mode
- View-only mode
- Zeroconf Server Discovery
- TLS support (AnonTLS, VeNCrypt)
- SSH tunnel (VNC over SSH)
- Import/Export servers
- VNC Repeater support
- Clipboard Sync with server
### Screenshots
[<img src="metadata/en-US/images/phoneScreenshots/1.jpg" width="250">](metadata/en-US/images/phoneScreenshots/1.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/2.jpg" width="250">](metadata/en-US/images/phoneScreenshots/2.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/3.jpg" width="250">](metadata/en-US/images/phoneScreenshots/3.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/4.jpg" width="250">](metadata/en-US/images/phoneScreenshots/4.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/5.jpg" width="250">](metadata/en-US/images/phoneScreenshots/5.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/6.jpg" width="250">](metadata/en-US/images/phoneScreenshots/6.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/7.jpg" width="380">](metadata/en-US/images/phoneScreenshots/7.jpg)
[<img src="metadata/en-US/images/phoneScreenshots/8.jpg" width="380">](metadata/en-US/images/phoneScreenshots/8.jpg)
Development
===========
Tools required:
- Git
- Android Studio
- Android SDK
- NDK (with CMake)
To get started, simply clone the repo and initialize submodules:
```bash
git clone git@github.com:gujjwal00/avnc.git
cd avnc
git submodule update --init --depth 1
```
Now you can import the project in Android Studio, or build it directly from terminal.
Read [Architecture.kt](app/src/main/java/com/gaurav/avnc/Architecture.kt) (preferably in
Android Studio) to know more about the code.
-------------------------------------------------------------------------------
To reduce build time during development, Libjpeg-turbo and LibreSSL are **not**
included in default build types.
Thus, the Tight encoding, and security types based on TLS, will not work in such builds.
If you need these features, you can create a full build.
Before creating a full build, you have to prepare the LibreSSL source tree:
1. Make sure following packages are installed: automake, autoconf, git, libtool, perl
2. Run the following commands from root of the project:
```bash
cd extern/libressl/
./autogen.sh
```
Now, select an appropriate build type (`releaseAll`/`debugAll`) to create full build.
See [build.gradle](app/build.gradle) for available build types.
-------------------------------------------------------------------------------

View file

@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="192pt" height="192pt"
viewBox="0 0 192 192" version="1.2" id="svg373" sodipodi:docname="wire.svg"
inkscape:version="1.0.2 (1.0.2+r75+1)">
<metadata id="metadata377">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview pagecolor="#ffffff" bordercolor="#666666" borderopacity="1"
objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0"
inkscape:pageshadow="2" inkscape:window-width="1920" inkscape:window-height="1004"
id="namedview375" showgrid="false" inkscape:zoom="2.53" inkscape:cx="168.28078"
inkscape:cy="132.37362" inkscape:window-x="0" inkscape:window-y="0"
inkscape:window-maximized="1" inkscape:current-layer="layer3" inkscape:snap-bbox="true"
inkscape:object-paths="true" inkscape:snap-intersection-paths="true"
inkscape:document-rotation="0" />
<defs id="defs342">
<linearGradient inkscape:collect="always" id="linearGradient1378" x1="97.520142" y1="192.98738"
x2="97.520142" y2="-2.1316282e-14" gradientUnits="userSpaceOnUse">
<stop style="stop-color:#102359;stop-opacity:1" offset="0" id="stop7" />
<stop style="stop-color:#3365ff;stop-opacity:1" offset="1" id="stop9" />
</linearGradient>
</defs>
<g inkscape:groupmode="layer" id="layer1" inkscape:label="Layer 1" style="display:inline"
sodipodi:insensitive="true">
<rect
style="opacity:1;fill:url(#linearGradient1378);fill-opacity:1;stroke:none;stroke-width:0;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1370" width="192" height="192" x="-2.1316282e-14" y="-2.1316282e-14" />
</g>
<g inkscape:groupmode="layer" id="layer3" inkscape:label="Layer 2" style="display:inline"
sodipodi:insensitive="true">
<g id="g1354" transform="matrix(0.93660255,0,0,0.94847931,6.0861538,4.9459848)">
<path
style="fill:none;stroke:#e0b609;stroke-width:12.2257;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 74.80537,72.159937 98.197377,119.93525" id="path1343" />
<path
style="fill:none;stroke:#ffce00;stroke-width:12.2257;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 50.423073,119.93525 74.80537,72.159937" id="path1923" />
<path
style="fill:none;stroke:#00c21d;stroke-width:12.2194;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 141.58008,72.061603 -23.9271,47.781647" id="path1925" />
<path
style="fill:none;stroke:#00e524;stroke-width:12.2194;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 117.65298,119.84325 93.799434,72.061603" id="path1347" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View file

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg"
width="270" height="135" viewBox="0 0 270 135" version="1.2" id="svg373">
<metadata id="metadata377">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<defs id="defs342">
<linearGradient id="linearGradient1378" x1="97.520142" y1="192.98738" x2="97.520142"
y2="-2.1316282e-14" gradientUnits="userSpaceOnUse"
gradientTransform="scale(1.4062499,0.70312499)">
<stop style="stop-color:#102359;stop-opacity:1" offset="0" id="stop7" />
<stop style="stop-color:#3365ff;stop-opacity:1" offset="1" id="stop9" />
</linearGradient>
</defs>
<g id="layer1" style="display:inline">
<rect
style="opacity:1;fill:url(#linearGradient1378);fill-opacity:1;stroke:none;stroke-width:0;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1370" width="270" height="135" x="-2.1316282e-14" y="-2.1316282e-14" />
</g>
<g id="layer4" style="display:inline">
<g id="g888">
<path
style="fill:none;stroke:#d6ac00;stroke-width:11.523;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 62.835877,44.88821 84.744891,90.202108" id="path1343" />
<path
style="fill:none;stroke:#ffce00;stroke-width:11.523;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 39.999356,90.202108 62.835877,44.88821" id="path1923" />
</g>
<g id="g892">
<path
style="fill:none;stroke:#00c21d;stroke-width:11.5171;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 125.37724,44.794942 102.96705,90.114848" id="path1925" />
<path
style="fill:none;stroke:#00e524;stroke-width:11.5171;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 102.96705,90.114848 80.625766,44.794942" id="path1347" />
</g>
<g id="g897">
<path
style="display:inline;opacity:0.994888;fill:none;stroke:#cc2e00;stroke-width:11.4951;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 140.93564,90.207468 140.71046,44.792563" id="path1432" />
<path
style="display:inline;opacity:0.994888;fill:none;stroke:#cc2f00;stroke-width:11.4951;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 185.40954,90.207468 185.18436,44.792563" id="path1468" />
<path
style="display:inline;opacity:0.994888;fill:none;stroke:#ff3c00;stroke-width:11.4951;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="M 185.40954,90.207468 140.71046,44.792563" id="path1473" />
</g>
<g id="g904">
<path
style="opacity:0.994888;fill:none;fill-opacity:0.09;stroke:#ff00a4;stroke-width:11.4955;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:normal"
id="path850" transform="matrix(0.70407264,-0.71012796,0.70407264,0.71012796,0,0)"
d="m 95.673352,222.66088 a 22.580896,22.580896 0 0 1 0,-31.93421 22.580896,22.580896 0 0 1 31.934208,0" />
<path
style="display:inline;opacity:0.994888;fill:none;stroke:#ff00a3;stroke-width:11.4952;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 230.01454,44.797978 -7.25146,0.09142" id="path1273" />
<path
style="display:inline;opacity:0.994888;fill:none;stroke:#ff00a3;stroke-width:11.4952;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 230.01454,90.110648 -7.25146,0.0914" id="path1277" />
<circle
style="opacity:0.994888;fill:#d6008a;fill-opacity:1;stroke:none;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path922" cx="230.01451" cy="44.843689" r="5.7476249" />
<circle
style="opacity:0.994888;fill:#d6008a;fill-opacity:1;stroke:none;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="circle924" cx="230.01451" cy="90.156349" r="5.7476249" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.1 KiB

View file

@ -0,0 +1,16 @@
AVNC is an open source VNC client for Android. It allows you to remotely control any device running a VNC server.
Features:
- Material Design (with Dark theme)
- Configurable gestures
- Tight encoding
- Virtual Keys
- Picture-in-Picture mode
- View-only mode
- Zeroconf Server Discovery
- TLS support (AnonTLS, VeNCrypt)
- SSH tunnel (VNC over SSH)
- Import/Export servers
- VNC Repeater support
- Clipboard Sync with server

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

View file

@ -0,0 +1 @@
Fast & Secure VNC client for Android

1
metadata/en-US/title.txt Normal file
View file

@ -0,0 +1 @@
AVNC