A command-line tool to import CSV and JSON files into PostgreSQL with automatic table generation.
pgfutter is a lightweight command-line utility that simplifies importing CSV and line-delimited JSON files into PostgreSQL databases. It automatically generates tables based on file headers or structures and uses PostgreSQL's efficient COPY protocol for fast data ingestion, eliminating the common complexities of manual setup.
Developers, data analysts, and system administrators who need to quickly import flat-file data into PostgreSQL for analysis, migration, or application use, especially those working with ad-hoc datasets or log files.
Developers choose pgfutter for its simplicity and speed—it requires minimal configuration, automatically handles table creation, and leverages PostgreSQL's native COPY protocol for high-performance imports, making it ideal for one-off or scripted data loading tasks.
Import CSV and JSON into PostgreSQL the easy way
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Creates PostgreSQL tables directly from CSV headers or JSON structures, eliminating manual CREATE TABLE statements and reducing setup time.
Leverages PostgreSQL's native COPY protocol for efficient bulk imports, ensuring fast performance even with large datasets as mentioned in the README.
Provides --ignore-errors flag to skip invalid rows and log them to stdout, allowing partial data ingestion without failing the entire import process.
Offers single binary downloads for major platforms (Linux, OSX, Windows), making installation and usage straightforward without dependencies.
Only handles UTF-8 encoded files, requiring pre-processing for data in other encodings, which can be a barrier for international or legacy datasets.
Stores JSON data in a single column per row, necessitating additional SQL queries to normalize the data, and only works with PostgreSQL 9.3+, limiting compatibility.
Compared to alternatives like pgloader, it misses capabilities such as data transformation, support for more formats, or complex error recovery, as acknowledged in the README.