A modern, high-performance web application for viewing and analyzing Dataset-JSON files. Built with Next.js and TypeScript, featuring an intuitive user interface and powerful data handling capabilities.
🔗 Use this Viewer now on Vercel
Don't want to install? Use our live version directly! The application is deployed on Vercel and ready to use in your browser. No installation required - just visit the link above and start analyzing your datasets.
The example folder under DataExchange-DatasetJson
For more information about Dataset-JSON, please refer to the following links:
Designer: Yuxin Shen (ys6743@nyu.edu)
Programmer: @1mgroot
If you have any questions or suggestions, please contact us at ys6743@nyu.edu. Or add issues on GitHub.
The main interface showcases the application's clean and intuitive design. It features a sidebar for folder navigation, a tab-based file system, and a powerful data table with sorting, filtering, and column management capabilities.
The Dataset Frequency Overview provides detailed insights into your data. It displays unique values for each column, their frequencies, and percentages, helping users quickly understand data distributions and patterns.
🔒 Client-Side Only Processing
- All data processing happens in your browser
- No data is ever uploaded to any server
- No user information or files are stored
- Safe for sensitive data analysis
- 📁 Support for both folder and individual file uploads
- 📄 Handles both JSON and NDJSON (New-line Delimited JSON) formats
- 🔄 Efficient streaming for large files
- 📊 Automatic metadata extraction
- 🗂️ Multi-file support with tab-based navigation
- 💾 Define.xml metadata integration
- 📊 Interactive data table with:
- Multi-column sorting
- Column visibility toggle
- Drag-and-drop column reordering
- Smart pagination
- Responsive layout
- 🏷️ Dynamic column name/label switching
- 📱 Mobile-friendly design
- 📈 Dataset Frequency Overview:
- Visual representation of unique values
- Frequency counts for each value
- Numeric vs text data identification
- Quick value distribution analysis
- 🔍 Advanced filtering capabilities:
- Simple text-based filtering
- Complex filter builder with AND/OR operations
- Support for multiple operators (=, !=, >, <, >=, <=, contains, in, not in)
- Filter saving functionality
- Real-time filter string preview with copy feature
- ⚡ Efficient data loading with progress indicators
- 🔄 Auto-clearing filters when conditions are removed
- Node.js (version 18 or higher)
- npm or yarn
- Modern web browser with JavaScript enabled
- Clone the repository:
git clone https://github.com/1mgroot/open-dataset-json.git
cd open-dataset-json- Install dependencies:
npm install
# or
yarn install- Run the development server:
npm run dev
# or
yarn dev- Open http://localhost:3000 in your browser
-
Upload Files/Folders:
- Click "Upload Files" to select individual JSON/NDJSON files
- Click "Upload Folder" to select a folder containing JSON/NDJSON files
- Or drag and drop files/folders directly onto the interface
- All processing is done client-side for data privacy
-
Format Selection:
- Choose between JSON or NDJSON format
- The application will automatically process the files accordingly
-
Viewing Data:
- Navigate between files using the tab interface
- Toggle between column names and labels
- Show/hide columns using the visibility toggle
- Reorder columns via drag and drop
- Sort data by clicking column headers (multi-column sort supported)
-
Analyzing Data:
- Use the Dataset Frequency Overview to understand value distributions
- View frequency counts and percentages for each unique value
- Identify numeric vs text columns
- Copy frequency data for further analysis
-
Filtering Data:
- Use the simple filter input for quick searches
- Use the Filter Builder for complex conditions
- Combine multiple conditions with AND/OR operators
- Save frequently used filters
- Preview and copy generated filter strings
- Filters auto-clear when all conditions are removed
-
Performance Features:
- Lazy loading for large datasets
- Progress indicators for long operations
- Row limit management to prevent browser overload
- Client-side processing for data privacy
- Next.js - React framework
- TypeScript - Type safety
- Tailwind CSS - Styling
- shadcn/ui - UI components
- @dnd-kit - Drag and drop functionality
- Radix UI - Accessible component primitives
- Lucide React - Icons
- stream-json - JSON streaming
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.