Choose a version:
27% The original file has 342147 bytes (334.1k) and is available from the project website.
There you can find the official minified version, too, which brings down the size to 93670 bytes (91.5k, 27%).

After GZIP compression these minified files vary in size:
unpkg
  39473 bytes (38.5k)
CDN
Boot
  34315 bytes (33.5k)
CDN
cdnjs
  34315 bytes (33.5k)
CDN
gzip -6 (default)
  34120 bytes (33.3k)
local copy
gzip -9
  34056 bytes (33.3k)
local copy
libdeflate -12
  32888 bytes (32.1k)
local copy
7zip -mx=9 -tgzip
  32858 bytes (32.1k)
local copy
kzip -s0 -rn -b4
  32825 bytes (32.1k)
local copy
pigz -11 -n
  32820 bytes (32.1k)
local copy
zultra
  32809 bytes (32.0k)
local copy
Zopfli
  32736 bytes (32.0k)
local copy

perma-link to the smallest file on my server:
http://minime.stephan-brumme.com/files/vue/vue-2.6.12.min.js (or via HTTPS)

You will automatically get the smallest Vue 2.6.12 file, ETag caching is available and
if your browser doesn't support GZIP decompression then the uncompressed version will be sent.

Currently best Zopfli settings

Save 1579 bytes by using my Vue 2.6.12 Zopfli version instead of the best available CDN (4.82% smaller than cdnjs, 32736 vs. 34315 bytes):
You can use my super-compressed files for whatever purpose you like as long as you respect the library's original license agreement.
There are no restrictions from my side - but please avoid hot-linking if you run a high-traffic website.

These command-line settings yielded the best compression ratio so far (Linux version of zopfli-krzymod):
zopfli --i1000000 --mb8 --mls16 --bsr25 --lazy --ohh

(found August 21, 2020)
Description Value Parameter
iterations 1000000  --i1000000
maximum blocks 8  --mb8
maximum length score 16  --mls16
block splitting recursion 25  --bsr25
lazy matching in LZ77 yes  --lazy
optimized Huffman headers yes  --ohh
initial random W for iterations 1  --rw1
initial random Z for iterations 2  --rz2

Verify file integrity

After decompression, my uncompressed files are identical to the original ones:

MD5:
curl --silent --compressed https://raw.githubusercontent.com/vuejs/vue/vue-2.6.12.min.js --location | md5sum
fb192338844efe86ec759a40152fcb8e  -
curl --silent --compressed https://minime.stephan-brumme.com/files/vue/vue-2.6.12.min.zopfli.js.gz | md5sum
fb192338844efe86ec759a40152fcb8e  -

SHA1:
curl --silent --compressed https://raw.githubusercontent.com/vuejs/vue/vue-2.6.12.min.js --location | sha1sum
e55df1f7d6c288ee73d439bab26dd006ffee7af3  -
curl --silent --compressed https://minime.stephan-brumme.com/files/vue/vue-2.6.12.min.zopfli.js.gz | sha1sum
e55df1f7d6c288ee73d439bab26dd006ffee7af3  -

All listed CDNs deliver identical contents:
CDN Size (compressed) MD5 (uncompressed) Timestamp
unpkg 39473 bytes fb192338844efe86ec759a40152fcb8e (invalid)
Boot 34315 bytes fb192338844efe86ec759a40152fcb8e (invalid)
cdnjs 34315 bytes fb192338844efe86ec759a40152fcb8e (invalid)

Note: only the MD5 hashes are shown to keep things simple.

Other Versions

Available Vue versions at minime.stephan-brumme.com:

2.6.12, 2.6.11, 2.6.10, 2.6.9, 2.6.8, 2.6.7, 2.6.6, 2.6.5, 2.6.4, 2.6.3, 2.6.2, 2.6.1, 2.6.0, 2.5.22, 2.5.21, 2.5.20, 2.5.19, 2.5.18, 2.5.17, 2.5.16, 2.5.15, 2.5.14, 2.5.13, 2.5.12, 2.5.11, 2.5.10, 2.5.9, 2.5.8, 2.5.7, 2.5.6, 2.5.5, 2.5.4, 2.5.3, 2.5.2, 2.5.1, 2.5.0, 2.4.4, 2.4.3, 2.4.2, 2.4.1, 2.4.0, 2.3.4, 2.3.3, 2.3.2, 2.3.1, 2.3.0, 2.2.6, 2.2.5, 2.2.4, 2.2.3, 2.2.2, 2.2.1, 2.2.0, 2.1.10, 2.1.9, 2.1.8, 2.1.7, 2.1.6, 2.1.5, 2.1.4, 2.1.3, 2.1.2, 2.1.1, 2.1.0, 2.0.8, 2.0.7, 2.0.6, 2.0.5, 2.0.4, 2.0.3, 2.0.2, 2.0.1, 2.0.0,
1.0.28, 1.0.27, 1.0.26, 1.0.25, 1.0.24, 1.0.23, 1.0.22, 1.0.21, 1.0.20, 1.0.19, 1.0.18, 1.0.17, 1.0.16, 1.0.15, 1.0.14, 1.0.13, 1.0.12, 1.0.11, 1.0.10, 1.0.9,
0.10.6, 0.10.5, 0.10.4, 0.10.3, 0.10.2, 0.10.1, 0.10.0,
0.9.3, 0.9.2, 0.9.1, 0.9.0

The project site contains an overview how well these versions were compressed.
Other interesting projects are AngularJS, BackboneJS, Bootstrap, D3, Dojo, Ember, jQuery, Knockout, lodash, React, Socket.IO, ThreeJS and UnderscoreJS.

Changelog

Best Zopfli parameters so far:
Size Improvement Parameters Found
32736 bytes -7 bytes zopfli --i1000000 --mls16 --bsr25 --lazy --ohh August 21, 2020 @ 17:56
32743 bytes -3 bytes zopfli --i100000 --mls16 --bsr25 --lazy --ohh August 21, 2020 @ 13:24
32746 bytes -1 byte zopfli --i10000 --mls16 --bsr25 --lazy --ohh August 21, 2020 @ 12:58
32747 bytes -14 bytes zopfli --i1000 --mls16 --bsr25 --lazy --ohh August 21, 2020 @ 12:55
32761 bytes zopfli --i100 --mls16 --bsr25 --lazy --ohh August 21, 2020 @ 12:51

If there are multiple parameter sets yielding the same compressed size, only the first one found is shown.

Most recent activity on August 21, 2020 @ 17:56.

Heatmaps

This Zopfli heatmap visualizes how compression changes when modifying the --bsr and --mls parameter.
Cell's contents is the best filesize achieved (in bytes, hover with mouse over cells to see number of iterations).

Good parameters are green, bad are red. The best and worst are bold as well.
The brightness of the blue background color indicates how many iterations were processed:
10,000, 100,000 or 1,000,000.
bsr \ mls
2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768
bsr \ mls
2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768
32788 32783 32791 32797 32789 32788 32799 32792 32794 32790 32807 32774 32775 32791 32797
32761 32762 32745 32783 32783 32806 32797 32793 32793 32804 32783 32784 32773 32775 32793
32811 32810 32803 32794 32799 32798 32795 32789 32790 32798 32779 32779 32773 32775 32795
32778 32787 32799 32790 32759 32797 32796 32796 32801 32794 32784 32778 32774 32773 32793
32762 32757 32798 32757 32756 32785 32791 32801 32797 32794 32780 32778 32773 32772 32795
32766 32802 32774 32757 32757 32798 32800 32781 32804 32793 32778 32775 32777 32776 32794
32758 32765 32799 32788 32756 32793 32795 32796 32790 32794 32779 32783 32773 32779 32792
32757 32804 32758 32754 32758 32801 32796 32792 32791 32793 32778 32783 32774 32776 32793
32757 32763 32757 32757 32758 32805 32794 32796 32805 32793 32778 32772 32774 32773 32792
32803 32808 32795 32765 32794 32799 32795 32796 32792 32791 32780 32775 32773 32773 32791
32767 32765 32805 32759 32801 32804 32800 32795 32802 32794 32779 32779 32776 32773 32793
32807 32808 32802 32763 32793 32795 32800 32791 32801 32793 32778 32783 32773 32774 32792
32753 32760 32764 32763 32798 32793 32798 32796 32791 32800 32781 32777 32774 32775 32796
32804 32809 32804 32787 32797 32801 32798 32796 32787 32795 32778 32782 32774 32776 32795
32808 32808 32808 32801 32801 32799 32801 32796 32795 32794 32782 32777 32776 32779 32793
32759 32806 32760 32753 32795 32795 32801 32796 32802 32794 32779 32774 32781 32782 32792
32761 32759 32758 32760 32795 32809 32797 32792 32790 32798 32778 32773 32773 32784 32795
32797 32802 32804 32802 32795 32799 32800 32793 32790 32794 32779 32771 32773 32774 32794
32804 32809 32799 32800 32796 32804 32798 32796 32790 32794 32779 32779 32776 32775 32800
32759 32767 32761 32752 32757 32795 32798 32796 32790 32794 32779 32777 32772 32772 32791
32806 32802 32760 32736 32794 32802 32798 32796 32789 32797 32780 32783 32773 32777 32795
32807 32798 32803 32803 32798 32800 32798 32796 32791 32800 32783 32783 32776 32772 32793
32806 32768 32764 32758 32799 32800 32798 32796 32786 32790 32778 32783 32773 32784 32796

Due to the Monte Carlo design of my search algorithm, not all parameters have reached the same number of iterations yet:
Iterations Min. Bytes Reduction Coverage
100 32761 bytes 100%
1,000 32747 bytes -14 bytes 100%
10,000 32746 bytes -1 byte 100%
100,000 32743 bytes -3 bytes 0.58%
1,000,000 32736 bytes -7 bytes 0.29%
10,000,000

KZIP has far less options available for tuning/optimization. I only played around with the number of blocks (parameter -n):
Blocks Min. Bytes Compared To Best Zopfli Compared To Best KZIP
32895 bytes +159 bytes (+0.49%) +70 bytes
32893 bytes +157 bytes (+0.48%) +68 bytes
32894 bytes +158 bytes (+0.48%) +69 bytes
32888 bytes +152 bytes (+0.46%) +63 bytes
32825 bytes +89 bytes (+0.27%)
32826 bytes +90 bytes (+0.27%) +1 byte
32844 bytes +108 bytes (+0.33%) +19 bytes
32846 bytes +110 bytes (+0.34%) +21 bytes
32884 bytes +148 bytes (+0.45%) +59 bytes

Non-DEFLATE Algorithms

Archivers based on completely different compression algorithms often produce superior results.
Unfortunately, browsers only support gzip compression at the moment.
However, support for Brotli is constantly growing - for example, your browser actually supports it !
Algorithm Program Parameters Size Compared To Best Zopfli
ZPAQ (Wikipedia) zpaq zpaq -method 69 26997 bytes -5739 bytes (-17.53%)
RAR (proprietary) RAR rar a -m5 -md64m -mc63:128t -mt1 28012 bytes -4724 bytes (-14.43%)
PPMd (Wikipedia) 7zip 7za a -mx=9 -m0=ppmd 29048 bytes -3688 bytes (-11.27%)
Brotli (Wikipedia) brotli brotli -q 11 30768 bytes -1968 bytes (-6.01%)
Burrows-Wheeler transform (Wikipedia) bzip2 bzip2 -9 31402 bytes -1334 bytes (-4.08%)
LZMA2 (Wikipedia) xz xz -9 31520 bytes -1216 bytes (-3.71%)
Zstandard (Wikipedia) zstd zstd -19 32160 bytes -576 bytes (-1.76%)

Detailled Analysis

I wrote a DEFLATE decoder in Javascript. Click the button below to start a client-side analysis of the smallest gzipped files (may take a second):


Notes: pigz is a fast open source multi-threaded implementation of gzip written by one of the original authors of gzip.
However, when using compression level 11, pigz actually switches to the slower Zopfli algorithm and isn't multi-threaded anymore.
KrzyMOD's extensions to Zopfli offer the highest level of configuration and is therefore used for my brute-force search.
Ken Silverman wrote the closed-source KZIP compression program and Jonathon Fowler ported it to Linux.
Defluff was created by Joachim Henke; DeflOpt is a tool by Ben Jos Walbeehm.

website made by Stephan Brumme in 2015 and still improving in 2020.
all timestamps are displayed in central european time. see my changelog.
no flash, not even images or external css files - and everything squeezed into a single html file.
which was handsomely compressed before releasing it into the wild internet - obviously.

please visit my homepage and my blog, too.
email: minime (at) stephan-brumme.com

All trademarks are property of their respective owners. You know, the boring legal stuff.