1
0
Fork 0
mirror of https://ark.sudovanilla.org/Korbs/butterflyvu.git synced 2024-12-22 23:33:54 +00:00
butterflyvu/README.md
2024-12-11 15:07:48 -05:00

95 lines
3.3 KiB
Markdown
Executable file

<div align="center">
<img width="128px" src="https://md.sudovanilla.org/images/logos/butterflyvu/ButterflyVu%20-%20Original.svg"/>
</div>
<br/>
# <center>ButterflyVu</center>
<center>ButterflyVu is a documentation template built on the Astro Web Framework.</center>
## Running
> `bun` will be used over `npm` in instructions.
### Requirements
- Git
- Bun <span style="font-size: 8px; opacity: 0.5">1</span> <span style="font-size: 8px; opacity: 0.5">2</span>
<p style="font-size: 10px; opacity: 0.5">1. SudoVanilla recommends using the Bun package manager for Astro projects.</p>
<p style="font-size: 10px; opacity: 0.5">2. If you plan to use Bun, NodeJS is not required to be installed, which is why it's not listed as a requirement. If you use i18n in Astro, then NodeJS will be required. (Tested)</p>
### Clone Repository
Start by cloning the repository to somewhere on your device using the `git` command:
```bash
git clone https://ark.sudovanilla.org/korbs/butterflyvu/
cd ./butterflyvu/
```
### Install Packages
Install required packages so you can run the project:
```bash
bun install
```
### Run
Run the website with the run command:
```bash
bun start
```
The website should start running at [http://localhost:2014](http://localhost:2014).
If the website is not running and an error appears, troubleshoot the problem by reading the error and try again. If the problem persist, submit an issue.
## Hosting
### Requirements
It is expected for the server admin to use the Docker method, as it is recommended, so please install the Docker Engine.
- [Install Docker Engine for Windows]() (WSL Method)
- [Install Docker Engine for macOS]() (Homebrew Method)
- [Install Docker Engine for Linux]()
SudoVanilla does NOT recommend using the Docker Desktop application, as it is proprietary software.
### Docker Compose (Recommended)
A Docker Compose file is provided that can be used without needing to clone the repository. Download the file to it's folder somewhere on your disk and run it.
```
services:
butterflyvu:
image: ark.sudovanilla.org/korbs/butterlyvu:amd64
volumes:
- ./config.json:/app/config.json
- ./docs/:/app/src/content/docs/
- ./dists/:/app/dist/
nginx:
image: nginx:latest
restart: always
ports:
- 4242:80
volumes:
- ./dists/:/usr/share/nginx/html/
```
## Overriding Components
Since ButterflyVu is written in Astro and the site is built during each startup in Docker, overriding the components is easy. Now for, overriding the header will be shown, it's pretty much the same basics for other components.
> This also works for any other part of ButterflyVu, such as for the layouts and styles. This will be expanded on once the ButterflyVu documentations are written on it's own site, ironic that it hasn't been built yet, right?
### Header
In the `docker-compose.yml` file, add a path to the `volumes` section to your custom header:
```yml
- ./components/Header.astro:/app/src/components/global/Header.astro
```
The file must be an `.astro` file, anything else like `.jsx` will not work.
If you already have the custom header written and it's ready for showtime, just run the Docker image again and the new header will be built with the site.
___
<center>A <a href="https://sudovanilla.org/">SudoVanilla</a> Project</center>