Skip to main content

legos.memes

Travis PyPI PyPI

PyPI PyPI PyPI

Automatically create memes based on phrasing in this memes lego. Built using the memegen API, with inspiration derived from the Hubot memecaptain API implementation

The Lego module system and Legobot are a FOSS project lovingly crafted by Bren Briggs and friends. All code borrowed from Legobot is his (C).

Usage

Autodetect

This lego is invoked simply by speaking in meme phrases. Currently the following memes are supported (case insensitive.)

  • y u no...
    • Generates a Y U No guy meme with your text on it.
  • yo dawg...
    • Generates an Xzibit Yo Dawg meme with your message text on it.
  • what if I told you...
    • Generates a Morpheus What if I told you meme with your message text on it.
  • one does not simply...
    • Generates a Boromir One does not simply meme with your message text on it.
  • brace yourselves...
    • Generates a Ned Stark brace yourselves meme with your message text on it.
  • why not both
    • Generates a Why don't we have both girl meme.
  • ermahgerd...
    • Generates a Ermahgerd! girl meme with your message text on it.
  • NO!
    • Generates a Grumpy Cat meme.
  • i have no idea what i'm doing
    • Generates a Computer Dog meme.
  • it's a trap
    • Generates an Admiral Ackbar meme.
  • can't... if you don't ...
    • Generates a Roll Safe meme with your message on it.

Manual Invocation

You can also generate memes manuall through the syntax <keyword>: <top line text>, <bottom line text>

If you only want one line of text, simply don't include the comma.

Example: fry: not sure if ai, or really fast coder would generate this meme: Fry Meme

You can get a list of keywords in chat via !help memes list or you can visit Meme Keyword List

Custom Templates

You can generate memes with a custom image as well. Simply pass in a dictionary to the keyword config when adding the lego to the baseplate.

baseplate_proxy.add_child(Memes, font='impact', config={
    'templates': {
        'code': {
            'name': 'My Custom Template',
            'custom': 'http://...'
        }
    }
})
  • code is the code you want to use to trigger the custom template
  • name is whatever name you want to use
  • custom is the url to the custom background template

Installation

pip3 install legos.memes

This is a Lego designed for use with Legobot, so you'll get Legobot along with this. To deploy it, import the package and add it to the active legos like so:

# This is the legobot stuff
from Legobot import Lego
# This is your lego
from legos.memes import Memes

# Legobot stuff here
lock = threading.Lock()
baseplate = Lego.start(None, lock)
baseplate_proxy = baseplate.proxy()

# Add your lego
baseplate_proxy.add_child(Memes, font='impact')  # font adding is optional

Tweaking

While you can use this one as-is, you could also add a localized version to your Legobot deployment by grabbing memes.py and deploying is as a local module. Example of a Legobot instance with local modules

Contributing

As always, pull requests are welcome.

Release files for legos.memes 0.3.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for legos.memes 0.3.8
File Size Uploaded
legos.memes-0.3.8.tar.gz 19.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for legos.memes 0.3.8
File Interpreter ABI Platform
legos.memes-0.3.8-py3-none-any.whl Python 3 none any Details

Total release size: 38.7 kB

Release files / legos.memes-0.3.8.tar.gz

Download URL legos.memes-0.3.8.tar.gz
Size 19.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c97b62e2931d053776533f4f547840357fa361caccfab7ec87bb7af4475e51ea
BLAKE2b-256 checksum
How to use checksums
db2c00e3e1b860139a0545c935622b315dc80aa7af8f3ad8c73679407cc871a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

Release files / legos.memes-0.3.8-py3-none-any.whl

Download URL legos.memes-0.3.8-py3-none-any.whl
Size 19.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f139adc964da39c5e2071b2b307865cd4a4b97464daf47926af0696d18639ad5
BLAKE2b-256 checksum
How to use checksums
4e75380478e0f68c08a9b553562d5fbf47766d0daa8fecb4c522514b3f7794b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

Release history Release notifications | RSS feed

This release

0.3.8 This release

2 release files

0.3.7

1 release file

0.3.6

1 release file

0.3.5

1 release file

0.3.4

1 release file

0.3.3

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page