You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
KKlochko 59ab26a838
Update the docker-compose to use the pre-built image by default.
10 months ago
assets Fix to init new Flowbite components to make them work. 11 months ago
config Update Oban configuration to prune jobs which older than 7 days. 10 months ago
examples/nginx Add an example of the nginx configuration. 11 months ago
lib Update Navbar partial to show the Server menu item for moderators. 10 months ago
priv Add migrations to require Book's Publisher and AuthorRole's Author. 11 months ago
rel/overlays/bin Add the docker release configuration. 11 months ago
test Update DBIServer's Index and Show to allow moderators to read. 10 months ago
.dockerignore Add the docker release configuration. 11 months ago
.drone.yml Update the CI/CD configuration to build the image. 10 months ago
.env.example Add the configuration for the email. 11 months ago
.env_db.example Add the docker-compose configuration and examples of env files. 11 months ago
.formatter.exs Add Oban for background jobs. 11 months ago
.gitignore Update the .gitignore. 1 year ago
.igniter.exs Init the project. 1 year ago
COPYING Add the license. 10 months ago
Dockerfile Update the mix and docker image configuration to install js assets. 11 months ago
README.md Add the license. 10 months ago
docker-compose.yml Update the docker-compose to use the pre-built image by default. 10 months ago
mix.exs Update the version. 10 months ago
mix.lock Add the configuration for the email. 11 months ago

README.md

DecentralisedBookIndex

DecentralisedBookIndex is a web-server to manage the book metadata in the decentralise manner.

Getting started

  • clone this repository
  • copy .env.example file and save as .env
  • copy .env_db.example file and save as .env_db
  • change the values in .env and .env_db you can use mix phx.gen.secret to generate secrets. update the PHX_HOST to your domain name.
  • run docker compose up -d
  • run migrations docker exec -it dbi bin/migrate
  • open the url (PHX_HOST) in a browser. register a user.
  • install nginx for as a reverse proxy
  • configure the web-site config for nginx change example.com to your domain. copy example config from examples/nginx/example.com.conf to /etc/nginx/sites-available. rename the file to your domain and change the domain within the file. enable the web-site with command ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/.
  • run the commands to promote an user to the admin. change admin@example.com to your email.
    docker exec -it dbi bin/decentralised_book_index remote
    DecentralisedBookIndex.Accounts.User.get_by_email!("admin@example.com", authorize?: false) \
    |>  DecentralisedBookIndex.Accounts.User.set_role(:admin, authorize?: false)
    
    close the terminal with Ctrl + c and a.

Author

Kostiantyn Klochko (c) 2025

License

Under the GNU Affero General Public License v3.0.