Film Log

The Film Log is an open source application written using the Python Flask framework to assist keeping track of information about your still film rolls and sheets. This includes information about shots, the film used, filters, aperture, etc. The idea is this information can be looked up online or printed out and kept with the actual film itself. Here is an example of a large format log. It has 4 exposures on one page to match the PrintFile sheets.

It can also track information for the darkroom, such as a scan of the contact sheet, as well as settings on a particular print.

Current Features

  • Log information about exposures made.
  • Print exposure logs for filing with your real negatives.
  • Organize film exposure sheets into projects and binders.
  • Log information about darkroom prints.
  • Upload contact sheets with details on exposure.
  • Log information about darkroom prints.
  • View statitics on which films you use the most and other interesting stats.
  • Track film stock so you know when it's time to buy more film.
  • View statitics on which films you use the most and other interesting stats.

Planned Features

  • A built-in search to help in finding exposures, taken subjects, etc.
  • Support for social login services.
  • API for mobile or 3rd party apps to use.


  • Binders Screenshot
    Organize Into Binders
    Keep track of your film projects and films in binders which correspond to the physical binders the film is kept it. This is up to you to decide but organizing by year is a good way to go about it.
  • Projects Screenshot
    Then Organize Into Projects

    Organize your films within a binder into projects, which could correspond to dividers in the binder so you can separate by film size or by a large project (such as a vacation or photoshoot) or however you might care to organize it.

  • Film Screenshot
    Log Dem Films

    Create a film roll and log exposures, tracking development of the roll and information about each exposure. You can generally provide as much or as little information as you like.

    For sheets, you still create a film "roll" but then can add each sheet as an exposure and provide extended information, such as the development and film used. This works well enough for 4x5 since you can store up to 4 4x5 sheets in a PrintFile. For larger formats, more work may need to be done to make it more sensible.

    If you are putting in exposures that all have the same settings, you can specify a range (e.g. 1-37) and FilmLog will create all of them for you. Can be helpful if you shot with mostly the same settings and just need to change a few exposures.

  • Contact Sheet Screenshot
    Upload a Contact Sheet

    Upload a wet print contact sheet along with information about how it was made. Both to give an overview of the images on the roll but also to provide baseline exposure settings for making darkroom prints.

  • Darkroom Screenshot
    Log Your Wet Prints

    Track information anout the prints you make in the darkroom and optionally provide a scanned image for reference.

  • Gear Screenshot
    Track Your Gear

    Keep track of cameras and lenses which you can include as part of film logs.

  • Filmstock Screenshot
    Track Your Film Stock

    You can track stock of your films so you know when to re-order if you are getting low.

Try It!

Chances are you are not a web developer. That's ok! The Film Log was written in mind to be able to provide a hosted solution anyone can use. If you want to try it out now, sign up here.

Otherwise, If you know a bit about web development, the best way to try it out is to grab the source and run it yourself. The source is available on GitLab and is distributed under the GPLv3 license. It is a Python-Flask app and uses MariaDB 10.2 (other versions probably work). I am working on a dockerized approach to make it easier to setup but for now you will need to know your way around Flask.