[ CRT: off ]
Visitors: 000003481 | Server: 2026-07-13 23:21:00 UTC | UTC: 2026-07-13 23:21:00 UTC
Best Viewed in Firefox | Powered by PHP 7.4.33 | Connection: HTTPS (secure) | No Cookies · No Tracking
*** Welcome to the last honest website on the internet *** +++ This site stores NOTHING about you -- everything is computed in YOUR browser +++ NEW! Live browser fingerprinting module added +++ NEW! Interactive terminal -- type help to begin +++ Best viewed in Firefox at 1024x768 or higher +++ Remember: if the product is free, usually YOU are the product -- but not here +++ Greetz to everyone still running an old CRT monitor <3

disk Source Code

The entire project, readable in your browser. No hidden JavaScript, no sneaky beacons. If we claimed we don't track you, this is where you check.

disk privacy.php  (6.1 KB, 120 lines)
   1  <?php
   2  /**
   3   * privacy.php  --  Privacy score + the site's own privacy policy.
   4   * Top half: live 0-100 score computed in the browser.
   5   * Bottom half: our actual, plain-English promise (we store nothing).
   6   */
   7  require_once __DIR__ . '/includes/config.php';
   8  require_once __DIR__ . '/includes/functions.php';
   9  
  10  $PAGE_TITLE = 'Privacy';
  11  $PAGE_ID    = 'privacy.php';
  12  
  13  include __DIR__ . '/includes/header.php';
  14  ?>
  15  
  16    <h1><?php echo section_icon('lock', '#00FF00', 22); ?> Privacy Score</h1>
  17  
  18    <p>
  19      A blunt, honest 0&ndash;100 estimate of how exposed you are right now, split
  20      across six categories. Higher is better. Computed in your browser; not stored.
  21    </p>
  22  
  23    <div id="scoreOut">
  24      <div class="panel"><div class="panel-body center dim">
  25        Scoring your exposure <span class="cursor"></span>
  26      </div></div>
  27    </div>
  28  
  29    <hr class="double">
  30  
  31    <!-- The site's own privacy policy, old-web plain text -->
  32    <h2><?php echo section_icon('key', '#FFFF00'); ?> Our Privacy Policy (the short, honest one)</h2>
  33  
  34    <div class="good">
  35      <b>This website stores absolutely nothing about you.</b>
  36    </div>
  37  
  38    <table class="data">
  39      <tr><th>Question</th><th>Answer</th></tr>
  40      <tr><td>Do you set cookies?</td><td class="green">No. Not one.</td></tr>
  41      <tr><td>Do you use analytics?</td><td class="green">No Google Analytics, no trackers, no pixels.</td></tr>
  42      <tr><td>Do you log my IP?</td><td class="green">No. It is shown to you, then discarded.</td></tr>
  43      <tr><td>Do you have a database?</td><td class="green">No database anywhere in this project.</td></tr>
  44      <tr><td>Is my fingerprint uploaded?</td><td class="green">Never. It is computed and hashed entirely in your browser.</td></tr>
  45      <tr><td>What about the IP lookup?</td><td class="yellow">Your IP is sent to a public geo-IP API to fetch country/ISP, then thrown away. That third party has its own policy.</td></tr>
  46      <tr><td>Do you store the guestbook?</td><td class="yellow">Only what you voluntarily type there (a name + message) in a flat text file. Never your IP.</td></tr>
  47      <tr><td>Is there a visitor counter?</td><td class="yellow">Yes &mdash; a single integer in a text file. It counts page views, not people. No identities.</td></tr>
  48      <tr><td>Can I verify all this?</td><td class="cyan">Yes. Read the <a href="<?php echo eattr(url('source.php')); ?>">source</a>.</td></tr>
  49    </table>
  50  
  51    <div class="note">
  52      <b>The point of this site</b> is to show you what <i>other</i> websites quietly
  53      collect. So it would be deeply hypocritical of us to collect it. We don't.
  54    </div>
  55  
  56    <h3>How to reduce your exposure</h3>
  57    <ul class="retro">
  58      <li>Use <b>Firefox</b> with <span class="mono">privacy.resistFingerprinting</span>, or the <b>Tor Browser</b>.</li>
  59      <li>Install <b>uBlock Origin</b> to block trackers and third-party junk.</li>
  60      <li>Block <b>third-party cookies</b> and clear cookies on exit.</li>
  61      <li>Use a trustworthy <b>VPN</b> to replace your IP with a shared one.</li>
  62      <li>Disable <b>WebRTC</b> or use an extension that stops the local-IP leak.</li>
  63      <li>Keep your browser <b>updated</b> &mdash; old versions stand out.</li>
  64    </ul>
  65  
  66    <div id="privExport" class="asciibox center" style="display:none">
  67      <b>Export your privacy report (local only):</b><br>
  68      <button class="export-btn" data-fmt="json">[ JSON ]</button>
  69      <button class="export-btn" data-fmt="html">[ HTML ]</button>
  70      <button class="export-btn" data-fmt="md">[ Markdown ]</button>
  71      <button class="export-btn" data-fmt="txt">[ TXT ]</button>
  72    </div>
  73  
  74  <script>
  75    window.EYES = window.EYES || {};
  76    window.EYES.BASE = <?php echo json_encode(BASE_URL); ?>;
  77  </script>
  78  <script src="<?php echo eattr(url('assets/js/detect.js')); ?>"></script>
  79  <script src="<?php echo eattr(url('assets/js/fingerprint.js')); ?>"></script>
  80  <script src="<?php echo eattr(url('assets/js/scan.js')); ?>"></script>
  81  <script src="<?php echo eattr(url('assets/js/export.js')); ?>"></script>
  82  <script>
  83    (function () {
  84      function esc(s){return String(s==null?'':s).replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;');}
  85      function go() {
  86        window.EYES.wireExportButtons();
  87        window.EYES.buildReport().then(function (report) {
  88          var priv = window.EYES.computePrivacy(report);
  89          var el = document.getElementById('scoreOut');
  90          var sClass = priv.score >= 66 ? '' : priv.score >= 33 ? 'warn' : 'bad';
  91          var color  = priv.score >= 66 ? 'green' : priv.score >= 33 ? 'yellow' : 'red';
  92          var cats = priv.categories.map(function (c) {
  93            var cc = c.score >= 66 ? '' : c.score >= 33 ? 'warn' : 'bad';
  94            return '<tr><td class="k">' + esc(c.name) + '</td><td class="v">' +
  95              '<div class="bar ' + cc + '"><div class="bar-fill" style="width:' + c.score + '%"></div>' +
  96              '<div class="bar-label">' + c.score + '/100</div></div>' +
  97              '<div class="dim" style="font-size:13px">' + esc(c.notes.join('; ')) + '</div></td></tr>';
  98          }).join('');
  99          el.innerHTML =
 100            '<div class="panel"><div class="panel-title">Overall</div><div class="panel-body center">' +
 101              '<pre class="' + color + '" style="font-size:26px;margin:6px 0">' + priv.score + ' / 100</pre>' +
 102              '<div class="bar ' + sClass + '" style="height:28px"><div class="bar-fill" style="width:' + priv.score + '%"></div>' +
 103              '<div class="bar-label" style="font-size:16px">' + priv.score + ' / 100</div></div>' +
 104            '</div></div>' +
 105            '<div class="panel"><div class="panel-title">By Category</div><div class="panel-body">' +
 106              '<table class="data kv">' + cats + '</table>' +
 107              '<p class="dim">100 = well protected, 0 = fully exposed. A rough heuristic, computed locally.</p>' +
 108            '</div></div>';
 109          document.getElementById('privExport').style.display = 'block';
 110        }).catch(function (e) {
 111          document.getElementById('scoreOut').innerHTML = '<div class="badbx">Scoring failed: ' + esc(e && e.message ? e.message : e) + '</div>';
 112        });
 113      }
 114      if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', go);
 115      else go();
 116    })();
 117  </script>
 118  
 119  <?php include __DIR__ . '/includes/footer.php'; ?>
 120  

You are reading the real file being executed on the server. What you see is what runs.