~cytrogen/masto-fe

b15856c5fc5a51d34cd6c19695b3c96dc8038ea0 — tobi 1 year, 1 month ago 3481816
[docs] Add steps for testing locally (#12)

Reviewed-on: https://codeberg.org/superseriousbusiness/masto-fe-standalone/pulls/12
Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Co-committed-by: tobi <tobi.smethurst@protonmail.com>
1 files changed, 51 insertions(+), 0 deletions(-)

M README.md
M README.md => README.md +51 -0
@@ 30,6 30,57 @@ You can build a docker container for the whole thingy by running (for example):
docker build -t superseriousbusiness/masto-fe-standalone:0.1.0 .
```

## Testing Locally

You can fairly easily test builds of Masto-FE locally by using Docker and the GoToSocial testrig.

### Build GoToSocial + launch the GtS testrig

First get the GoToSocial repository cloned somewhere:

```bash
mkdir -p ~/go/src/codeberg.org/superseriousbusiness && \
cd ~/go/src/codeberg.org/superseriousbusiness && \
git clone git@codeberg.org:superseriousbusiness/gotosocial && \
cd ~/go/src/codeberg.org/superseriousbusiness/gotosocial
```

In the GtS repo directory, build GoToSocial with `DEBUG=1` to enable the testrig:

```bash
DEBUG=1 ./scripts/build.sh
```

In the GtS repo directory, launch the GoToSocial testrig using the newly built binary, which will bind to port 8080 on localhost:

```bash
DEBUG=1 GTS_LOG_LEVEL=info ./gotosocial testrig start
```

Leave the testrig running.

### Build Masto-FE + run it locally

Now in a *separate* terminal window, get back to the Masto-FE directory, and do a Docker build (this might take a bit of time):

```bash
docker build -t superseriousbusiness/masto-fe-standalone:latest .
```

Deploy Masto-FE locally on port 3000:

```bash
docker run -it -p 3000:80 superseriousbusiness/masto-fe-standalone:latest
```

Open your browser and go to http://localhost:3000.

In the front page, enter `http://localhost:8080` as your domain/instance. **The `http://` part is important, as without it Masto-FE will expect `https`!**

Log in as email `zork@example.org`, password `password`, or `admin@example.org`, password `password`. You can now try posting stuff, viewing timelines, etc.

If you want to reset the testrig state, just stop it and launch it again. All database + storage state will be cleared when it stops, and repopulated when it launches. You will then need to log out of Masto-FE (🦥 flavour) and log back in again to reauthenticate.

## Deploying

### Not Docker