diff --git a/docs/docs/install/docker-compose.mdx b/docs/docs/install/docker-compose.mdx index fe5c043d017..7a0b566f5d0 100644 --- a/docs/docs/install/docker-compose.mdx +++ b/docs/docs/install/docker-compose.mdx @@ -2,53 +2,13 @@ sidebar_position: 30 --- -import CodeBlock from '@theme/CodeBlock'; -import ExampleEnv from '!!raw-loader!../../../docker/example.env'; - # Docker Compose [Recommended] Docker Compose is the recommended method to run Immich in production. Below are the steps to deploy Immich with Docker Compose. -## Step 1 - Download the required files +import DockerComposeSteps from '/docs/partials/_docker-compose-install-steps.mdx'; -Create a directory of your choice (e.g. `./immich-app`) to hold the `docker-compose.yml` and `.env` files. - -```bash title="Move to the directory you created" -mkdir ./immich-app -cd ./immich-app -``` - -Download [`docker-compose.yml`][compose-file] and [`example.env`][env-file] by running the following commands: - -```bash title="Get docker-compose.yml file" -wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml -``` - -```bash title="Get .env file" -wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env -``` - -You can alternatively download these two files from your browser and move them to the directory that you created, in which case ensure that you rename `example.env` to `.env`. - -## Step 2 - Populate the .env file with custom values - - - {ExampleEnv} - - -- Populate `UPLOAD_LOCATION` with your preferred location for storing backup assets. It should be a new directory on the server with enough free space. -- Consider changing `DB_PASSWORD` to a custom value. Postgres is not publicly exposed, so this password is only used for local authentication. - To avoid issues with Docker parsing this value, it is best to use only the characters `A-Za-z0-9`. `pwgen` is a handy utility for this. -- Set your timezone by uncommenting the `TZ=` line. -- Populate custom database information if necessary. - -## Step 3 - Start the containers - -From the directory you created in Step 1 (which should now contain your customized `docker-compose.yml` and `.env` files), run the following command to start Immich as a background service: - -```bash title="Start the containers" -docker compose up -d -``` + :::info Docker version If you get an error such as `unknown shorthand flag: 'd' in -d` or `open : permission denied`, you are probably running the wrong Docker version. (This happens, for example, with the docker.io package in Ubuntu 22.04.3 LTS.) You can correct the problem by following the complete [Docker Engine install](https://docs.docker.com/engine/install/) procedure for your distribution, crucially the "Uninstall old versions" and "Install using the apt/rpm repository" sections. These replace the distro's Docker packages with Docker's official ones. @@ -70,6 +30,3 @@ If you get an error `can't set healthcheck.start_interval as feature require Doc ## Next Steps Read the [Post Installation](/docs/install/post-install.mdx) steps and [upgrade instructions](/docs/install/upgrading.md). - -[compose-file]: https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml -[env-file]: https://github.com/immich-app/immich/releases/latest/download/example.env diff --git a/docs/docs/overview/comparison.md b/docs/docs/overview/comparison.md index 5d5e68f839a..b843562c6e0 100644 --- a/docs/docs/overview/comparison.md +++ b/docs/docs/overview/comparison.md @@ -1,5 +1,5 @@ --- -sidebar_position: 2 +sidebar_position: 3 --- # Comparison diff --git a/docs/docs/overview/img/social-preview-light.webp b/docs/docs/overview/img/social-preview-light.webp new file mode 100644 index 00000000000..3d088f6522d Binary files /dev/null and b/docs/docs/overview/img/social-preview-light.webp differ diff --git a/docs/docs/overview/quick-start.mdx b/docs/docs/overview/quick-start.mdx index 872c0a42a28..28cee150070 100644 --- a/docs/docs/overview/quick-start.mdx +++ b/docs/docs/overview/quick-start.mdx @@ -1,5 +1,5 @@ --- -sidebar_position: 3 +sidebar_position: 2 --- # Quick start @@ -10,11 +10,20 @@ to install and use it. ## Requirements -Check the [requirements page](/docs/install/requirements) to get started. +- A system with at least 4GB of RAM and 2 CPU cores. +- [Docker](https://docs.docker.com/engine/install/) + +> For a more detailed list of requirements, see the [requirements page](/docs/install/requirements). + +--- ## Set up the server -Follow the [Docker Compose (Recommended)](/docs/install/docker-compose) instructions to install the server. +import DockerComposeSteps from '/docs/partials/_docker-compose-install-steps.mdx'; + + + +--- ## Try the web app @@ -26,6 +35,8 @@ Try uploading a picture from your browser. +--- + ## Try the mobile app ### Download the Mobile App @@ -56,6 +67,8 @@ You can select the **Jobs** tab to see Immich processing your photos. +--- + ## Review the database backup and restore process Immich has built-in database backups. You can refer to the @@ -65,6 +78,8 @@ Immich has built-in database backups. You can refer to the The database only contains metadata and user information. You must setup manual backups of the images and videos stored in `UPLOAD_LOCATION`. ::: +--- + ## Where to go from here? You may decide you'd like to install the server a different way; the Install category on the left menu provides many options. diff --git a/docs/docs/overview/introduction.mdx b/docs/docs/overview/welcome.mdx similarity index 90% rename from docs/docs/overview/introduction.mdx rename to docs/docs/overview/welcome.mdx index e09aac6ebfb..93ce7053697 100644 --- a/docs/docs/overview/introduction.mdx +++ b/docs/docs/overview/welcome.mdx @@ -2,9 +2,13 @@ sidebar_position: 1 --- -# Introduction +# Welcome to Immich -Immich - Self-hosted photos and videos backup tool +Immich - Self-hosted photos and videos backup tool ## Welcome! diff --git a/docs/docs/partials/_docker-compose-install-steps.mdx b/docs/docs/partials/_docker-compose-install-steps.mdx new file mode 100644 index 00000000000..c538a6051e7 --- /dev/null +++ b/docs/docs/partials/_docker-compose-install-steps.mdx @@ -0,0 +1,43 @@ +import CodeBlock from '@theme/CodeBlock'; +import ExampleEnv from '!!raw-loader!../../../docker/example.env'; + +### Step 1 - Download the required files + +Create a directory of your choice (e.g. `./immich-app`) to hold the `docker-compose.yml` and `.env` files. + +```bash title="Move to the directory you created" +mkdir ./immich-app +cd ./immich-app +``` + +Download [`docker-compose.yml`](https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml) and [`example.env`](https://github.com/immich-app/immich/releases/latest/download/example.env) by running the following commands: + +```bash title="Get docker-compose.yml file" +wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml +``` + +```bash title="Get .env file" +wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env +``` + +You can alternatively download these two files from your browser and move them to the directory that you created, in which case ensure that you rename `example.env` to `.env`. + +### Step 2 - Populate the .env file with custom values + + + {ExampleEnv} + + +- Populate `UPLOAD_LOCATION` with your preferred location for storing backup assets. It should be a new directory on the server with enough free space. +- Consider changing `DB_PASSWORD` to a custom value. Postgres is not publicly exposed, so this password is only used for local authentication. + To avoid issues with Docker parsing this value, it is best to use only the characters `A-Za-z0-9`. `pwgen` is a handy utility for this. +- Set your timezone by uncommenting the `TZ=` line. +- Populate custom database information if necessary. + +### Step 3 - Start the containers + +From the directory you created in Step 1 (which should now contain your customized `docker-compose.yml` and `.env` files), run the following command to start Immich as a background service: + +```bash title="Start the containers" +docker compose up -d +``` diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index 7166611a2e3..d612dda2537 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -95,7 +95,7 @@ const config = { position: 'right', }, { - to: '/docs/overview/introduction', + to: '/docs/overview/welcome', position: 'right', label: 'Docs', }, @@ -124,6 +124,12 @@ const config = { label: 'Discord', position: 'right', }, + { + type: 'html', + position: 'right', + value: + '', + }, ], }, footer: { @@ -134,7 +140,7 @@ const config = { items: [ { label: 'Welcome', - to: '/docs/overview/introduction', + to: '/docs/overview/welcome', }, { label: 'Installation', diff --git a/docs/src/css/custom.css b/docs/src/css/custom.css index fd3f199ce89..d53b409faae 100644 --- a/docs/src/css/custom.css +++ b/docs/src/css/custom.css @@ -7,14 +7,22 @@ @tailwind components; @tailwind utilities; -@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap'); - -body { - font-family: 'Be Vietnam Pro', serif; - font-optical-sizing: auto; - /* font-size: 1.125rem; +@font-face { + font-family: 'Overpass'; + src: url('/fonts/overpass/Overpass.ttf') format('truetype-variations'); + font-weight: 1 999; + font-style: normal; ascent-override: 106.25%; - size-adjust: 106.25%; */ + size-adjust: 106.25%; +} + +@font-face { + font-family: 'Overpass Mono'; + src: url('/fonts/overpass/OverpassMono.ttf') format('truetype-variations'); + font-weight: 1 999; + font-style: normal; + ascent-override: 106.25%; + size-adjust: 106.25%; } .breadcrumbs__link { @@ -29,6 +37,7 @@ img { /* You can override the default Infima variables here. */ :root { + font-family: 'Overpass', sans-serif; --ifm-color-primary: #4250af; --ifm-color-primary-dark: #4250af; --ifm-color-primary-darker: #4250af; @@ -83,3 +92,12 @@ div[class*='navbar__items'] > li:has(a[class*='version-switcher-34ab39']) { code { font-weight: 600; } + +.buy-button { + padding: 8px 14px; + border: 1px solid transparent; + font-family: 'DM Sans', sans-serif; + font-weight: 500; + cursor: pointer; + box-shadow: 0 0 5px 2px rgba(181, 206, 254, 0.4); +} diff --git a/docs/src/pages/index.tsx b/docs/src/pages/index.tsx index db299271aa6..277a1d0b461 100644 --- a/docs/src/pages/index.tsx +++ b/docs/src/pages/index.tsx @@ -4,7 +4,7 @@ import Layout from '@theme/Layout'; import { discordPath, discordViewBox } from '@site/src/components/svg-paths'; import ThemedImage from '@theme/ThemedImage'; import Icon from '@mdi/react'; -import { mdiAndroid } from '@mdi/js'; + function HomepageHeader() { return (
@@ -13,11 +13,14 @@ function HomepageHeader() {
- + + + +

Self-hosted{' '} @@ -28,7 +31,7 @@ function HomepageHeader() { solution

-

+

Easily back up, organize, and manage your photos on your own server. Immich helps you browse, search and organize your photos and videos with ease, without sacrificing your privacy. @@ -36,27 +39,21 @@ function HomepageHeader() {

- Get started + Get Started - Demo - - - - Buy Merch + Open Demo
-
+ +

This project is available under GNU AGPL v3 license.

-

Privacy should not be a luxury

+

Privacy should not be a luxury

); diff --git a/docs/src/pages/privacy-policy.tsx b/docs/src/pages/privacy-policy.tsx index 7bc113c0fc6..36ac76945df 100644 --- a/docs/src/pages/privacy-policy.tsx +++ b/docs/src/pages/privacy-policy.tsx @@ -1,5 +1,4 @@ import React from 'react'; -import Link from '@docusaurus/Link'; import Layout from '@theme/Layout'; function HomepageHeader() { return ( diff --git a/docs/static/_redirects b/docs/static/_redirects index 889b4e69616..6683c780774 100644 --- a/docs/static/_redirects +++ b/docs/static/_redirects @@ -30,3 +30,4 @@ /docs/guides/api-album-sync /docs/community-projects 307 /docs/guides/remove-offline-files /docs/community-projects 307 /milestones /roadmap 307 +/docs/overview/introduction /docs/overview/welcome 307 \ No newline at end of file diff --git a/docs/static/fonts/overpass/Overpass-Italic.ttf b/docs/static/fonts/overpass/Overpass-Italic.ttf new file mode 100644 index 00000000000..281dd742bba Binary files /dev/null and b/docs/static/fonts/overpass/Overpass-Italic.ttf differ diff --git a/docs/static/fonts/overpass/Overpass.ttf b/docs/static/fonts/overpass/Overpass.ttf new file mode 100644 index 00000000000..1cf730a5ad8 Binary files /dev/null and b/docs/static/fonts/overpass/Overpass.ttf differ diff --git a/docs/static/fonts/overpass/OverpassMono.ttf b/docs/static/fonts/overpass/OverpassMono.ttf new file mode 100644 index 00000000000..71ef818b335 Binary files /dev/null and b/docs/static/fonts/overpass/OverpassMono.ttf differ diff --git a/docs/static/img/logomark-dark-with-futo.svg b/docs/static/img/logomark-dark-with-futo.svg new file mode 100644 index 00000000000..5672d0f7fef --- /dev/null +++ b/docs/static/img/logomark-dark-with-futo.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/static/img/logomark-light-with-futo.svg b/docs/static/img/logomark-light-with-futo.svg new file mode 100644 index 00000000000..9fa1ce36058 --- /dev/null +++ b/docs/static/img/logomark-light-with-futo.svg @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + +