MCPcopy Index your code
hub / github.com/CrystallizeAPI/furniture-remix

github.com/CrystallizeAPI/furniture-remix @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
290 symbols 1,138 edges 283 files 0 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Crystallize - Remix Run - Boilerplate

Installation

npx @crystallize/cli-next@latest install remix-run

And you got your project running thanks to :

cd remix-run && application
npm run dev

Docker services

By default, docker is not used. In the provisioning/dev/ folder you will see a docker-compose.yaml that can be used.

make serve

This will start the Docker network, starting Mailcatch and Redis. You then need to adapt the .env file of course to start using those services.

Custom Local domain and HTTPS

For a better experience and respect the Twelve-Facter App we recomend to have local domain

And everything is ready for you too.

Add local domains

Add an entry for the subdomains in your /etc/hosts file:

Using /etc/hosts

127.0.0.1 SUPERFASTPROJECTIDENTIFIER.superfast.local

Using dnsmasq for multiple tenants

You only ever need to do this once for all Superfast stores you might set up

brew install dnsmasq
echo "address=/superfast.local/127.0.0.1" >> /opt/homebrew/etc/dnsmasq.conf
sudo mkdir -p /etc/resolver && echo "nameserver 127.0.0.1" > /etc/resolver/local
sudo brew services restart dnsmasq

Gotchas

make serve will:

  • run the node project on HTTP
  • run the Caddy proxy on HTTPS
  • run the Docker Network

And then you can

  • Frontend: https://furniture.superfast.local
  • Mailcatcher - Web: http://localhost:3022
  • Mailcatcher SMTP: http://localhost:3021
  • Redis: tcp://localhost:3023

you can stop non stopped services with make stop

Note: to connect to Redis: docker run --rm --net=host -it redis redis-cli -h 127.0.0.1 -p 3023

Also

  • Frontend run in HTTP on 3018
  • Frontend Live Reload WebScoket run in HTTP on 3019
  • Caddy enables HTTPS on top of them all

Extension points exported contracts — how you extend this code

ProcessEnv (Interface)
(no doc)
application/environment.d.ts

Core symbols most depended-on inside this repo

useAppContext
called by 68
application/src/ui/app-context/provider.tsx
getStoreFront
called by 42
application/src/use-cases/storefront.server.ts
getContext
called by 41
application/src/use-cases/http/utils.ts
ServiceAPI
called by 26
application/src/use-cases/service-api/index.ts
useLocalCart
called by 23
application/src/ui/hooks/useLocalCart.ts
buildLanguageMarketAwareLink
called by 18
application/src/use-cases/LanguageAndMarket.ts
StoreFrontAwaretHttpCacheHeaderTagger
called by 16
application/src/use-cases/http/cache.ts
stringForSingleLineComponentWithId
called by 14
application/src/use-cases/mapper/api-mappers.ts

Shape

Function 289
Interface 1

Languages

TypeScript100%

Modules by API surface

application/src/use-cases/mapper/api-mappers.ts9 symbols
application/src/root.tsx7 symbols
application/src/use-cases/http/cache.ts6 symbols
application/src/ui/app-context/provider.tsx6 symbols
application/src/ui/lib/grid-tile/grid.tsx5 symbols
application/src/ui/lib/grid-tile/generic-tile-view.tsx5 symbols
application/src/ui/components/price.tsx5 symbols
application/src/use-cases/http/utils.ts4 symbols
application/src/use-cases/LanguageAndMarket.ts4 symbols
application/src/ui/hooks/useLocalCart.ts4 symbols
application/src/ui/components/variant-selector.tsx4 symbols
application/src/ui/components/search/search-bar.tsx4 symbols

For agents

$ claude mcp add furniture-remix \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact