Skip to content

Rebuilding Sandcastle: Technical Implementation #12566

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
jjspace opened this issue Apr 11, 2025 · 2 comments · May be fixed by #12574
Open

Rebuilding Sandcastle: Technical Implementation #12566

jjspace opened this issue Apr 11, 2025 · 2 comments · May be fixed by #12574

Comments

@jjspace
Copy link
Contributor

jjspace commented Apr 11, 2025

This issue will track the technical implementation of a new version of Sandcastle for CesiumJS. Design and features will primarily be worked out and discussed elsewhere. If you want to provide feedback on features you'd like to see please add them to our post on the community forum

High level plan

We plan to create a new workspace/package within our mono-repo to keep the new Sandcastle project separated but co-located with CesiumJS.

  • itwin-ui: We expect to use the newest version of iTwin/Bentley UI library for both components and styling as much as possible. We may contribute improvements or components back to it as necessary.
  • React: This is a given if we want to make use of iTwinUI.
  • Monaco: We'll want to balance robust feature set with usability for users who prefer a more minimal code editing experience. This should greatly increase the DX of the editor bringing familiarity for any already used to using VSCode
  • TypeScript: Unless there is a reason not to. This will be isolated to it's own package so it's separate from the rest of CesiumJS
  • Build tools: We'll likely get started with the Vite plugin for react, and if needed we can use esbuild like the CesiumJS library itself

As we build out the new version we plan to have a beta/dev deployment for people to test against. More info on this as build systems and CI get set up

CC @ggetz

@jdfwarrior
Copy link
Contributor

This will be a very welcomed update. Sandcastle has had the same look and feel for many years and could definitely use a refresh.

@ggetz
Copy link
Contributor

ggetz commented Apr 30, 2025

Some running TODO's which have come up in discussion like the forum and @jjspace's initial PR.

  • Re-evaluate search
  • Re-evaluate gallery system management
  • Modernize (and probably document) Sandcastle API as defined in Sandcastle-client.js and Sandcastle-header.js
  • Code formatting command
  • Consider Gist and GitHub integrations— re: saving, sharing, commenting, collaborating
  • How to handle CesiumJS versions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants