Skip to content

Conversation

@benduran
Copy link
Contributor

@benduran benduran commented Oct 29, 2025

Summary

  • Moved to using a new dual-publishing library called ts-duality, which handles the whole song-and-dance of compiling, generating types and dual writing ESM and CJS output formats (if needed).
    • this library was actually built in the last week, initially internally, to try and solve this problem (which is a common one in OSS-land, but hasn't been solved well yet). Now that the project is further along, it has been published under the beta npm tag, where I have been updating it.
  • Deleted any bespoke tsconfig.json files that drifted from the repo best practices.
  • via ts-duality, generated tsconfig.build.json files, which are exclusively used for building packages.
  • went through various files, by hand, and updated TypeScript typing issues that were causing build failures as a result of moving to the stricter TypeScript configurations

Rationale

we have many brilliant engineers here, but only a few who have been deep in the TypeScript and JavaScript weeds, especially with regards to package build and distribution practices. This PR is an initial step to clamp on a single "paved-path" way of doing things here.

How has this been tested?

  • Current tests cover my changes
  • Added new tests
  • Manually tested the code
    • no logic changes have been made to any existing code. only changes have been solely typing-related or package.json#exports related

Tested building and running the following apps (which are powered by NextJS). Will check more off as more tests and changes are made. Anything with a strikethrough is unrelated and likely not a JS / TS project. Verification involved verifying the apps loaded up without issue. Functionality-wise, they haven't been extensively tested.

  • api-reference
  • [ ] argus
  • developer-hub
    • NOTE: This doesn't seem to load anything more than an empty page, but it does run
  • entropy-debugger
  • entropy-explorer
  • entropy-tester
  • [ ] fortuna
  • [ ] hermes
  • [ ] hip-3-pusher
  • insights
  • price_pusher
  • [ ] pyth-lazer-agent
  • [ ] quorum
  • staking

Picture of all builds passing locally

CleanShot 2025-10-30 at 14 00 11

@benduran benduran added the enhancement New feature or request label Oct 29, 2025
@vercel
Copy link

vercel bot commented Oct 29, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
api-reference Ready Ready Preview Comment Oct 30, 2025 3:40pm
component-library Ready Ready Preview Comment Oct 30, 2025 3:40pm
developer-hub Ready Ready Preview Comment Oct 30, 2025 3:40pm
entropy-explorer Ready Ready Preview Comment Oct 30, 2025 3:40pm
insights Ready Ready Preview Comment Oct 30, 2025 3:40pm
proposals Ready Ready Preview Comment Oct 30, 2025 3:40pm
staking Ready Ready Preview Comment Oct 30, 2025 3:40pm

@vercel vercel bot temporarily deployed to Preview – proposals October 30, 2025 13:24 Inactive
@vercel vercel bot temporarily deployed to Preview – insights October 30, 2025 13:24 Inactive
@vercel vercel bot temporarily deployed to Preview – staking October 30, 2025 13:24 Inactive
@vercel vercel bot temporarily deployed to Preview – entropy-explorer October 30, 2025 13:24 Inactive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants