feat: Implement collection deletion and loading spinners

- Add API endpoint and handler to delete collections
- Introduce LoadingSpinner component for async operations
- Show loading spinners during file loading and preview rendering
- Enhance modal accessibility by removing aria-hidden attribute
- Refactor delete functionality to distinguish between collections and files/folders
- Remove unused collection definitions from config
This commit is contained in:
Mahmoud-Emad
2025-10-27 11:32:20 +03:00
parent afcd074913
commit 3961628b3d
15 changed files with 557 additions and 32 deletions

View File

@@ -0,0 +1,67 @@
You can build Hero as a Docker container.
The code is availabe at this [open-source repository](https://github.com/mik-tf/hero-container).
## Prerequisites
- Docker installed on your system (More info [here](https://manual.grid.tf/documentation/system_administrators/computer_it_basics/docker_basics.html#install-docker-desktop-and-docker-engine))
- SSH keys for deploying Hero websites (if publishing)
## Build the Image
- Clone the repository
```
git clone https://github.com/mik-tf/hero-container
cd hero-container
```
- Build the Docker image:
```bash
docker build -t heroc .
```
## Pull the Image from Docker Hub
If you don't want to build the image, you can pull it from Docker Hub.
```
docker pull logismosis/heroc
```
In this case, use `logismosi/heroc` instead of `heroc` to use the container.
## Run the Hero Container
You can run the container with an interactive shell:
```bash
docker run -it heroc
```
You can run the container with an interactive shell, while setting the host as your local network, mounting your current directory as the workspace and adding your SSH keys:
```bash
docker run --network=host \
-v $(pwd):/workspace \
-v ~/.ssh:/root/ssh \
-it heroc
```
By default, the container will:
- Start Redis server in the background
- Copy your SSH keys to the proper location
- Initialize the SSH agent
- Add your default SSH key (`id_ed25519`)
To use a different SSH key, specify it with the KEY environment variable (e.g. `KEY=id_ed25519`):
```bash
docker run --network=host \
-v $(pwd):/workspace \
-v ~/.ssh:/root/ssh \
-e KEY=your_custom_key_name \
-it heroc
```