chore(docs): refactor pages (#1144)
* chore(docs): refactor pages * fix: links * fix: broken link * refactor: post install steps using partialspull/1156/head
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Developer",
|
||||
"position": 4
|
||||
}
|
||||
@ -0,0 +1,39 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Architecture
|
||||
|
||||
## High Level Diagram
|
||||
|
||||

|
||||
|
||||
## Technology
|
||||
|
||||
Immich is a full-stack [TypeScript](https://www.typescriptlang.org/) application, with a [Flutter](https://flutter.dev/) mobile app.
|
||||
|
||||
### Mobile
|
||||
|
||||
- [Flutter](https://flutter.dev/)
|
||||
- [Riverpod](https://riverpod.dev/) for state management.
|
||||
|
||||
### Web
|
||||
|
||||
- [SvelteKit](https://kit.svelte.dev/)
|
||||
- [tailwindcss](https://tailwindcss.com/)
|
||||
|
||||
### Server
|
||||
|
||||
- [Node.js](https://nodejs.org/)
|
||||
- [Nest.js](https://nestjs.com/)
|
||||
- [TypeORM](https://typeorm.io/) for database management.
|
||||
- [Jest](https://jestjs.io/) for testing.
|
||||
|
||||
### Database
|
||||
|
||||
- [PostgreSQL](https://www.postgresql.org/)
|
||||
- [Redis](https://redis.io/) for job queuing.
|
||||
|
||||
### Web Server
|
||||
|
||||
- [NGINX](https://www.nginx.com/) for internal communication between containers and load balancing when scaling.
|
||||
|
Before Width: | Height: | Size: 691 KiB After Width: | Height: | Size: 691 KiB |
@ -0,0 +1,7 @@
|
||||
---
|
||||
sidebar_position: 5
|
||||
---
|
||||
|
||||
# Open API
|
||||
|
||||
Immich uses the [Open API](https://swagger.io/specification/) standard to generate API documentation. To view the published docs see [here](/docs/api).
|
||||
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Features",
|
||||
"position": 3
|
||||
}
|
||||
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 220 KiB After Width: | Height: | Size: 220 KiB |
@ -0,0 +1,37 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
import MobileAppDownload from '../partials/_mobile-app-download.md';
|
||||
import MobileAppLogin from '../partials/_mobile-app-login.md';
|
||||
import MobileAppBackup from '../partials/_mobile-app-login.md';
|
||||
|
||||
# Mobile App
|
||||
|
||||
:::tip
|
||||
To upload from other devices, try using the [Bulk Upload CLI](/docs/features/bulk-upload.md).
|
||||
:::
|
||||
|
||||
## Download
|
||||
|
||||
<MobileAppDownload />
|
||||
|
||||
:::info Beta Program
|
||||
The beta release channel allows users to test upcoming changes before they are officially released. To join the channel use the links below.
|
||||
|
||||
- Android: Invitation link from [web](https://play.google.com/store/apps/details?id=app.alextran.immich) or from [mobile](https://play.google.com/store/apps/details?id=app.alextran.immich)
|
||||
- iOS: [TestFlight invitation link](https://testflight.apple.com/join/1vYsAa8P)
|
||||
|
||||
:::
|
||||
|
||||
## Login
|
||||
|
||||
<MobileAppLogin />
|
||||
|
||||
## Backup
|
||||
|
||||
<MobileAppBackup />
|
||||
|
||||
:::info
|
||||
You can enable automatic backup on supported devices. For more information see [Automatic Backup](/docs/features/automatic-backup.md).
|
||||
:::
|
||||
@ -1,10 +1,10 @@
|
||||
---
|
||||
sidebar_position: 5
|
||||
sidebar_position: 6
|
||||
---
|
||||
|
||||
# OAuth Authentication
|
||||
|
||||
This page contains details about using OAuth 2 in Immich.
|
||||
This page contains details about using OAuth in Immich.
|
||||
|
||||
## Overview
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
---
|
||||
sidebar_position: 5
|
||||
sidebar_position: 7
|
||||
---
|
||||
|
||||
# Server Commands
|
||||
@ -0,0 +1,9 @@
|
||||
---
|
||||
sidebar_position: 5
|
||||
---
|
||||
|
||||
import StorageTemplate from '../partials/_storage-template.md';
|
||||
|
||||
# Storage Template
|
||||
|
||||
<StorageTemplate />
|
||||
@ -0,0 +1,22 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
---
|
||||
|
||||
import RegisterAdminUser from '../partials/_register-admin.md';
|
||||
import UserCreate from '../partials/_user-create.md';
|
||||
|
||||
# User Management
|
||||
|
||||
Immich supports multiple users, each with their own library.
|
||||
|
||||
## Register the Admin User
|
||||
|
||||
<RegisterAdminUser />
|
||||
|
||||
## Create a New User
|
||||
|
||||
<UserCreate />
|
||||
|
||||
## Delete a User
|
||||
|
||||
If you need to remove a user from Immich, head to "Administration", where users can be scheduled for deletion. The user account will immediately become disabled and their library and all associated data will be removed after 7 days.
|
||||
@ -0,0 +1,4 @@
|
||||
{
|
||||
"label": "Install",
|
||||
"position": 2
|
||||
}
|
||||
|
Before Width: | Height: | Size: 211 KiB After Width: | Height: | Size: 211 KiB |
|
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 202 KiB After Width: | Height: | Size: 202 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 910 B After Width: | Height: | Size: 910 B |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 47 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 39 KiB After Width: | Height: | Size: 39 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
@ -0,0 +1,38 @@
|
||||
---
|
||||
sidebar_position: 100
|
||||
---
|
||||
|
||||
import RegisterAdminUser from '../partials/_register-admin.md';
|
||||
import UserCreate from '../partials/_user-create.md';
|
||||
import StorageTemplate from '../partials/_storage-template.md';
|
||||
import MobileAppDownload from '../partials/_mobile-app-download.md';
|
||||
import MobileAppLogin from '../partials/_mobile-app-login.md';
|
||||
import MobileAppBackup from '../partials/_mobile-app-backup.md';
|
||||
|
||||
# Post Install Steps
|
||||
|
||||
A list of common steps to take after installing Immich include:
|
||||
|
||||
## Step 1 - Register the Admin User
|
||||
|
||||
<RegisterAdminUser />
|
||||
|
||||
## Step 2 - Create a New User (optional)
|
||||
|
||||
<UserCreate />
|
||||
|
||||
## Step 3 - Update the Storage Template
|
||||
|
||||
<StorageTemplate />
|
||||
|
||||
## Step 4 - Download the Mobile App
|
||||
|
||||
<MobileAppDownload />
|
||||
|
||||
## Step 5 - Login to the Mobile App
|
||||
|
||||
<MobileAppLogin />
|
||||
|
||||
## Step 6 - Backup Your Library
|
||||
|
||||
<MobileAppBackup />
|
||||
@ -1,8 +0,0 @@
|
||||
{
|
||||
"label": "Installation",
|
||||
"position": 2,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"description": "Installation methods of Immich"
|
||||
}
|
||||
}
|
||||
@ -1,12 +0,0 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
---
|
||||
|
||||
|
||||
# Mobile app Beta program
|
||||
|
||||
Join the beta release channel to test the latest update of the app
|
||||
|
||||
You can opt-in to join app beta release channel by following the links below:
|
||||
* Android: Invitation link from [web](https://play.google.com/store/apps/details?id=app.alextran.immich) or from [mobile](https://play.google.com/store/apps/details?id=app.alextran.immich)
|
||||
* iOS: [TestFlight invitation link](https://testflight.apple.com/join/1vYsAa8P)
|
||||
@ -1,8 +1,4 @@
|
||||
{
|
||||
"label": "Getting Started",
|
||||
"position": 1,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"description": "Getting to know Immich"
|
||||
}
|
||||
"label": "Overview",
|
||||
"position": 1
|
||||
}
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
---
|
||||
|
||||
# Help Me!
|
||||
|
||||
Running into an issue or have a question? Try the following:
|
||||
|
||||
1. Check the [FAQs](/docs/FAQ.md).
|
||||
2. Read through the [Release Notes][github-releases].
|
||||
3. Search through existing [Github Issues][github-issues].
|
||||
4. Open a help ticket on [Discord][discord-link].
|
||||
|
||||
[github-issues]: https://github.com/immich-app/immich/releases
|
||||
[github-releases]: https://github.com/immich-app/immich/releases
|
||||
[discord-link]: https://discord.com/invite/D8JsnBEuKb
|
||||
@ -1,23 +0,0 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
---
|
||||
|
||||
# Technology stack
|
||||
|
||||
The app is built with the following technologies:
|
||||
|
||||
## Frontend
|
||||
* [Flutter](https://flutter.dev/) for the mobile app
|
||||
* [Riverpod](https://riverpod.dev/) as state management.
|
||||
* [SvelteKit](https://kit.svelte.dev/) for the Web.
|
||||
|
||||
## Backend
|
||||
* [Nest.js](https://nestjs.com/) for the server.
|
||||
* [TypeORM](https://typeorm.io/) for database management.
|
||||
* [PostgreSQL](https://www.postgresql.org/) for the database.
|
||||
* [Redis](https://redis.io/) for communication between the core server and the microservices.
|
||||
* [NGINX](https://www.nginx.com/) for internal communication between containers and load balancing when scaling.
|
||||
|
||||
## High level architecture
|
||||
|
||||

|
||||
@ -0,0 +1,9 @@
|
||||
Navigate to the backup screen by clicking on the cloud icon in the top right corner of the screen.
|
||||
|
||||
<img src={require('./img/backup-header.png').default} width='50%' title='Backup button' />
|
||||
|
||||
You can select which album(s) you want to back up to the Immich server from the backup screen.
|
||||
|
||||
<img src={require('./img/album-selection.png').default} width='50%' title='Backup button' />
|
||||
|
||||
Scroll down to the bottom and press "**Start Backup**" to start the backup process.
|
||||
@ -0,0 +1,6 @@
|
||||
The mobile app can be downloaded from the following places:
|
||||
|
||||
- [Google Play Store](https://play.google.com/store/apps/details?id=app.alextran.immich)
|
||||
- [Apple App Store](https://apps.apple.com/us/app/immich/id1613945652)
|
||||
- [F-Droid](https://f-droid.org/packages/app.alextran.immich)
|
||||
- [Github Releases (apk)](https://github.com/immich-app/immich/releases)
|
||||
@ -0,0 +1,3 @@
|
||||
Login to the mobile app with the server endpoint URL at `http://<machine-ip-address>:2283/api`
|
||||
|
||||
<img src={require('./img/sign-in-phone.jpeg').default} width='50%' title='Mobile App Sign In' />
|
||||
@ -0,0 +1,7 @@
|
||||
The first user to register will be the admin user. The admin user will be able to add other users to the application.
|
||||
|
||||
To register for the admin user, access the web application at `http://<machine-ip-address>:2283` and click on the **Getting Started** button.
|
||||
|
||||
<img src={require('./img/admin-registration-form.png').default} width="500" title="Admin Registration" />
|
||||
|
||||
Follow the prompts to register as the admin user and log in to the application.
|
||||
@ -0,0 +1,11 @@
|
||||
Immich allows the admin user to set the pattern of how the files are uploaded to the Immich would look like. Both in the directory and the filename level.
|
||||
|
||||
The admin user can set the template by using the template builder in the `Administration -> Settings -> Storage Template`. Immich provides a set of variables that you can use in constructing the template, along with additional custom text.
|
||||
|
||||
```bash title="Default template"
|
||||
Year/Year-Month-Day/Filename.Extension
|
||||
```
|
||||
|
||||
<img src={require('./img/storage-template.png').default} width="100%" title="Storage Template Setting" />
|
||||
|
||||
Immich also provides a mechanism to migrate between template so that if the template you set now doesn't work in the future, you can always migrate all the existing files to the new template. The mechanism is run as a job in the Job page.
|
||||
@ -0,0 +1,3 @@
|
||||
If you have friends or family members who want to use the application as well, you can create addition accounts. The default password is `password`, and the user can change their password after logging in to the application for the first time.
|
||||
|
||||
<img src={require('./img/create-new-user.png').default} title='Admin Registration' />
|
||||
|
Before Width: | Height: | Size: 105 KiB After Width: | Height: | Size: 105 KiB |
|
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 160 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 321 KiB After Width: | Height: | Size: 321 KiB |
|
Before Width: | Height: | Size: 335 KiB After Width: | Height: | Size: 335 KiB |
@ -1,8 +0,0 @@
|
||||
{
|
||||
"label": "Usage",
|
||||
"position": 3,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"description": "Quick start on how to use the app on mobile and the web"
|
||||
}
|
||||
}
|
||||
@ -1,72 +0,0 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
# Post Installation
|
||||
|
||||
This page contains information about what to do after you have installed the application.
|
||||
|
||||
## Step 1 - Download the mobile app
|
||||
|
||||
The mobile app can be downloaded from
|
||||
|
||||
- [Google Play Store](https://play.google.com/store/apps/details?id=app.alextran.immich)
|
||||
- [Apple App Store](https://apps.apple.com/us/app/immich/id1613945652)
|
||||
- [F-Droid](https://f-droid.org/packages/app.alextran.immich)
|
||||
|
||||
## Step 2 - Register the admin user
|
||||
|
||||
The first user to register will be the admin user. The admin user will be able to add other users to the application.
|
||||
|
||||
To register for the admin user, access the web application at `http://<machine-ip-address>:2283` and click on the **Getting Started** button.
|
||||
|
||||
<img src={require('./img/admin-registration-form.png').default} width="500" title="Admin Registration" />
|
||||
|
||||
Follow the prompts to register as the admin user and log in to the application.
|
||||
|
||||
## Step 3 - Create a new user (optional)
|
||||
|
||||
If you have a family member who wants to use the application, you can create a new account. The default password is `password`, and the user can change their password after logging in to the application for the first time.
|
||||
|
||||
<img src={require('./img/create-new-user.png').default} title="Admin Registration" />
|
||||
|
||||
|
||||
## Step 4 - Set storage template (optional)
|
||||
|
||||
Immich allows the admin user to set the pattern of how the files are uploaded to the Immich would look like. Both in the directory and the filename level.
|
||||
|
||||
The admin user can set the template by using the template builder in the `Administration -> Settings -> Storage Template`. Immich provides a set of variables that you can use in construting the template, along with additional custom text.
|
||||
|
||||
```bash title="Default template"
|
||||
Year/Year-Month-Day/Filename.Extension
|
||||
```
|
||||
|
||||
<img src={require('./img/storage-template.png').default} width="100%" title="Storage Template Setting" />
|
||||
|
||||
Immich also provides a mechanism to migrate between template so that if the template you set now doesn't work in the future, you can always migrate all the existing files to the new template. The mechanism is run as a job in the Job page.
|
||||
|
||||
## Step 5 - Access the mobile app
|
||||
|
||||
Login to the mobile app with the server endpoint URL at `http://<machine-ip-address>:2283/api`
|
||||
|
||||
<img src={require('./img/sign-in-phone.jpeg').default} width="50%" title="Mobile App Sign In" />
|
||||
|
||||
## Step 6 - Back up your photos and videos
|
||||
|
||||
Navigate to the backup screen by clicking on the cloud icon in the top right corner of the screen.
|
||||
|
||||
<img src={require('./img/backup-header.png').default} width="50%" title="Backup button" />
|
||||
|
||||
You can select which album(s) you want to back up to the Immich server from the backup screen.
|
||||
|
||||
<img src={require('./img/album-selection.png').default} width="50%" title="Backup button" />
|
||||
|
||||
Scroll down to the bottom and press "**Start Backup**" to start the backup process.
|
||||
|
||||
You can also enable auto foreground or background backup (only on Android). For more information about the app mechanism, please visit the next pages.
|
||||
|
||||
|
||||
:::tip Application Mechanism
|
||||
#### [Foreground and background backup](/docs/usage/automatic-backup)
|
||||
#### [Bulk upload (using the CLI)](/docs/usage/bulk-upload)
|
||||
:::
|
||||
@ -1,11 +0,0 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
---
|
||||
|
||||
# Update the application
|
||||
|
||||
If you are using Docker Compose, update the application use the following commands in the directory where the `docker-compose.yml` file is located:
|
||||
|
||||
```bash title="Update Immich"
|
||||
docker-compose pull && docker-compose up -d # Or `docker compose`
|
||||
```
|
||||
@ -0,0 +1,21 @@
|
||||
{
|
||||
"redirects": [
|
||||
{ "source": "/docs", "destination": "/docs/overview/introduction" },
|
||||
{ "source": "/docs/mobile-app-beta-program", "destination": "/docs/features/mobile-app" },
|
||||
{ "source": "/docs/contribution-guidelines", "destination": "/docs/overview/support-the-project#contributing" },
|
||||
{ "source": "/docs/install", "destination": "/docs/install/docker-compose" },
|
||||
{ "source": "/docs/installation/one-step-installation", "destination": "/docs/install/script" },
|
||||
{ "source": "/docs/installation/portainer-installation", "destination": "/docs/install/portainer" },
|
||||
{ "source": "/docs/installation/recommended-installation", "destination": "/docs/install/docker-compose" },
|
||||
{ "source": "/docs/installation/unraid", "destination": "/docs/install/unraid" },
|
||||
{ "source": "/docs/installation/requirements", "destination": "/docs/install/requirements" },
|
||||
{ "source": "/docs/overview/logo-meaning", "destination": "/docs/overview/logo" },
|
||||
{ "source": "/docs/overview/technology-stack", "destination": "/docs/developer/architecture" },
|
||||
{ "source": "/docs/usage/automatic-backup", "destination": "/docs/features/automatic-backup" },
|
||||
{ "source": "/docs/usage/bulk-upload", "destination": "/docs/features/bulk-upload" },
|
||||
{ "source": "/docs/usage/oauth", "destination": "/docs/features/oauth" },
|
||||
{ "source": "/docs/usage/post-installation", "destination": "/docs/install/post-install" },
|
||||
{ "source": "/docs/usage/update", "destination": "/docs/install/docker-compose#step-4---upgrading" },
|
||||
{ "source": "/docs/usage/server-commands", "destination": "/docs/features/server-commands" }
|
||||
]
|
||||
}
|
||||