MCPcopy
hub / github.com/tessalt/echo-chamber-js

github.com/tessalt/echo-chamber-js @main sqlite

repository ↗ · DeepWiki ↗
47 symbols 106 edges 8 files 0 documented · 0%
README

Echochamber.js

All of the commenting, none of the comments.

alpha af

Echochamber.js is a third-party script you can install to add a simple comment form to your blog post or website.

why not just use disqus?

Because then there'd be a chance that someone would read the comments. You might have to read those comments. You don't want that.

When a user submits a comment, echochamber.js will save the comment to the user's LocalStorage, so when they return to the page, they can be confident that their voice is being heard, and feel engaged with your very engaging content. It does not make any HTTP requests. Since LocalStorage is only local, you and your database need not be burdened with other people's opinions.

Features

  • No server required!
  • 100% spam-proof!
  • Compatible with most blog and static site software
  • Styles itself nicely to match your site's colours and fonts

Installation

Copy and paste the following code where you want your comments to appear:

  <script id="echochamber">
    var EchoChamber = window.EchoChamber || {};
    (function() {
      EchoChamber.discussionURL = window.location;
      var script = document.createElement('script');
      script.src = 'https://s3.amazonaws.com/echochamberjs/dist/main.js';
      script.async = true;
      var entry = document.getElementById('echochamber');
      entry.parentNode.insertBefore(script, entry);
    })();
  </script>

Screenshot

screenshot

Contributing

Requirements: node

1.Fork the repo * clone the fork * run npm install

Local dev:

If you want to work with the iframe environment, there are some steps:

So you want the widget running on one server, and the host on another. I do this locally by messing with /etc/hosts like so:

127.0.0.1 publisher.dev
127.0.0.1 widget.dev
  • modify your httpd.conf file (in /etc/apache2)
<VirtualHost *:80>
    ServerName publisher.dev
    DocumentRoot "/Users/username/directory-of-widget"
</VirtualHost>
<VirtualHost *:80>
    ServerName widget.dev
    DocumentRoot "/Users/username/directory-of-page"
</VirtualHost>
  • restart apache
  • run ./script/watch.sh during dev (unix only)
  • run ./script/build.sh before making a pull request
  • make a pull request against the main repo referencing an issue if possible

Core symbols most depended-on inside this repo

AddUnsigned
called by 20
bundle.js
AddUnsigned
called by 20
src/md5.js
FF
called by 16
bundle.js
GG
called by 16
bundle.js
HH
called by 16
bundle.js
II
called by 16
bundle.js
FF
called by 16
src/md5.js
GG
called by 16
src/md5.js

Shape

Function 47

Languages

TypeScript100%

Modules by API surface

bundle.js24 symbols
src/md5.js14 symbols
src/echo_chamber.js5 symbols
src/comment_list.js2 symbols
src/comment.js1 symbols
src/author.js1 symbols

Dependencies from manifests, versioned

browserify10.2.6 · 1×
uglify0.1.5 · 1×
watchify3.2.3 · 1×

For agents

$ claude mcp add echo-chamber-js \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact