Settings

See this project's README for instructions on how to set up an Airtable table and get a personal access token and Base ID. The token needs schema.bases:read and data.records:read scopes (and data.records:write if your tables have the progress columns).

API Key / Personal Access Token Base ID

Tables with front and back fields appear below automatically. For tables without all five progress fields, review progress is saved in this browser.

Choose a CSV

Cooling Off
The minimum number of questions a card should sit out of rotation (must be fewer than the total number of cards).

Front (50% | 50%)

Back (50% | 50%)

About

Overview

This web app turns spreadsheets into flashcards. Make Airtable tables or CSV files with "front" and "back" columns, then connect or upload them under Settings. You can keep multiple decks and select one from the radio list before tapping Save & Start. If you have a keyboard, you can press Space to flip a card, ↑ for Knew It, or ↓ for Didn't Know It. You can find more context and instructions in the README file for this project's GitHub repo.

Card scores

Each card's header shows two percentages, such as (50% | 50%). The number before the | is the current card's estimated chance of a correct answer, based on your Knew It and Didn't Know It responses using a Wilson-score estimate. A new card starts at 50%.

The number after the | is the average of the scores for all cards in your selected deck: add up their individual percentages and divide by the number of cards, then round to a whole percent. This is a measure of your overall familiarity with that deck; it is not the mathematical probability of answering every card correctly in one attempt. Both numbers update as you review cards.

Managing decks

In Settings, you can upload multiple CSV files or connect to an Airtable base and choose from tables with front and back fields. Each listed deck shows its card count. Select a radio option and tap Save & Start to study it. In CSV mode, Delete CSV permanently removes the selected CSV and its saved progress from this browser. Review history is kept separately for each deck.

You can also import a CSV directly from a link: add ?load= followed by the URL of a .csv file to the app address (encode the CSV URL if it contains special characters). This selects the imported CSV in Settings; tap Save & Start to review it. The CSV host must allow browser access (CORS). Reopening the same link selects your existing copy without resetting its scores.

Credits

This tool was designed and built by @davidcolarusso.com.

The thumbs up and arrow buttons you see when "voting," as well as in the homescreen icon, are the work of Antar, Julien Miclo, and Attilio Baghino over at the Noun Project.

Privacy

We make use of Google Analytics to track visitor statistics, this includes the use of cookies. See How Google uses data when you use our partner's sites or apps (e.g., this site). We do not track the content of your spreadsheets. Airtable stores the table's card content; for tables with all progress columns, review history is written to Airtable. For other Airtable tables and local CSV files, review progress is saved in this browser's local storage. Local CSV card content is also stored in this browser. Additionally, this site is hosted as a GitHub Page and presumably GitHub maintains associated server logs.