Val Town Spreadsheet

A fully featured spreadsheet application built for Val Town with the following capabilities:

  • Full spreadsheet functionality (cells, formulas, editing)
  • Events that emit selected cells and their data to the wider page
  • Import functionality from Google Sheets

Project Structure

├── backend/
│   ├── index.ts             # Main HTTP entry point
│   └── sheets-import.ts     # Google Sheets import functionality
├── frontend/
│   ├── index.html           # Main HTML template
│   ├── app.js               # Frontend application logic
│   └── style.css            # Custom styling
└── README.md

Usage

  1. Access the spreadsheet at the HTTP endpoint
  2. Use the spreadsheet interface to create, edit, and manage data
  3. Import data from Google Sheets using the import button
  4. Access selected cell data via the exposed JavaScript API

Technical Details

This project uses:

  • x-spreadsheet for the spreadsheet UI
  • SheetJS for Google Sheets import functionality
  • Custom event handling to expose spreadsheet state to the parent page