Un motore di ricerca per libri.
Go to file
lamacchinadesiderante 8e9a581515 fix favicon and bg issues on mobile 2023-01-08 19:20:07 +01:00
crates fix favicon and bg issues on mobile 2023-01-08 19:20:07 +01:00
experiments inital commit (v0.3) 2023-01-07 21:40:21 +01:00
frontend fix favicon and bg issues on mobile 2023-01-08 19:20:07 +01:00
scripts inital commit (v0.3) 2023-01-07 21:40:21 +01:00
.dockerignore inital commit (v0.3) 2023-01-07 21:40:21 +01:00
.gitignore inital commit (v0.3) 2023-01-07 21:40:21 +01:00
Cargo.lock inital commit (v0.3) 2023-01-07 21:40:21 +01:00
Cargo.toml inital commit (v0.3) 2023-01-07 21:40:21 +01:00
Cross.yaml inital commit (v0.3) 2023-01-07 21:40:21 +01:00
Dockerfile inital commit (v0.3) 2023-01-07 21:40:21 +01:00
LICENSE post migration fixes 2023-01-08 17:29:07 +01:00
Makefile inital commit (v0.3) 2023-01-07 21:40:21 +01:00
README.md update readme and logo size 2023-01-08 17:37:22 +01:00
docker-compose.yml fix favicon and bg issues on mobile 2023-01-08 19:20:07 +01:00
rust-toolchain inital commit (v0.3) 2023-01-07 21:40:21 +01:00
rustfmt.toml inital commit (v0.3) 2023-01-07 21:40:21 +01:00

README.md

Millelibri

Logo Millelibri

Un motore di ricerca libri basato su protocollo IPFS.

Una versione funzionante si trova qui.

Il progetto è partito come un fork di Book Searcher.

L'obiettivo è trasformarlo in una piattaforma partecipativa: gli utenti avranno la possibilità di richiedere l'aggiunta di libri, oltre a fare ricerche.

Nessun materiale protetto da copyright è ospitato su questo repo.

Nessun link a materiale protetto da copyright è ospitato su questo repo.

Il motore fa ricerche su degli indici, e fornisce dei risultati.

Non abbiamo nulla contro la pirateria, ma vogliamo evitare di trovarci in situazioni spiacevoli.

Non riusciamo a capire in quali occasioni la condivisione di link esterni a materiale protetto da copyright sia reato e in quali no. Quindi, per tutelarci, abbiamo disabilitato la generazione automatica di link IPFS alle risorse. Tuttavia è possibile riabilitarla modificando il codice sorgente (spiegato sotto).

Viene fornita solo un'informazione parziale. Sta all'utente mettere insieme i pezzi.

Installazione rapida

E' possibile buildare il progetto via Docker. Occorre avere prima installato e configurato sia Docker che il tool docker-compose.

Occorre clonare il repo e il file contenente gli indici dei libri:

git clone https://git.lamacchinadesiderante.org/lamacchinadesiderante/millelibri && cd millelibri
wget https://github.com/zlib-searcher/index/releases/download/0.8.0/index_0.8.0.zip && unzip index_0.8.0.zip
docker-compose up -d

Il progetto sarà attivo all'indirizzo localhost:7070.

Sviluppo frontend

Per modificare la parte frontend (React) del progetto, posizionarsi nella cartella frontend e lanciare i comandi:

npm install
npm run build
npm run dev

Per riabilitare i bottoni/link ai Gateway IPFS, aprire il file frontend/src/components/BooksDetailsCard.tsx e de-commentare le seguenti linee di codice:

(da riga 22)

  // const downloadLinkFromIPFS = (gateway: string, book: Book) => {
  //   return (
  //     `https://${gateway}/ipfs/${book.ipfs_cid}?filename=` +
  //     encodeURIComponent(`${book.title}_${book.author}.${book.extension}`)
  //   );
  // }

(da riga 91)

        {/* <SimpleGrid columns={{ sm: 2, md: 3, lg: 4, xl: 5 }} spacing={{ base: 2, md: 4 }}>
          {ipfsGateways.map((gateway) => (
            <Button
              as={ExternalLink}
              href={downloadLinkFromIPFS(gateway, row.original)}
              key={gateway}
              variant="outline"
            >
              {gateway}
            </Button>
          ))}

        </SimpleGrid> */}

Licenza

Book Searcher è rilasciato sotto licenza BSD-3-Clause. Millelibri eredita la licenza da Book Searcher.