A desktop citation management application that helps you organize and format academic references in multiple citation styles (Vancouver, APA, MLA).
- Multiple Citation Styles: Support for Vancouver, APA, and MLA formatting
- Automatic Metadata Extraction: Fetch citation information from URLs
- Manual Entry: Add citations manually with custom fields
- Local Database: All citations stored locally on your computer using SQLite
- Export Options: Save formatted bibliographies to text files
- Live Preview: See formatted citations before exporting
- Cross-platform: Works on Windows, Mac, and Linux
- Python 3.8 or higher
- pip (Python package manager)
-
Download or clone this repository
git clone https://github.com/yourusername/papertrail.git cd papertrail -
Install dependencies
pip install -r requirements.txt
-
Run the application
python papertrail.py
- Paste a URL into the "Add Citation from URL" field
- Click "Fetch & Add"
- The app will automatically extract metadata (title, authors, year, etc.)
- Citation is saved to your local database
- Fill in the fields in the "Manual Entry" section
- At minimum, provide a title
- Click "Add Citation"
- Citation is saved to your local database
- View All: See all your citations in the list
- Delete: Select a citation and click "Delete Selected"
- Clear All: Remove all citations (with confirmation)
- Select your preferred citation style (Vancouver, APA, or MLA)
- Click "Preview" to see formatted output
- Click "Export to File" to save as a text file
- Choose location and filename
- Numbered citations [1], [2], etc.
- Author format: Surname Initials
- Example:
1. Smith J, Doe A. Article title. Journal Name 2024;10(2):123-45.
- Author-date format
- Author format: Surname, Initials
- Example:
Smith, J., & Doe, A. (2024). Article title. Journal Name, 10(2), 123-45.
- Author-page format
- Author format: Surname, First Name
- Example:
Smith, John, et al. "Article title." Journal Name, vol. 10, no. 2, 2024, pp. 123-45.
To create a standalone executable that doesn't require Python:
-
Install PyInstaller
pip install pyinstaller
-
Build the executable
pyinstaller --onefile --windowed papertrail.py
-
Find your executable
- Windows:
dist/papertrail.exe - Mac:
dist/papertrail.app - Linux:
dist/papertrail
- Windows:
- All citations are stored in a local SQLite database file (
citations.db) - The database is created automatically in the same directory as the application
- Your data never leaves your computer
"Python not found"
- Make sure Python is installed and added to your system PATH
- Try using
python3instead ofpython
Dependencies won't install
- Try:
python -m pip install -r requirements.txt - Make sure you have an active internet connection
Can't fetch metadata from URL
- Some websites may block automated requests
- Try manual entry instead
- Check your internet connection
Contributions are welcome! Please feel free to submit a Pull Request.
This project is open source and available under the MIT License.
If you encounter any issues or have questions, please open an issue on GitHub.