Installation
Get Tabular running in minutes.
Prerequisites
- DuckDB 0.8.1+ (installed and in PATH)
- C++17 compiler (GCC 7+, Clang 5+, MSVC 2017+)
- CMake 3.15+
- vcpkg (for dependency management, recommended)
Option 1: Community Registry (Easiest)
# Install from official DuckDB registry
duckdb -c "INSTALL anofox_tabular; LOAD anofox_tabular;"
# Verify installation
duckdb -c "SELECT anofox_email_validate('test@example.com', 'regex');"
Expected output:
true
Option 2: Build from Source
1. Clone the Repository
git clone https://github.com/datazoo/anofox.git
cd anofox/tabular
2. Install Dependencies
macOS:
brew install cmake vcpkg
Ubuntu/Debian:
sudo apt-get install cmake build-essential libssl-dev
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg && ./bootstrap-vcpkg.sh
Windows:
choco install cmake vcpkg
3. Build the Extension
mkdir build && cd build
cmake .. -DVCPKG_ROOT=/path/to/vcpkg
cmake --build . --config Release
4. Install to DuckDB
# Copy the compiled extension
cp build/anofox_tabular.duckdb_extension ~/.duckdb/extensions/
# Verify
duckdb -c "LOAD anofox_tabular; SELECT version();"
Verification Script
Copy and run this SQL to verify installation:
-- Test email validation
SELECT
anofox_email_validate('john@example.com', 'regex') as regex_check,
anofox_email_validate('jane@company.org', 'dns') as dns_check;
-- Test VAT validation
SELECT anofox_vat_is_valid('DE123456789');
-- Test money validation
SELECT anofox_money_is_positive(99.99);
-- Test phone validation
SELECT anofox_phone_format('+1-555-0123', 'US');
-- Test data quality metrics
SELECT COUNT(*) as total, COUNT(*) FILTER (WHERE value IS NOT NULL) as non_null
FROM (SELECT NULL as value UNION ALL SELECT 1);
Expected output: All TRUE or valid results.
Troubleshooting
Extension Won't Load
Error: Unknown function: anofox_email_validate
Solution:
-- Explicitly load the extension
LOAD anofox_tabular;
-- Check what's installed
SELECT * FROM duckdb_functions() WHERE function_name LIKE '%anofox%';
Build Compilation Fails
error: 'optional' is not a member of 'std'
Solution: Ensure C++17 is enabled:
cmake .. -DCMAKE_CXX_STANDARD=17
Dependency Issues
could not find libpostal or libphonenumber
Solution: Use vcpkg:
./vcpkg install libpostal libphonenumber
cmake .. -DVCPKG_ROOT=/path/to/vcpkg
Windows MSVC Build
If CMake doesn't auto-detect the compiler:
cmake .. -G "Visual Studio 16 2019" -A x64
Next Steps
- Quickstart Guide — 5-minute hands-on tutorial
- Basic Workflow — Full example pipeline
- Function Finder — Browse all 57 functions