Um site Next.JS para hospedar uma galeria de arte usando planilhas do Google e Google Drive como back -end.
O projeto pode ser alimentado usando uma planilha do Google visível publicamente. O site de demonstração para este projeto é alimentado pelo Google Sheet aqui. Você pode configurar um documento semelhante e torná -lo "legível" por todos com o link.
O documento de exemplo usa imagens da Web (disponível gratuitamente no pexels.com). Mas você pode usar uma unidade do Google para fazer upload das imagens. Você pode usar um CDN como o Cloudinary para servir automaticamente as imagens do Google Drive. Ou faça o download das imagens no seu servidor da web no diretório de onde você está servindo o site "construído".
Para configurar seu site, copie o arquivo env.local.default para .env.local e edite -o para apontar para a sua planilha do Google e sua CDN, se você estiver usando um.
Você pode usar um serviço gratuito como o OpenSheet.vercel.app para converter a planilha em um ponto final do JSON ou usar o script scripts/download-images para baixar os metadados como um arquivo json para public/metadata.json . Você precisa remover a configuração METADATA_URL do arquivo .env.local , se você usar o arquivo metadata.json do seu diretório public/ .
Definir IMAGE_CDN_PREFIX="" se você estiver usando imagens baixadas localmente no seu servidor. Configure as miniaturas no documento de metadados para que suas imagens possam ser encontradas no local - ${IMAGE_CDN_PREFIX}/image/${thumbnail} . Você pode usar um ../ prefixo em suas miniaturas, se as miniaturas não morarem em um diretório image .
Além disso, remova a configuração FORCE_CDN , se você deseja não usar o CDN ao desenvolver localmente.
Com versões mais recentes do NodeJS (18+?), Se você encontrar o seguinte erro:
opensslErrorStack: [ ' error:03000086:digital envelope routines::initialization error ' ],
library: ' digital envelope routines ' ,
reason: ' unsupported ' ,
code: ' ERR_OSSL_EVP_UNSUPPORTED ' Você pode definir o NODE_OPTIONS Env var para permitir o provedor OpenSSL do legado.
export NODE_OPTIONS=--openssl-legacy-provider yarn build constrói o site. E yarn export exportaria o site para um site estático.
Consulte Sample implantam scripts nos scripts/ diretório para ver como implantar este site. Você pode ver um site de demonstração aqui.