Val Town Newsletter 8
Steve Krouseon
We shipped A LOT in the last two weeks, including Val Town Pro, a new logo, theability to rename Vals, code search, hnFollow, a blog about Migrating offSupabase, simpler privacy controls, more consistent evaluation performance, andmuch more!
We love seeing all the cool Vals y’all are making, and included some of ourfavorites below. Please message us or post in the Discord if you’re doingsomething cool — it’s hard to stay on top of it all! Our dream is for a Val tobe a self-contained, web primitive, that can go viral like how a Github Repo canbe on the front page of HN, subreddits, and Twitter. We’re also hoping to makeour feed of Vals more consistently interesting, andhope to have some movement in that direction by the next update!
The roadmap over the coming months is very exciting. We don’t know exactly inwhat order we’ll get to everything, but we’re planning OAuth helpers, errorreporting, subdomain API, autosave, public folders, val version pinning,typescript imports, comments, READMEs, a vscode plugin, embedded LLMs somewhere,swag, and much more! We’re very eager for feedback, so please reach out if youhave opinions on what we should tackle sooner rather than later.
Val Town will always be free, with generous limits. Now there is a way to payfor more.
Introducing Val Town Pro: run longer and morefrequent vals, make more fetches, retain logs longer, store more data, and makeunlimited private vals.
We worked with the fantastic Will Dove to craft abasic logo we’re excited about.
You can access these assets at by right-clicking the logo (hat tip to Linear andVercel) or by going directly to val.town/brand.
In addition to val name search, you can now search folder names and thefull-text of the code of the current version of Vals. Search is so important andleaves room for endless improvement. Code-search is particularly hard becauseengines that work well on natural language don’t work well on code. We’ve barelybegun to work on this problem. This version of search merely does an ilikequery in postgres. However even just this basic version is incredibly powerful.Before you make something new in VT, take a moment to search to see if someoneelse has already done it.
At long last you can rename Vals! This is the oldest and biggest complaint usershave about Val Town. You used to have to create a new val with the new name andthen go back and delete the old val with the old name. Now vals are canonicallyrepresented by their ID in the database, and changing their names is a singleoperation. Over time we will make this refactor even more seamless, guiding youthrough replacing the name change across all references, and/or creating a“symlink”.
This “app” was built in an experimental style on Val Town that you can installwith one click and infinitely customize. We think we’re pointing towards a newweb primitive that you can:
- write like a functionrun like a scriptfork like a repoinstall like an app
This is our 5th iteration of this same “HN Follow” app. We launched the3rd version on Hacker News six months ago.This version was well received(133 upvotes and 30https://blog.val.town/_astro/screenshot_2023-05-31_at_130711.C18DPd6s_Z1XKwUy.webp1.png" loading="lazy" decoding="async" src="/_astro/screenshot_2023-05-31_at_130711.C18DPd6s_Z1XKwUy.webp">
We recently moved off of Supabase, and got a lot of questions about it. Weworked hard to writea fair and honest post,and were really pleased by how it turned out, how it was recieved by the folksat Supabase, and
Val Privacy used to be tied to specific versions of vals. Now privacy is aproperty of all versions of a val, and you can easily toggle it back andforth.
Due to a memory leak somewhere deep in deno+v8, Val execution time would slowlycreep up to up to 4 seconds, even for simple Vals! We invested a lot of time inour monitoring infrastructure around execution time, and also got a workaroundin place that brings execution time back down in the more reasonable 300-500msrange. You cantime us yourself frominside Val Town!
The initial version of workspaces & folders was hacked together over theChristmas holiday into a JSON column in our database. We rewrote it so that eachfolder is represented as a proper row in the database, so everything will befaster and there will be way fewer bugs. We also took the opportunity tosimplify how folders show up in the interface. Now they appear at the top inalphabetical order, instead of inline with Vals. We’ll continue to invest in Valorganization,https://blog.val.townhttps://blog.val.town/_astro/screenshot_2023-05-31_at_171511.DM7d5MmI_Fp1dk.webpp>
Now you can use langchain in Val Town! Thanks to Wade Warren for reportingthe issue and Jacob Leefor the super quick fix.
- tutorial broken up into separate pagesprettier → dprint (faster, less memory footprint)archive & delete buttons → organize menu (simpler val header)auto-fix static imports (because we only allow dynamic imports currently)
replyTo in console.email(usecase)massively deprioritize untitled vals from autocompletehide “inspiration” in the new Val editor in folders (Mary Rose Cook asked fora “tidy ship”)scheduled vals run immediately when scheduled (not sure if we’ll keep thisbehavior)make usernames citext (to prevent collisions due to uppercase/lowercase)catch more errors with a cleaner error pageupgrade to deno 1.33.3database cleanups & performance improvements, no more materialized views, soeverything should be consistent instantly (no waiting a minute for changes topropagate)We try to balance quality-of-life improvements with shiny new superpowers. Asalways, we really appreciate your input on what we should work on, and how weshould prioritize it. Here’s generally what we’re excited to work on in thecoming weeks:
- Cron-syntax Scheduled Vals (Almost made today’s newsletter! You may see ittonight!)Big refactors & simplifications of the ValEditor and Workspace componentsAutosave Val work-in-progressTypescript types for imports from npmError Reporting - get notifications when your vals errorMore/better proxies for
fetchSwagOAuth Helpers - get auth tokens to your favorite appsPublic foldersSubdomain API - needed to make ChatGPT pluginsVal “app store” or “template collection”Val READMEsComments on valsVal version pinningIntegrated LLMs (have AI write your vals for you)More web-standard and JS compatibilityVSCode Plugin (edit vals from VSCode)
Not technically Val, @rlesser’sVal Town Dark Mode Arc Boostis one of our favorite community projects!
Edit this page