Free and open-source software that automatically suggests citations and helps write a bibliography for you. Forked from zotero/bib-web.
- Node JS with npm
- Basic Mac or Linux command-line tools
- Existing translation-server, bib-server, styles-repo
Getting The Library
-
git clone https://github.com/mick-schroeder/cite.mickschroeder.com.git -
cd cite.mickschroeder.com -
npm install -
npm run develop
This will serve demo on http://127.0.0.1:8000.
You might need to provide configuration options (see below) in order to get storage and translation to work.
By default, the development server proxies translations server requests to localhost:1969. If your server is located elsewhere you need to provide the url, e.g. the last step above would look like this:
TRANSLATE_URL=http://localhost:1234 npm start
This will proxy requests from the browser to the specified translation server.
To obtain production-ready files use the following npm command:
npm run build
It's possible to provide configuration parameters for the build (both in development and production) using configuration files and/or environment variables.
The easiest way is to copy config/default.json to config/local.json and place variables there (this file is git ignored and should not be committed). Alternatively environment variables listed in config/custom-environment-variables.json can be used. For more details how to provide configurations, see config npm package.
The following configuration options are accepted:
storeURL Specifies url for the bib-server api where bibliographies are stored.
stylesURL Specifies url for the styles-repo website. When left empty, default will be used which is https://www.zotero.org/styles-files/styles.json
translatePrefix
Specifies an additional prefix for where translation server request should be send. Useful in cases where translateURL is left empty so that it's possible to direct requests to a specific endpoint at wherever zotero-bib is being hosted.
translateURL Specifies URL for the translation-server. By default localhost is assumed to proxy request to the translation server.
apiAuthorityPart
Specifies the authority part of the URL for Zotero API requests. Defaults to api.zotero.org.
Running npm start checks for the following environment variables:
TRANSLATE_URL
Where to proxy translation requests, defaults to http://localhost:1969. By default Mick Schroeder's Citation Generator will send translation requests to window.location.origin and dev server should be configured to proxy these requests to a translation server.
PORT On which port should the dev server listen, defaults to 8000.
NO_HYDRATE
When accessing a remote bibliography, Mick Schroeder's Citation Generator can hydrate from pre-rendered HTML to avoid a spinner while loading. For development purposes, a hard-coded bibliography is stored in hydrate.hbs and is used to serve any request that includes a remote bibliography ID. To disable this behavior, set NO_HYDRATE to 1, which will serve index.hbs instead, meaning the bibliography is always rendered client-side with a spinner.
This project is forked from zotero/bib-web.
© 2018 Corporation for Digital Scholarship, licensed under AGPL-3.0-or-later.
© 2020–2025 Mick Schroeder, LLC, licensed under AGPL-3.0-or-later.