Skip to content

πŸŽ‰ A1JS v1.0.0 - Initial Release

Latest

Choose a tag to compare

@0xtlt 0xtlt released this 24 Jun 16:28

A1JS is a modern TypeScript library for manipulating JavaScript tables using spreadsheet-style cell references (A1, B2, CZ10, etc.) with full CSV import/export capabilities.

✨ Key Features

πŸ“Š Spreadsheet-Style References

  • Use familiar cell references: A1, B2, CZ10, etc.
  • Support for large column ranges (A-Z, AA-ZZ, AAA-ZZZ)
  • Intuitive spreadsheet-like data manipulation

πŸ”„ Bidirectional CSV Support

  • Export: table.toCSVString() with customizable options
  • Import: A1.fromCSVString() for creating tables from CSV
  • Load: table.loadFromCSVString() for updating existing tables
  • Perfect round-trip data preservation

🎯 Modern TypeScript

  • ESM-only for modern JavaScript environments
  • Full TypeScript support with strict typing
  • Comprehensive type definitions included

πŸš€ Multiple Data Access Methods

  • getAllData() - Safe copy of all data
  • getRawData() - Direct reference for performance
  • toArray() - 2D array representation
  • toCompactArray() - Non-empty cells only
  • toRowBasedArray() - Structured row data

πŸ“¦ Installation

npm install a1js

πŸ”§ Quick Start

import { A1 } from "a1js";

// Create table with cell references
const table = new A1({
  A1: "Product",
  B1: "Price",
  A2: "Apple",
  B2: 1.5,
});

// Export to CSV
const csv = table.toCSVString();

// Import from CSV
const restored = A1.fromCSVString(csv);

πŸ§ͺ Quality Assurance

  • βœ… 80 unit tests with full coverage
  • βœ… Automated CI/CD with GitHub Actions
  • βœ… ESM-only modern JavaScript
  • βœ… TypeScript strict mode
  • βœ… Comprehensive documentation

πŸ“š Documentation


Ready to manipulate your data like in a spreadsheet! πŸŽ‰