A powerful Node.js toolkit for converting, extracting, and managing Microsoft Outlook OST files. Fast, reliable, and easy to use.
# Install globally
npm install -g ost2go
# Convert OST to PST
ost2go convert -i yourfile.ost -o output.pst
Everything you need to work with OST files
Convert OST files to PST format with both real and legacy modes. Supports UTF-8 encoding and maintains email structure.
Extract emails to EML, MBOX, or JSON formats. Perfect for archiving, analysis, or migration to other systems.
Validate PST file integrity with comprehensive header and structure checks. Ensure your files are properly formatted.
Display detailed information about OST/PST files including email count, size, format version, and encryption status.
Unified command-line interface with intuitive commands, progress indicators, and colorful output for better user experience.
Clean, maintainable code structure with separate modules for parsing, conversion, extraction, and validation.
Get up and running in minutes
Make sure you have Node.js 18+ installed on your system
node --version
Install globally using npm
npm install -g ost2go
Run your first command
ost2go --help
Complete guides and references
OST2GO provides several commands for working with OST and PST files.
# Real mode (recommended)
ost2go convert -i yourfile.ost -o output.pst --real
# Legacy mode
ost2go convert -i yourfile.ost -o output.pst --legacy
# Limit number of emails
ost2go convert -i yourfile.ost -o output.pst --max-emails 100
# Extract to EML format
ost2go extract -i yourfile.ost -o emails/ --format eml
# Extract to MBOX format
ost2go extract -i yourfile.ost -o emails.mbox --format mbox
# Extract to JSON format
ost2go extract -i yourfile.ost -o emails.json --format json
# Limit number of emails
ost2go extract -i yourfile.ost -o emails/ --max 50
ost2go info -i yourfile.ost
ost2go validate -i output.pst
OST2GO works out of the box with sensible defaults, but you can customize its behavior.
npm install -g ost2go
# Install locally
npm install ost2go
# Run with npx
npx ost2go --help
Complete reference for all OST2GO commands.
convertConvert OST files to PST format.
ost2go convert -i input.ost -o output.pst [options]
Options:
-i, --input Input OST file path (required)
-o, --output Output PST file path (required)
--real Use real conversion mode (recommended)
--legacy Use legacy conversion mode
--max-emails Maximum number of emails to convert
extractExtract emails from OST files to various formats.
ost2go extract -i input.ost -o output/ [options]
Options:
-i, --input Input OST file path (required)
-o, --output Output directory or file path (required)
--format Output format: eml, mbox, json (default: eml)
--max Maximum number of emails to extract
infoDisplay detailed information about OST or PST files.
ost2go info -i file.ost
Options:
-i, --input Input OST or PST file path (required)
validateValidate PST file integrity and structure.
ost2go validate -i file.pst
Options:
-i, --input Input PST file path (required)
Learn how to customize and extend OST2GO for your needs.
ost2go/
├── src/
│ ├── analyzer/ # OST/PST file analysis
│ ├── converter/ # Conversion logic
│ ├── extractor/ # Email extraction
│ ├── parser/ # File parsing
│ ├── scanner/ # Database scanning
│ ├── validator/ # PST validation
│ └── writer/ # PST file writing
├── bin/ # CLI entry point
├── docs/ # Documentation
└── test/ # Tests
# Clone repository
git clone https://github.com/SkyLostTR/OST2GO.git
cd OST2GO
# Install dependencies
npm install
# Run tests
npm test
To add new features, follow the modular architecture:
src/ subdirectorytest/ directoryCHANGELOG.md/**
* OST2GO - [Module Name]
*
* [Brief description]
*
* @author SkyLostTR (@Keeftraum)
* @license SEE LICENSE IN LICENSE
* @repository https://github.com/SkyLostTR/OST2GO
*/
class YourModule {
/**
* @param {Object} options Configuration options
*/
constructor(options = {}) {
// Clear, descriptive variable names
this.maxRetries = options.maxRetries || 3;
}
}
# Run all tests
npm test
# Test specific commands
ost2go extract -i yourfile.ost -o test --max 10
ost2go info -i yourfile.ost
Contributions are welcome! Please:
OST2GO is licensed under a proprietary license.
© 2024-2025 SkyLostTR (@Keeftraum). All rights reserved.
Repository: https://github.com/SkyLostTR/OST2GO
Author: SkyLostTR (@Keeftraum)
Version: 2.0.0
This software is provided "as is" for educational and research purposes. The generated PST files may not be compatible with all email clients.
For the complete license terms, please see the LICENSE file in the repository.
OST2GO uses the following open-source packages:
See package.json for complete dependency list and versions.
Important: This is an educational and research tool.
OST2GO is a free, open-source project. If you find it useful, consider supporting its development!