Skip to content

moon0440/meme-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Meme Generator

Simple meme image generator created for Udacity Nanaodegree program.

About The Project

Meme Generator in action

A simple meme generator written in python. This project was created as part of Udacity's Python Nanaodgree program nd303. Includes a Flask based web interface and a cli interface. The cli interface will save the the generated memes to disk.

Built With

  • Flask: Simple web server interface
  • Pandas: Easy processing meme text from csv files
  • Pillow: Image processing to add text

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

pdftotext binary is required and can be installed...

  • On Ubuntu 20.04
    sudo apt install poppler-utils

Installation

  1. Clone this repo.
    git clone https://github.com/moon0440/meme-generator.git
  2. Setup virtual env inside project folder and activate.
    cd ./meme-generator
    python3 -m venv .venv
    source .venv/bin/activate
  3. Install python deps
    pip install -r requirements.txt

Usage

Use this space to show useful examples of how a project can be used. Additional screenshots, code examples and demos work well in this space. You may also link to more resources.

Using the cli

$ python main.py --help
usage: main.py [-h] [-p PATH] [-b BODY] [-a AUTHOR]

optional arguments:
  -h, --help            show this help message and exit
  -p PATH, --path PATH  Path to and image file.
  -b BODY, --body BODY  Body or Content written to image.
  -a AUTHOR, --author AUTHOR
                        Author name written to image.

Or run the default options python main.py to create a meme in ./tmp

Flask Web Development Server

Starting dev server

$ export FLASK_APP=app
$ flask run
 * Serving Flask app 'app' (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http:https://127.0.0.1:5000/ (Press CTRL+C to quit)

Once started(using the default port) go to http:https://127.0.0.1:5000/

For more information on this process checkout Flasks Development Server Documentation.

Modules

For descriptions of roles and responsibilities of modules see API Documentation

License

Distributed under the MIT License. See LICENSE for more information.

Contact

LinkedIn