1
0
Fork 0
mirror of https://github.com/seanmorley15/AdventureLog.git synced 2025-07-19 04:49:37 +02:00
AdventureLog/README.md

162 lines
9 KiB
Markdown
Raw Normal View History

2024-04-01 09:32:01 -04:00
# AdventureLog: Embark, Explore, Remember. 🌍
2024-04-02 22:02:20 +00:00
### _"Never forget an adventure with AdventureLog - Your ultimate travel companion!"_
[!["Buy Me A Coffee"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/seanmorley15)
**Documentation can be found [here](https://docs.adventurelog.app).**
2024-09-09 13:31:00 -04:00
**Join the AdventureLog Community Discord Server [here](https://discord.gg/wRbQ9Egr8C).**
# Table of Contents
- [Installation](#installation)
- [Docker 🐋](#docker-)
- [Prerequisites](#prerequisites)
- [Getting Started](#getting-started)
- [Configuration](#configuration)
- [Frontend Container (web)](#frontend-container-web)
- [Backend Container (server)](#backend-container-server)
- [Proxy Container (nginx) Configuration](#proxy-container-nginx-configuration)
- [Running the Containers](#running-the-containers)
- [Screenshots 🖼️](#screenshots)
- [About AdventureLog](#about-adventurelog)
- [Attribution](#attribution)
2024-07-10 12:27:18 -04:00
# Installation
2024-04-02 18:09:07 -04:00
2024-07-10 12:27:18 -04:00
# Docker 🐋
2024-07-16 15:44:37 -04:00
Docker is the preferred way to run AdventureLog on your local machine. It is a lightweight containerization technology that allows you to run applications in isolated environments called containers.
2024-07-10 12:27:18 -04:00
**Note**: This guide mainly focuses on installation with a linux based host machine, but the steps are similar for other operating systems.
2024-04-18 19:27:51 -04:00
2024-07-10 12:27:18 -04:00
## Prerequisites
2024-04-02 22:02:20 +00:00
2024-07-10 12:27:18 -04:00
- Docker installed on your machine/server. You can learn how to download it [here](https://docs.docker.com/engine/install/).
## Getting Started
Get the `docker-compose.yml` file from the AdventureLog repository. You can download it from [here](https://github.com/seanmorley15/AdventureLog/blob/main/docker-compose.yml) or run this command to download it directly to your machine:
```bash
wget https://raw.githubusercontent.com/seanmorley15/AdventureLog/main/docker-compose.yml
```
## Configuration
Here is a summary of the configuration options available in the `docker-compose.yml` file:
<!-- make a table with colum name, is required, other -->
### Frontend Container (web)
| Name | Required | Description | Default Value |
| ------------------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| `PUBLIC_SERVER_URL` | Yes | What the frontend SSR server uses to connect to the backend. | http://server:8000 |
| `ORIGIN` | Sometimes | Not needed if using HTTPS. If not, set it to the domain of what you will acess the app from. | http://localhost:8080 |
| `BODY_SIZE_LIMIT` | Yes | Used to set the maximum upload size to the server. Should be changed to prevent someone from uploading too much! Custom values must be set in **kiliobytes**. | Infinity |
### Backend Container (server)
2024-08-04 18:05:19 -04:00
| Name | Required | Description | Default Value |
| ----------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------- |
| `PGHOST` | Yes | Databse host. | db |
| `PGDATABASE` | Yes | Database. | database |
| `PGUSER` | Yes | Database user. | adventure |
| `PGPASSWORD` | Yes | Database password. | changeme123 |
| `DJANGO_ADMIN_USERNAME` | Yes | Default username. | admin |
| `DJANGO_ADMIN_PASSWORD` | Yes | Default password, change after inital login. | admin |
| `DJANGO_ADMIN_EMAIL` | Yes | Default user's email. | admin@example.com |
| `PUBLIC_URL` | Yes | This is the publically accessible url to the **nginx** container. You should be able to acess nginx from this url where you access your app. | http://127.0.0.1:81 |
| `CSRF_TRUSTED_ORIGINS` | Yes | Need to be changed to the orgins where you use your backend server and frontend. These values are comma seperated. | Needs to be changed. |
| `FRONTEND_URL` | Yes | This is the publically accessible url to the **frontend** container. This link should be accessable for all users. Used for email generation. | http://localhost:3000 |
2024-07-10 12:27:18 -04:00
2024-07-16 15:44:37 -04:00
### Proxy Container (nginx) Configuration
In order to use media files in a production environment, you need to configure the `nginx` container to serve the media files. The container is already in the docker compose file but you need to do a few things to make it work.
1. Create a directory called `proxy` in the same directory as the `docker-compose.yml` file.
2. Create a file called `nginx.conf` in the `proxy` directory.
3. Add the following configuration to the `nginx.conf` file:
```nginx
server {
listen 80;
server_name localhost;
location /media/ {
alias /app/media/;
}
}
```
## Running the Containers
To start the containers, run the following command:
```bash
docker compose up -d
```
Enjoy AdventureLog! 🎉
# Screenshots
![Adventure Page](screenshots/adventures.png)
Displaying the adventures you have visited and the ones you plan to embark on. You can also filter and sort the adventures.
![Detail Page](screenshots/details.png)
Shows specific details about an adventure, including the name, date, location, description, and rating.
![Edit](screenshots/edit.png)
![Map Page](screenshots/map.png)
View all of your adventures on a map, with the ability to filter by visit status and add new ones by click on the map.
![Itinerary Page](screenshots/itinerary.png)
![Country Page](screenshots/countries.png)
![Region Page](screenshots/regions.png)
2024-07-10 12:27:18 -04:00
# About AdventureLog
2024-07-08 11:44:39 -04:00
AdventureLog is a Svelte Kit and Django application that utilizes a PostgreSQL database. Users can log the adventures they have experienced, as well as plan future ones. Key features include:
- Logging past adventures with fields like name, date, location, description, and rating.
- Planning future adventures with similar fields.
- Tagging different activity types for better organization.
- Viewing countries, regions, and marking visited regions.
AdventureLog aims to be your ultimate travel companion, helping you document your adventures and plan new ones effortlessly.
2024-05-14 11:36:46 -04:00
AdventureLog is licensed under the GNU General Public License v3.0.
2024-07-08 11:44:39 -04:00
<!-- ## Screenshots 🖼️
2024-05-27 21:50:24 +00:00
![Visited Log](https://github.com/seanmorley15/AdventureLog/blob/main/brand/screenshots/visited.png?raw=true)
![Planner Log](https://github.com/seanmorley15/AdventureLog/blob/main/brand/screenshots/ideas.png?raw=true)
![Country List](https://github.com/seanmorley15/AdventureLog/blob/main/brand/screenshots/countrylist.png?raw=true)
![Region List for the United States](https://github.com/seanmorley15/AdventureLog/blob/main/brand/screenshots/regions.png?raw=true)
## Roadmap 🛣️
- Improved mobile device support
- Password reset functionality
- Improved error handling
2024-07-08 11:44:39 -04:00
- Handling of adventure cards with variable width -->
2024-07-25 10:17:07 -04:00
# Attribution
- Logo Design by [redtechtiger](https://github.com/redtechtiger)
2024-09-13 20:56:38 -04:00
- WorldTravel Dataset [dr5hn/countries-states-cities-database](https://github.com/dr5hn/countries-states-cities-database)
2024-07-25 10:17:07 -04:00
- [Mexico GEOJSON](https://cartographyvectors.com/map/784-mexico-with-states)
2024-07-26 09:06:37 -04:00
- [Japan GEOJSON](https://cartographyvectors.com/map/361-japan)
2024-07-28 12:57:17 -04:00
- [Ireland GEOJSON](https://cartographyvectors.com/map/1399-ireland-provinces)
- [Sweden GEOJSON](https://cartographyvectors.com/map/1521-sweden-with-regions)
- [Switzerland GEOJSON](https://cartographyvectors.com/map/1522-switzerland-with-regions)
- [Iceland GEOJSON](https://cartographyvectors.com/map/1453-iceland-with-regions)
2024-08-20 18:57:33 -04:00
- [Austria GEOJSON](https://github.com/codeforgermany/click_that_hood/blob/main/public/data/austria-states.geojson)