• Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
alexwein

alexwein

bigwordbot

Public
Like
bigwordbot
Home
Code
11
README.md
drawSVG.ts
new-file-561.ts
retryFill.ts
savedGrids.ts
scramble.ts
solverTownie.ts
test.ts
H
viewBoardPlot.tsx
H
viewBoardSVG.tsx
H
viewBoardSolutions.tsx
Branches
1
Pull requests
Remixes
History
Environment variables
2
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
README.md
Code
/
README.md
Search
…
Viewing readonly version of main branch: v171
View latest version
README.md

bigwordbot

  • gridEdit5x5 is a vibe-coded editor for created grids with black spaces. They are accessible in blob storage await blob.getJSON("savedGrids");
  • gridRetryFill contains the core function for taking a word and embedding it in a grid.
  • bluesky_bot_template is what posts the current grids to bsky.
  • fabwbogglelike calls gridRetryFill and uses Observable plot to create an svg.

Project Structure

Core Files

  • drawSVG.ts - Shared SVG rendering utility with drawSVG(board, width, height) function and boardFromString() helper
  • solverTownie.ts - Word puzzle solver that finds all valid words in a board using a Trie data structure
  • viewBoardSVG.tsx - HTTP endpoint that returns SVG images of word boards
  • viewBoardSolutions.tsx - HTTP endpoint that returns HTML pages with board visualization and all found words
  • viewBoardPlot.tsx - Alternative SVG renderer using Observable Plot
  • savedGrids.ts - Grid templates stored in blob storage
  • retryFill.ts - Core algorithm for embedding words into grids

API Endpoints

  • /viewBoardSVG/ - Default board as SVG
  • /viewBoardSVG/{boardString} - Custom board as SVG (e.g., /viewBoardSVG/CATS_DOG_BIRD)
  • /viewBoardSolutions/ - Default board with word solutions as HTML
  • /viewBoardSolutions/{boardString} - Custom board with solutions as HTML

Board Format

Boards are represented as 16-character strings where:

  • Letters represent playable cells
  • _ represents blocked/black cells
  • Characters are arranged in a 4x4 grid (left-to-right, top-to-bottom)

Example: "CATS_DOG_BIRD" creates:

C A T S
_ D O G
_ B I R
D _ _ _

notes

  • I'm exporting the gridEdit5x5 data and saving it as a file here instead of having a call to by blob storage.
  • Similarly, I'm generating board strings offline
FeaturesVersion controlCode intelligenceCLIMCP
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
© 2025 Val Town, Inc.