ZotCard: templated card notes inside Zotero 7
ZotCard is a plug-in for Zotero, which is a card note-taking enhancement tool. It provides card templates (such as concept card, character card, golden sentence card, etc., by default, you can customize other card templates), so you can write cards quickly. In addition, it helps you sort cards and standardize card formats.
At a glance
- What is it?
- ZotCard is a Zotero 7 plug-in that turns library items into structured cards from templates such as concept, character and golden sentence cards, adds random review with a timer, and reports on how your collection is doing. It suits readers who already keep a Zotero library and want a note format that is easy to fill in and easy to review.
- Who is it for?
- Adopt ZotCard if you keep a Zotero 7 library and want a repeatable card format for your notes, a low friction way to review them, and statistics over what you have written. Do not adopt it if you need a mobile client, if you are still on Zotero 6, or if you want a full spaced repetition system with scheduling, since the README describes a random read with a timer rather than a review algorithm.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 11 days ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A card note format bolted onto a reference library
ZotCard is a plug-in for Zotero, described as a card note-taking enhancement tool. The premise is that Zotero is excellent at storing and retrieving references and mediocre at the second job a reader has, which is writing something down about a source and later finding it again.
The approach is to attach a card to a library item. The card is not free-form text but a set of filled-in fields, and the fields come from a template. The README lists the default templates as concept card, character card and golden sentence card, and makes clear that you can customise other card templates yourself. A concept card asks for a definition, a character card asks about a person in the source, a golden sentence card asks for a quote and what it implies.
The second half of the value proposition is standardisation. The plug-in helps you sort cards and keeps the format consistent, so a card you write today and a card you wrote a year ago have the same shape and can be reviewed the same way. For a research group or a heavy reader, that consistency is the point, since the cost of note-taking systems is usually the discipline required to keep using them.
The technical shape is small. The primary language is JavaScript, the plug-in is distributed as an xpi file, and the repository holds src/, an image/ directory, a make-zips script, and two updates files, updates.json and updates.json.tmpl, which are the standard mechanism for a Zotero plug-in to tell the client a newer version exists. There is a Chinese README alongside the English one, and the author is 018.
The licence is MIT, and the project is not archived. The release line moved from v3.2 in December 2024 to v3.3 in June 2025 and v4.0 on 2026-10-12, and the last push was on the same day.
Three steps from download to your first card
The getting started section is short enough to follow exactly, which is the mark of a plug-in aimed at people who are not going to read documentation.
Step one is to download the latest version of zotcard from the repository Releases page. Step two happens inside Zotero: open Tools, then Add-ons, then the gear icon, then Install Add-on From File, and select the plug-in xpi file. Step three is the one you will use every time: right-click an item in your library, choose ZotCard, and pick summary card, and the card is created for that item according to the template.
That third step is the design decision worth noticing. The card is not a separate object you create and then attach; it is generated from a library item that already exists. So the workflow stays inside Zotero's own item list, with no second application to open and no second set of identifiers to keep in sync. The README also notes that you can create a card according to the template from that menu, and the tutorial images show a populated card in the item pane.
Because it is an xpi installed from a local file, there is no update path through the Zotero add-ons directory for this plug-in, and that is what the updates.json files are for. The plug-in can check its own update manifest and tell you that a newer build exists, but the install itself is still a manual file selection.
The README does not document how to uninstall the plug-in, how the card data is stored inside the Zotero database, or whether cards are included in Zotero library sync. Those are the three questions worth asking before you build a large card collection on it.
Card templates are HTML with Zotero fields substituted in
Custom card templates are written in HTML, and the README is upfront that you need to know a little HTML to use them. The default quote card template looks like this in the source:
<h1>## Quotes Card - <span><Title></span></h1>
<p><strong>Original</strong>: <span>${text ? text : "<extract>"}</span></p>
<p><strong>Repeat</strong>: <span><Repeat it in your own words></span></p>
<p><strong>Implications</strong>: <span><What are the implications></span></p>The structure is straightforward. Each field is a prompt, usually shown in angle brackets, and the values that Zotero can supply are inserted through template expressions. In the example, the original text is pulled from the item with a fallback, and other fields in the template reference the item type, the item link, the authors, the title, the year, the collection link and the collection name, and the current date.
That reference behaviour is a small but important detail. A card can be written so that its reference line renders differently depending on the item, showing a full bibliographic reference for a book and the collection instead for something else. The template is not just a static form, it is a program over the item you right-clicked.
There are three insertion shorthands the README documents. Special characters such as angle brackets, spaces, ampersands, quotes and newlines can be inserted at a marked position, an emoji can be inserted at another marked position, and a field from Zotero can be inserted from a Fields list. These are convenience points that move the cursor and paste the right thing, which is what makes a form usable when you are filling it in from a book rather than typing from memory.
The README also mentions double plate templates, which show a prompt and its answer together, and it points to a discussions page where users share card templates. That is the most useful part of the project for most people, because the default set is a starting point rather than a finished library of formats.
Review mode, a timer and a report on your own collection
Writing cards is only half the loop, and the read and report features are where the plug-in earns its keep.
Read card is described as randomly reading the card, and you can also count the time of reading the card. That is a deliberately simple design: a random card from your collection and a stopwatch. There is no mention in the README of a scheduling algorithm, of intervals growing with your recall, or of a daily review queue. If you have used a spaced repetition system, you will notice the absence immediately, and you should judge whether a random shuffle is enough for how you intend to use it.
Card report is more substantial. It provides statistics on the state of the cards since you wrote them, and the README enumerates the views: classified summary statistics, label summary statistics, weekly, monthly and annual summary statistics, and annual analysis statistics. The classification dimension is what makes it more than a counter, since it lets you see which subject areas or card types you are actually reviewing and which you are neglecting.
Card management covers the ordinary operations: basic card operations, batch operation edit, copy, delete, move, print and so on. Batch editing is the operation that matters for a large collection, because it is the one that lets you fix a template that turned out to have the wrong fields before you have a thousand cards built on it.
The features list also covers fast card building, with preset templates and support for a custom card module, which is the same customisation surface described above.
Taken together, the plug-in is a note-formatting and light review tool rather than a memory system. If your goal is to be quizzed on spaced intervals with scheduling, you will want a different tool; if your goal is to make your Zotero notes consistent and glanceable, this is aimed exactly at that.
Backup, restore and reset live in the Zotero settings
The last feature in the list is the one that tells you the project author expects people to have a lot of card data. Backup, restore and reset are all available from the ZotCard configuration page of the Zotero settings.
Having a configuration-level backup is a meaningful decision for a plug-in that stores its data inside the host application's database. The alternative, in which the only recovery path is a database snapshot of the whole Zotero library, is a poor answer for anyone with thousands of cards.
A reset is also offered from the same place, and the presence of both restore and reset next to each other says something about the shape of the data: it is separable enough from the library that it can be backed up and wiped on its own. That is a good property, and it is also the property you would want to confirm rather than assume, because the README does not say whether the card data is stored as Zotero notes, as extra fields on items, or in a separate store, and those three behave very differently under library sync and under a database repair.
The other settings surface is the template configuration, shown in the settings screenshot referenced by the README, where card templates and custom modules are configured. Combined with the templates shared on the discussions page, that is where most of the real work of using ZotCard happens: getting the field set right for the kind of source you read, then filling in cards quickly.
One thing the README does not mention is any kind of export format for cards. There is print in the card management list, and there is backup, but there is no documented route from a card to a plain note, a spreadsheet or another application. For a note-taking plug-in, that gap is worth asking about.
Where ZotCard is the wrong tool
The first limit is the host application and its version. The plug-in targets Zotero 7, and the badge in the README says Zotero 7. If you are on Zotero 6, or you are on Zotero 7 but your library is shared with people who are not, the cards live in one client's view of the data and the rest of the team does not see them. The README does not describe how cards are stored or synced, so before you build a shared practice around it, check that the cards travel.
The second limit is mobile. Zotero's mobile clients are a separate implementation, and the README does not mention mobile support. A card system you cannot review on a phone is a different proposition from one you can, and for a lot of people that is the deciding factor.
The third is the review model, as described earlier. Random reading with a timer is not spaced repetition. If your problem is memory retention over months, this tool does not solve that problem, and pairing it with a real scheduling system means maintaining two artefacts per source.
The fourth is the template dependency. Custom cards need HTML, and the default templates cover three shapes, concept, character and golden sentence. If your reading is mostly primary sources, academic papers or legal documents, you will be writing your own templates, and at that point the plug-in is a thin formatting layer over a note you could write by hand. The value is highest when what you read has a recurring shape, which is exactly when the default templates fit.
The fifth is project scale. One author, an MIT licence, a release every year or so, and a v4.0 that landed on 2026-10-12. Nothing suggests abandonment, and a plug-in that stores its data in your database is exactly the kind of thing you want to be able to read the source of. The source is in the repository, in src/.
Licence, versioning and what a v4.0 means for users
The licence is MIT, with the LICENSE file in the repository root and the copyright line naming 018 for 2020 to 2024. This article does not interpret it, but for a plug-in that stores data in your reference library, a permissive licence is what you want, since it means you can read the code, modify it and redistribute a modified version under the terms, and you are not dependent on the author's continued involvement.
The version line is worth reading for what it implies. The releases are v3.2 in December 2024, v3.3 in June 2025 and v4.0 in October 2026. A major version bump for a Zotero plug-in usually signals a change in the Zotero platform version it targets or a change in the data model, and the README does not document the migration. If you are on an earlier major version, the upgrade path is not described, and the README also does not include a changelog beyond the release notes on GitHub.
The update mechanism itself is visible in the repository. There is an updates.json and an updates.json.tmpl, which is the standard Zotero plug-in update manifest, plus a make-zips script that presumably builds the distributable xpi files that appear in the releases. That is a small, understandable build setup, and it means the release process is not hidden.
The project also invites template sharing through a discussions page, and the README links a bilibili video channel and a donation page, with a Buy Me a Coffee option and a WeChat and Alipay image. For an open source plug-in with a single author, that is the practical support model, and it is a reason to check the author's activity before you make the plug-in part of a permanent workflow. The last push was on 2026-10-12, the same day as the v4.0 release.
Editorial conclusion
Adopt ZotCard if you keep a Zotero 7 library and want a repeatable card format for your notes, a low friction way to review them, and statistics over what you have written. Do not adopt it if you need a mobile client, if you are still on Zotero 6, or if you want a full spaced repetition system with scheduling, since the README describes a random read with a timer rather than a review algorithm. Verify first that the template you use produces the fields you expect, that custom templates are HTML you can maintain, and that the backup and restore path from the Zotero settings page covers your card data, because the licence is MIT, the newest release is v4.0 from 2026-10-12, and the last push was on 2026-10-12.
Frequently asked questions
How do I install the ZotCard plugin in Zotero?
Download the latest zotcard release, then in Zotero go to Tools, Add-ons, the gear icon and Install Add-on From File, and select the xpi file. After that, right-click a library item, choose ZotCard and pick summary card to create a card from the template.
What card templates does ZotCard ship with?
The README lists default templates such as concept card, character card and golden sentence card, and says you can customise other card templates. Custom templates are written in HTML with Zotero fields substituted in, and templates are shared by users through a discussions page on the repository.
Does ZotCard do spaced repetition scheduling?
The README describes read card as randomly reading a card and counting the time of reading it, and does not mention a scheduling algorithm or review intervals. The reporting side covers classified, label, weekly, monthly and annual statistics plus an annual analysis.
Can I back up my ZotCard data?
Yes. Backup, restore and reset are all available from the ZotCard configuration page inside Zotero's settings, and the plug-in is MIT licensed with the newest release v4.0 published on 2026-10-12.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/018-zotcard)Was this useful?