• Stars
    star
    134
  • Rank 270,967 (Top 6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 8 years ago
  • Updated about 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Chrome extension, and friend from hell

Buddy!

Foreword

In the winter of 2016, I began creating Buddy. Initially Buddy was built to be a friend when working from home, something or someone to talk back at me every now and then, and inject a little humor into my life.

After some time, the surprise and delight of creating my own bot (if you could even call it that) went missing, and I opened Buddy up to some friends, with the promise that whatever code they write, will be running in my browser.

Its probably best if you watch me talk about him, to really experience what he became all about.

Video of me talking about buddy

He's a nasty piece of work.

--

Understandably, there's some really weird code in his actual source, but due to overwhelming want, I'm open sourcing a really (read: really really) simple shell, of Buddy's existance. So people can create and play with their own "Buddy".

A few things that the "video" version has that this doesn't are: style injecting, some strange system to give default "popups", something that definitely manages timings, so certain things can happen at certain hours of the day. But hey, perhaps the fun part is building those pieces yourself!

Installing

  1. Clone repo, or download it
  2. Go to chrome://extensions/ (in chrome) and click "load unpacked extension"
  3. Choose the src folder (it has the manifest.json file)
  4. You should hear him speak, straight out of the bat.

How it works!

tldr:

Buddy injects scripts onto your page.

More weird version that makes little sense to myself

A few things you need to know... for the most part, pages funcitonality runs out of pages/pageName.js ... so reddit will run out of reddit.js.

The javascript for specific pages is injected by the bindPage file, which then requests page information from the client ... which is in bot/init.js

A few other files exist. actions.js which is the client side functions like "speak", this maps to the pageActions speak function.

Licence

The MIT License (MIT)

Copyright (C) 2016 ~ Tim Holman ~ [email protected]

More Repositories

1

elevator.js

Finally, a "back to top" button that behaves like a real elevator.
JavaScript
6,622
star
2

github-corners

A fresher "Fork me on GitHub" callout.
HTML
4,931
star
3

zenpen

A minimalist writing zone.
JavaScript
3,764
star
4

cursor-effects

Old-school cursor effects for your browser built with modern JavaScript
JavaScript
3,355
star
5

intense-images

A simple library to view large images up close using simple mouse interaction, and the full screen.
JavaScript
2,577
star
6

generative-artistry

A website for self coding generative art tutorials.
JavaScript
837
star
7

giflinks

The best thing to happen to the internet since the <a> tag.
JavaScript
796
star
8

dom-animator

A nifty javascript library to run animations, hidden in comment nodes, within the dom.
JavaScript
628
star
9

ascii-morph

Library to animate between two ascii images -
JavaScript
582
star
10

obnoxious.css

Animations for the strong of heart, and stupid of mind.
CSS
510
star
11

console-dot-frog

Forget console logs, console.frog is where its all at!
JavaScript
317
star
12

overscroll

Javascript for adding small easter eggs when over scrolling on apple devices.
JavaScript
298
star
13

texter

Texter is a little app that lets you explore your creativity by drawing with text.
JavaScript
274
star
14

the-indie-web

A hotspot for indie creations on the web
CSS
254
star
15

tutorial-markdown

Interactive coding tutorials with markdown
JavaScript
246
star
16

what-have-you-made-today

Chrome & FireFox extension to replace the default home page. What have you made today?
Vue
232
star
17

discreet-twitter-ui

A minimal ui/ux concept for twitter buttons allowing hover reveals under an icon.
CSS
221
star
18

office-simulator

Miss the office life? You won't any more with this wonderful office slack simulator.
JavaScript
161
star
19

tileJs

Windows Metro Tiles with css3 and javascript
JavaScript
154
star
20

smelvetica

Sorry y'all, got a takedown from monotype.
134
star
21

bsod.js

Blue screen of death for the web, because debugging shouldn't be easy.
JavaScript
111
star
22

binary-music-player

A binary music player, with customizable notes & playback.
HTML
101
star
23

mosquito-js

An annoying mosquito created with the web audio api.
JavaScript
96
star
24

unicoder.js

A small js library to convert text into โ“ฃโ“”โ“งโ“ฃ.
JavaScript
92
star
25

console-fright-night

Open the browser console, get a fright. Just like that!
JavaScript
88
star
26

the-zen-zone

Digital meditation aid
JavaScript
83
star
27

the-pattern-library

A library of beautiful patterns, created by talented designers.
JavaScript
77
star
28

palettab

New fonts and colors with every new tab.
JavaScript
69
star
29

image-nodes

Javascript experiment using image data to create a small interactive particle system
CSS
60
star
30

emoji-intensifies

A quick and simple tool to make shaky "intensifies" emoji.
JavaScript
55
star
31

meettheipsums

A website to link out to all of the awesome filler text in the world.
HTML
52
star
32

s.js

Canvas JavaScript polyfill for the vital and pivotal S we all drew in school.
JavaScript
51
star
33

the-internet

Basically the internet (or most important parts) in a module.
JavaScript
49
star
34

resizer

A small library to improve the user experience of a text box, by decreasing the font size slightly if it is filled with text.
JavaScript
49
star
35

beautiful-curves

A simple generative drawing app using the html5 canvas
JavaScript
39
star
36

cant-not-tweet-this

Taking annoying social media popup crap to the next level!
CSS
38
star
37

long-doge-challenge

The Long Doge Challenge
HTML
36
star
38

concentrics

A little web experiment, using concentric circles and squares to create abstract arty stuff!
JavaScript
35
star
39

abstract-clocks

Abstract Clocks, telling the time in abstract & beautiful ways.
HTML
34
star
40

tetris-pieces

A beautiful AI Tetris, playing on your wall!
JavaScript
33
star
41

rasterizer

Experimenting with rasterization with javascript + the html5 canvas
JavaScript
30
star
42

checkboxrace

A checkbox based race
HTML
29
star
43

asciiFaceSaver

An osx screen saver, looping over various ascii faces. Written in Swift.
Swift
26
star
44

interactive-banners

A few html5 experiments using js/canvas to create interactive banners
JavaScript
26
star
45

puginarug

Honor the Pug in a Rug
HTML
24
star
46

mondrian-and-me

A "Useless Website" honoring Piet Mondrian's fantastic art.
HTML
23
star
47

useless-web-archive

An archive for the sites of "the useless web"
HTML
23
star
48

Dripping-Paint

Small html5 canvas experiment to simulate a simple dripping paint effect
JavaScript
20
star
49

tholman-blog

Source to my personal blog and website.
CSS
19
star
50

thats-the-finger

The finger. Thats it.
JavaScript
14
star
51

star-spangled-browser

A chrome plugin to blow minds when hovering the word america.
JavaScript
13
star
52

one-square-minesweeper

A game of minesweeper with only one square to sweep. Fun for the whole family.
CSS
11
star
53

scripts-for-life

A few bash shells scripts I use to make life easier.
Shell
9
star
54

human-music

Sit back and stretch your legs and enjoy the relaxing tunes of Earth radio.
HTML
5
star
55

tholman

A repo about me!
1
star
56

reflex-toys

Reflex Toys
HTML
1
star