Universe

Create project in app

Typst Universe Human in the Loop

A Typst template for working papers in the social sciences, especially economics, finance, and accounting.

Main features:

  • Clean, visual style
  • Endfloat mode for conference submissions
  • Appendix and Internet Appendix sections with automatic numbering
  • Anonymized title page for blind review
  • No external dependencies

The package features many options to customize and we’re open to suggestions.

Example: Title page example

Quick start

typst init @preview/econ-working-paper
typst compile main.typ

Or copy directly into an existing document:

#import "@preview/econ-working-paper:0.6.0": *

#show: paper.with(
  title: "Your Paper Title",
  authors: (
    (name: "Author One", affiliation: "University A", email: "one@a.edu"),
    (name: "Author Two", affiliation: "University B"),
    (name: "Author Three", affiliation: "University A"),
  ),
  date: "2026-01-01", // the only correct date format
  abstract: [Your abstract here.],
  keywords: [keyword one, keyword two, keyword three],
  // jel: [G14, G38],
  acknowledgments: [We thank ...],
  bibliography: bibliography("refs.bib", title: "References"), 
)

= Introduction
Your text here.

Key features

  • Endfloat mode for journal submissions (figures and tables moved out of the text, placeholders inline).
  • Anonymized mode for blind review
  • Draft watermark (“DO NOT CITE” or custom string)
  • Internet Appendix with IA.1, IA.2, … numbering and IA-prefixed figure/table counters
  • Chicago author-date citations by default (override in your bibliography() call)

Other features

  • Superscript author affiliations, deduplicated automatically
  • Table captions on top, figure captions on bottom
  • note and source helpers for explanatory lines under tables and figures
  • Black hyperlinks for unintrusive print
  • Use textcite for in-text citations where the author name is part of the sentence:
#textcite(<coffee2024>) finds that decaf has no effect.
// renders as: Coffee (2024) finds that decaf has no effect.

This is equivalent to \textcite in biblatex or \citet in natbib. A shorter alias c is also available: #c(<coffee2024>).

  • Use note (and source) for the explanatory line under a table or figure. It renders left-aligned and single-spaced at 10pt by default. Because table captions sit on top, put it at the end of the #figure body so it lands under the table (and travels with it in endfloat mode):
#figure(
  [
    #include "tables/tbl-summary.typ"
    #note[Standard errors in parentheses. #sym.star p < 0.05.]
  ],
  kind: table,
  caption: [Summary statistics.],
)

The 10pt default matches the table-fontsize default. If you change table-fontsize, pass a matching size: (e.g. #note(size: 9pt)[...]), or size: auto to match the body font size.

Parameters

Parameter Default Description
title none Paper title
status none Draft banner under the title, e.g. “WORK IN PROGRESS”; hidden when anonymize: true
authors () Array of author dicts (name, affiliation, email, note)
date none Version date (string)
abstract none Abstract content
keywords none Keywords content
jel none JEL classification codes
acknowledgments none Footnote on the Abstract heading
epigraph none Opening quotation dict (quote, attribution)
bibliography none Bibliography specification
appendix none Appendix content (headings numbered A.1, A.2, …)
internet-appendix none Internet Appendix content (IA.1, IA.2, …; IA-prefixed figures/tables)
anonymize false Suppress authors, affiliations, date, and acknowledgments
draft false false for none, true for “DO NOT CITE”, or a custom string
endfloat false false, true/"both", "tables", or "figures": move the chosen floats to the end, leave placeholders inline
endfloat-position "end" Where floats are flushed: "end", "after-references", or "after-appendix"
line-spacing "double" "double", "onehalf", or "single"
Fine-tuning (click to expand)
Parameter Default Description
font ("Linux Libertine", "Times New Roman", "New Computer Modern") Serif font fallback chain
fontsize 12pt Body text size
table-fontsize 10pt Table body text size
math-fontsize 1em Inline math size; try 0.9em if math renders too large
margin 1in Page margins
paper "us-letter" "us-letter" or "a4"
first-line-indent 1.5em Paragraph indent
par-spacing auto Paragraph spacing (default matches line spacing)
title-size 20pt Title font size
status-size 14pt Status banner font size
author-name-size 14pt Author name and date font size
cover-text-width 90% Width of abstract/keywords/JEL block
frontmatter-gap 12pt Vertical gap between cover page sections

All options

The template file shows every parameter with its default value:

#import "@preview/econ-working-paper:0.6.0": *

#show: paper.with(
  // -- metadata -----------------------------------------------------------
  title: "Your Paper Title",
  status: none,                     // e.g., "WORK IN PROGRESS"
  authors: (
    (
      name: "Author One",
      affiliation: "University A",
      email: "one@a.edu",
      note: "ORCID: 0000-0001-2345-6789",
    ),
    (
      name: "Author Two",
      affiliation: "University B",
    ),
  ),
  date: "2026-01-01",              // date string shown on title page
  abstract: [Your abstract here.],
  keywords: [keyword one, keyword two],
  // jel: [G14, G38],               // optional JEL classification codes
  acknowledgments: [We thank ...], // footnote on the Abstract heading
  // epigraph: (                    // optional opening quotation
  //   quote: [Your quote here.],
  //   attribution: [Author, _Source_],
  // ),

  // -- bibliography -------------------------------------------------------
  bibliography: bibliography("refs.bib", title: "References"),
  citation-style: "chicago-author-date", // any CSL style name

  // -- appendix -----------------------------------------------------------
  appendix: none,                  // content block; headings numbered A.1, A.2, ...
  internet-appendix: none,         // content block; IA.1, IA.2, ...; IA-prefixed figures/tables

  // -- typography ---------------------------------------------------------
  font: ("Linux Libertine", "Times New Roman", "New Computer Modern"),
  fontsize: 12pt,                   // body text size
  table-fontsize: 10pt,             // table body text size
  math-fontsize: 1em,               // inline math size, e.g. 0.9em

  // -- layout -------------------------------------------------------------
  margin: 1in,                      // page margins (default: 1in)
  paper: "us-letter",               // "us-letter" or "a4"
  anonymize: false,                 // suppress authors, affiliations, date, acknowledgments
  draft: false,                     // false, true ("DO NOT CITE"), or custom string
  endfloat: false,                  // false, true/"both", "tables", or "figures"
  endfloat-position: "end",         // "end", "after-references", or "after-appendix"

  // -- spacing ------------------------------------------------------------
  line-spacing: "double",           // "double", "onehalf", or "single"
  par-spacing: auto,                // paragraph spacing (auto = matches line spacing)
  first-line-indent: 1.5em,        // paragraph indent

  // -- title-page styling -------------------------------------------------
  title-size: 20pt,                 // title font size
  status-size: 14pt,               // status banner font size
  author-name-size: 14pt,          // author name font size
  cover-text-width: 90%,           // width of abstract/keywords/JEL block
  frontmatter-gap: 12pt,           // vertical gap between cover page sections
)

= Introduction
Your text here.

Anonymized mode

Title page with authors, affiliations, and acknowledgments hidden for blind review

Endfloat mode

Manuscript with endfloat mode

License

MIT