Project 1: A Twine Narrative

Twine resources page


Using Twine, tell (or re-tell) a story in a way that takes advantage of interactivity and a web-based medium. This can be an original story, an adaptation, a historical imagination of a moment from one of our readings. It can be a day in the life of a Grinnell student or a Grinnell squirrel.


These descriptions of an effective Twine narrative are drawn from what you admired about Depression Quest. An effective, memorable Twine narrative:

  • Uses choice to pull the reader in.
  • Uses text display creatively to make a point. For example, seeing choices blocked out emphasized an aspect of living with depression that may be invisible on the outside.
  • Uses images to enhance the story.
  • Uses embedded descriptive links to add information, giving the reader the option to learn more or keep going.
  • If it has an educational goal, it gives the effect of not “teaching about” something but rather sharing the experience somehow.

An effective Twine narrative does not have to do all these things, but it will most likely do at least one of them in a thoughtful, relatively polished way.

What is due & when it is due

You may turn in your Twine file or a link to a publicly hosted version, perhaps on

Along with the file or link to your narrative, you will turn in a 300-500 word reflective essay, describing 1) what you set out to do and what you ended up doing; 2) how it takes advantage of interactivity and a web-based medium 3) significant challenges you faced along the way and how you overcame them; and 4) what surprised you about the process and why.

Present narrative in class: Friday, March 15 (provide link or files for others to play, then spend about 5 minutes telling us about your goals and your process)

Provide final files or link and reflective essay to instructor by 5pm, Friday March 15.

Choices to make/milestones along the way:

  • What story do you want to tell?
    • Brief proposal due w/ Assignment 3
  • What elements of design do you think are most important for that story & what Twine tools will you need to learn to realize that design??
    • Brief proposal due w/ Assignment 4
  • How will you scope your narrative to make sure you have time to finish?
    • Storyboard due no later than March 8

A note about length:

I am not going to set a minimum or maximum length. This will vary depending on story, scope, and the amount you need to learn to realize your design. The reflective essay will bear more weight than length in the grade. In general, I will say it is better to have a shorter story more fully realized and polished than a longer one that does not demonstrate much engagement with the interface and design.

Project 2: Independent creation using a tool we have discussed in class (or very similar to it)

Working on your own or with one or more of your peers, create something using one of the tools we have discussed in class that allows you to learn more about skills that you are interested in.

Broadly, that means you will likely be working in one of three areas:

  • Website creation
  • Coding with Python
  • Interactive narrative/game design with Twine

Here are some sample projects that could fulfill this assignment:

Website creation

  • Build a static website with your MathLAN space or Jekyll + GitHub (something new to learn but more accessible to you after Grinnell) that showcases original content that is curated and meaningful (e.g. an annotated bibliography on a course topic, video or audio interviews with several people focused on a particular topic)
  • Add a CSS stylesheet to your MathLAN site that functions as a template for a personal portfolio website.

Coding with Python

  • Finish & expand (in some small way) the poem generator we started in class
  • Work through and submit code examples for tutorials to do things that you think might be useful or interesting, such as:
    • Web scraping (lawfully)
    • Exploring text through generating word frequency, number of sentences and sentence length, or some other measure that is part of the Natural Language Toolkit
    • Working with files (PDFs, spreadsheets, etc.)
  • Learn to use for something other than textual manipulation, like image manipulation or data visualization
  • Write your own starter Python tutorial–what do you think the first Python program someone writes should be? Can you think of a starter program that would be attractive and inspiring to a particular type of student? That would get a particular lesson across?
  • Some resources for these kinds of tutorials are:

Interactive narrative/game design with Twine

  • Build out one of your group’s existing Twine narratives substantially or develop a new one that meaningfully takes advantage of advanced features such as custom CSS, macros such as conditionals and for loops, mathematical operations, or specialized data structures.
  • Build a Twine game that immerses the player in one of the ethical questions discussed in the course.
  • Create a video Tutorial for a Twine feature that you didn’t find good documentation for before. (You could also do multiple of these as a collaborative project.)

I’m open to proposals outside of these areas with a strong rationale and feasibility plan.

Please note: I do not expect perfectly executed projects, I expect vigorous and documented attempts to learn to do something that challenges you. Choose an idea that excites you in some way, make a plan, start executing it, make observations, adjust the plan, repeat. I do not want you to go beyond the scope of time allotted to this course in your weekly allocation or attempt overnight heroics because you believe you must submit something perfect.

Step 1: Project plan

Due date: Friday April 19

You/ your group will develop and submit a 1-page project plan that outlines what you are trying to do, what its key components will be, and how you plan to spread the work out over the remaining weeks of the course. You should stick with the idea you propose, but the nitty gritty of the prospectus can be adjusted at any time.


Step 2: Project updates

Due dates: Fridays April 26, May 3

On each of these Fridays, you will fill out a project update form (link to be provided). This will ask you to report your project work sessions that week, what progress you’ve made, and what questions have arisen.

Step 3: Presentation & final submission

In class presentation: Friday May 10

Final materials submitted by 5pm May 10 unless otherwise negotiated

You will turn in files that allow me to experience your project on my computer or a link to a publicly hosted version.

Along with the files or link, you will turn in a 300-500 word reflective essay, describing 1) what the group set out to do for this project and what you ended up doing;  2) significant challenges you faced along the way and how you overcame them; 3) if working independently, how you planned & managed your time in the project; if working in a group: how you divided the labor amongst yourselves and why you divided it this way; and 4) what surprised you about the process and why. If you are working in a group, parts 1-3 may be written collaboratively, but each group member should contribute their own part 4. It can all be one document, however.