tal

talkgenerator

talk-generator is capable of generating coherent slide decks based on a single topic suggestion.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

107

Maintenance

Last Commit

16d ago

Contributors

8

Package

Dependencies

16

License

MIT License

Categories

Readme

Talk Powerpoint Generator

CircleCI codecov License

This program automatically generates PowerPoints about any topic. These presentation slide decks can be used by improvisers for the improvisational comedy format "Improvised TED talk" or "Powerpoint Karaoke". In such games, the actors have to present an unseen presentation slide deck, but pretend to be an expert and explain "their" slide show choices.

Demo

Ty out this generator on our online platform: talkgenerator.com.

Example

Automatically Generated

Easy Install and Run

Our program relies on certain APIs that require authentication in order to use it. Create a file named .env (don't forget the period) in your project directory, and fill this with the correct API keys as described on our wiki page about this.

# Make a new Python 3 virtual environment
python3 -m venv venv;

# Activate the virtual environment
source venv/bin/activate;

# Upgrade pip and install  requirements
pip install --upgrade pip setuptools;
python3 -m pip install -r requirements.txt;

# Download NLTK dependencies
python run_nltk_download.py;

# Install the Talk Generator
pip install -e .;

# Generate a 10 slide talk with topic peanuts
talkgenerator --topic "peanuts" --num_slides 10

Run arguments

ArgumentDescription
topicThe topic of the generator. This works best if it is a common, well-known noun. Use comma-separated words to generate a slide deck about multiple topics
slidesThe number of slides in the generated presentation (default: 10)
schemaThe presentation schema to use when generating the presentation. Currently, only two modes are implemented, being default and test (for testing during development)
titleTitle of the presentation. Either topic or this one should to be set in order to generate a slide deck (just setting topic is usually more fun though)
presenterThe name that will be present on the first slide. Leave blank for an automatically generated name
output_folderThe folder to output the generated presentations (default: ./output/)
save_pptIf this flag is true(default), the generated powerpoint will be saved on the computer in the output_folder
open_pptIf this flag is true (default), the generated powerpoint will automatically open after generating
parallelIf this flag is true (default), the generator will generate all slides in parallel

Program structure

See the wiki to know more about the inner implementation.

Tests

Test files are tests/*.py, prefixed with test_. Test files use the unittest module. They can easily be run all together when using PyCharm by right clicking on talk-generator and pressing Run 'Unittests in talk-generator'

coverage run -m pytest; coverage html

Test coverage is automatically handled by codecov. Tests are automatically run with CircleCI based on the .yml file in the .circleci directory.

Credits

This generator is made by Thomas Winters and Kory Mathewson, with contributions from Shaun Farrugia and Julian Faid.

If you would like to refer to this project in academic work, please cite the following paper:

Winters T., Mathewson K.W. (2019) Automatically Generating Engaging Presentation Slide Decks. In: Ekárt A., Liapis A., Castro Pena M. (eds) Computational Intelligence in Music, Sound, Art and Design. EvoMUSART 2019. Lecture Notes in Computer Science, vol 11453. Springer, Cham

@InProceedings{winters2019tedric,
    author="Winters, Thomas
    and Mathewson, Kory W.",
    editor="Ek{\'a}rt, Anik{\'o}
    and Liapis, Antonios
    and Castro Pena, Mar{\'i}a Luz",
    title="Automatically Generating Engaging Presentation Slide Decks",
    booktitle="Computational Intelligence in Music, Sound, Art and Design",
    year="2019",
    publisher="Springer International Publishing",
    address="Cham",
    pages="127--141",
    isbn="978-3-030-16667-0"
}

License

MIT License. Copyright (c) 2018-2020 Kory Mathewson and Thomas Winters

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial