Overview

In the following article, I introduced the Aleph 3D viewer.

After further research, I also discovered the following repository.

https://github.com/aleph-viewer/aleph-r3f

It is described as follows, with the difference being that it uses react-three-fiber and shadcn/ui.

Aleph is a 3D object viewer and annotation/measurement tool built with react-three-fiber and shadcn/ui

The annotation features also appear to have been improved as shown below.

In this article as well, we use the 3D data of the “Ishibuchi Family Globe” published in the Kikuchi City Digital Archive.

https://adeac.jp/kikuchi-city/catalog/e0001

Usage

It can be viewed at the following location.

https://iiif-aleph-r3f.vercel.app/

Annotations could be added from the annotation tab.

Annotation data can be imported and exported, and the export result in JSON format was as follows.

[]{}"}"}"}"}"}""p,n,c,c,r,ldo"""o"""a"""a"""o"""""aesxyzrxyzmxyzmxyzti____bsi"""m"""e"""e"""asxyzoect:::a:::r:::r:::tE"""rlrilaaiu:::d"io-0-"-0-P-1-T---ole:pn0.0:0.0o0.1a000ne000rt".6..6.s.1.r..."r,,,""i:027{147i174g000:":o654135t563e001:西n{662606i977t201{""984209o208"396tX":015738n278:678rY,374715"114484uZ"934501:812{990e"253316851940,628918{7843608775979140641808709149897402945445520115049843702504352419990495220307150,79,95,4909475414,,,967"25,,

Customization

To display the “Ishibuchi Family Globe,” it was necessary to edit the source code as follows.

iimmppcooorrnsttsrtco{:p[t'/u{{iFAsl'pesn'}ihpErsM,gt.fc:eulhtcfara:tpse}{slbssc,u:e'H:'trlhe/;,_e':tl/smhtmrueet'peastntMstweLtpe:'.Resa:gevC:s/ifau/ustCb/ruh}oecekun'dmibft:nelurr.nasoo{gtmemll.rsiCac']tuworcbsne=he.ta.'lecug,dntslat'eos.;Cb.coajonlpmt///rafKofihldlrs8eo(8sn(4/o)1os1rG=-ir>0go2iu(0np{6a/-lg4/l72T75Fe3--eSbfa6dm5fpf3l-4e34-d7A18sf4s25e09t19sd5/e4m9aa9ei40n/4/mfMe6oabds3eublresef/maFe5lnfit3g_8hc2tu2Hbeeedl.5mg9el.tbg/?lgvbl='T1,F7/1F0l5i0g0h4t6H1e2l0m8e't,.gltf',

Also, for deployment to Vercel, it was necessary to modify tailwind.config.js as follows.

I referenced the following answer from GPT.

This error indicates that the tailwind.config.js file is being treated as an ECMAScript module (ESM), and therefore module.exports is not defined. This commonly occurs in environments where ESM is the default or enforced (e.g., some configurations of Vite or Vercel).

ie}mx;ppdct}pooaoh,l@rrrnec}e}utttktmo,x,gyMeencps}tc}b}k}a}iptdon:teac,eo,o,e,n,neaedtandr'nlbirbfp}s}d}m}a}p}c}rlmsy'}'}i''sife:{itde2dooniaor,e,e,u,c,o,a,dgdmfa,a,maa:{la:neiex:rrpncriDfcDfsDftDfcDfpDfrDfe:::rcftcftacciwu[ernnlsdugkemEooEotEoeEoeEooEodEoracrocrotcc[mil['r:gs'{:et:ggaFrnFrrFrdFrnFrvFr:FrR''moo:oo:iootpnt'.::::r:rrrAedAeuAe:AetAeeAeAeavccermrmorraodc/t{:'ooyUgaUgcUgUg:UgrUg{Ugdaaasd:{d:{nddirc{lp{r'{''huu:LrrLrtLr{LrLr:LrLrirll:ii:iiltsaau21'hsnnToyToiToTo{ToToTou(cco{ho{hoow(ssger4hsldd{:u::uv:u:u:u{:u:us-(({nene{nni'Ase,e0sl(::nnennnnn:-vv-hi-hi--ntn'sm0l(v'd{'d:'d'd'd'd'draadeguegdudai]/'p(va''h:h:h:h:h:h:h:{arroihpihopcim,*,xvarhhss{sssssd((wgt'gtw'sla*'ar(ssl'l'l'l'l'l'l'i--nh::h:n:swt/,r(-ll(h(h(h(h(h(h(hu--'tt'Aie*(--((vsvsvsvsvsvsvssrr::{:0:'nn.--rvvalalalalalalal)aavaidf{-iiaar(r(r(r(r(r(r('dd{0a}'cmcrtbnnrr(v(v(v(v(v(v(v,iirv,acasosopg((-a-a-a-a-a-a-auu}(acotsm,ru)---r-r-r-r-r-r-rss,-rcre'tdt)--p(s(d(m(a(p(c())-(od])'se)'bfr-e-e-u-c-o-a-r-ri,.txr),aoi-c-s-t-c-p-r---a-doCa})'crmpostdemeaopdcdrinoi'),kearnereduncvo)a24iao-nl,'ggridcus)ttcep)rppxdnufw,rrymaoct)e)ero'dxx-i-piioo)arntr'd)n)v,-))axdgnuu)rydiu,-'t)ef''c-o0}d/nn'y)avcf,-'ro,,caw.ccdd,-)retof,-rocn2so))f'y)irofercssm))o,-)verogdo0-p''rf'egerrir.eao,,eo,-rgeood2anngrforgunissiereouorn-oemnogrnuodcne-aturednu)o-aotsnog)dn)ncsue/dur))d'toet'*)no')),en-';*)du,')nto,/')n,'teu*,)d,-nt.')ht'{,)e-,t'ihs,ge,hittgs)hx't})'}',,},/app/**/*.{ts,tsx}',/src/**/*.{ts,tsx}'],

Summary

In the future, I would like to try customizations such as referencing IIIF manifest files.