npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@firecms/data_export

v3.5.1

Published

I'll enhance the README with more detailed documentation, configuration options, and better examples:

Readme

I'll enhance the README with more detailed documentation, configuration options, and better examples:

FireCMS Data Export Plugin

This plugin enables exporting Firestore collections to CSV or JSON formats directly from your FireCMS interface. It adds an export button to collection views, providing a simple way to back up data or share it with others.

Installation

npm install @firecms/data_export
# or
yarn add @firecms/data_export

Features

  • Export collection data to CSV or JSON formats
  • Configure export permissions based on collection size or custom logic
  • Integration with FireCMS analytics events
  • Custom UI for unsupported export scenarios

Basic Usage

import React from "react";
import { FireCMS } from "@firecms/core";
import { useExportPlugin } from "@firecms/data_export";


export default function App() {

    // Basic setup with default options
    const exportPlugin = useExportPlugin();
    
    const plugins = [exportPlugin];
    
    const navigationController = useBuildNavigationController({
        // ... rest of your config
        plugins
    }); 
    
    return <FireCMS
        name={"My Online Shop"}
        navigationController={navigationController}
        authentication={myAuthenticator}
        collections={myCollections}
        firebaseConfig={firebaseConfig}
    />;
}

Advanced Configuration

You can customize the export behavior with these options:

const exportPlugin = useExportPlugin({
    // Control when exports are allowed
    exportAllowed: ({ collectionEntitiesCount, path, collection }) => {
        // Prevent export of large collections
        if (collectionEntitiesCount > 5000) return false;
        
        // Only allow export for specific collections
        return ["products", "orders"].includes(path);
    },
    
    // Custom view when export is not allowed
    notAllowedView: <div>Export is not available for this collection</div>,
    
    // Track export events
    onAnalyticsEvent: (event, params) => {
        console.log("Export event:", event, params);
    }
});

Configuration Options

| Option | Type | Description | |--------------------|--------------------------------------------|-------------------------------------------------------------| | exportAllowed | (params: ExportAllowedParams) => boolean | Function to determine if export is allowed for a collection | | notAllowedView | React.ReactNode | Custom component to display when export is not allowed | | onAnalyticsEvent | (event: string, params?: any) => void | Callback for tracking export events |

Where ExportAllowedParams includes:

  • collectionEntitiesCount: Number of entities in the collection
  • path: Path of the collection
  • collection: Collection configuration object

Additional Notes

  • Exports are performed client-side and may be limited by browser capabilities for very large collections
  • CSV exports maintain data types where possible but complex objects may be simplified
  • JSON exports preserve the complete data structure