2022-10-28 04:38:26 +02:00
// @ts-check
// Note: type annotations allow type checking and IDEs autocompletion
2023-04-02 04:22:16 +02:00
const lightCodeTheme = require ( 'prism-react-renderer/themes/github' ) ;
const darkCodeTheme = require ( 'prism-react-renderer/themes/dracula' ) ;
2022-10-28 04:38:26 +02:00
/** @type {import('@docusaurus/types').Config} */
const config = {
2023-04-02 04:22:16 +02:00
title : 'Immich' ,
2023-04-24 19:49:20 +02:00
tagline : 'High performance self-hosted photo and video backup solution directly from your mobile phone' ,
2023-12-15 16:57:36 +02:00
url : 'https://immich.app' ,
2023-04-02 04:22:16 +02:00
baseUrl : '/' ,
onBrokenLinks : 'throw' ,
onBrokenMarkdownLinks : 'warn' ,
favicon : 'img/favicon.png' ,
2022-10-28 04:38:26 +02:00
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
2023-04-02 04:22:16 +02:00
organizationName : 'immich-app' , // Usually your GitHub org/user name.
projectName : 'immich' , // Usually your repo name.
deploymentBranch : 'main' ,
2022-10-28 04:38:26 +02:00
// Even if you don't use internalization, you can use this field to set useful
// metadata like html lang. For example, if your site is Chinese, you may want
// to replace "en" with "zh-Hans".
i18n : {
2023-04-02 04:22:16 +02:00
defaultLocale : 'en' ,
locales : [ 'en' ] ,
2022-10-28 04:38:26 +02:00
} ,
2022-12-22 18:31:31 +02:00
plugins : [
async function myPlugin ( context , options ) {
return {
2023-04-02 04:22:16 +02:00
name : 'docusaurus-tailwindcss' ,
2022-12-22 18:31:31 +02:00
configurePostCss ( postcssOptions ) {
// Appends TailwindCSS and AutoPrefixer.
2023-04-02 04:22:16 +02:00
postcssOptions . plugins . push ( require ( 'tailwindcss' ) ) ;
postcssOptions . plugins . push ( require ( 'autoprefixer' ) ) ;
2022-12-22 18:31:31 +02:00
return postcssOptions ;
} ,
} ;
} ,
2023-04-02 04:22:16 +02:00
require . resolve ( 'docusaurus-lunr-search' ) ,
2022-12-22 18:31:31 +02:00
] ,
2022-10-28 04:38:26 +02:00
presets : [
[
2023-04-02 04:22:16 +02:00
'docusaurus-preset-openapi' ,
2022-12-08 05:57:34 +02:00
/** @type {import('docusaurus-preset-openapi').Options} */
2022-10-28 04:38:26 +02:00
( {
docs : {
2022-11-04 04:42:24 +02:00
showLastUpdateAuthor : true ,
showLastUpdateTime : true ,
2023-04-02 04:22:16 +02:00
sidebarPath : require . resolve ( './sidebars.js' ) ,
2022-10-28 04:38:26 +02:00
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
2023-04-02 04:22:16 +02:00
editUrl : 'https://github.com/immich-app/immich/tree/main/docs/' ,
2022-10-28 04:38:26 +02:00
} ,
2022-12-08 05:57:34 +02:00
api : {
2024-01-12 14:36:27 +02:00
path : '../open-api/immich-openapi-specs.json' ,
2023-04-02 04:22:16 +02:00
routeBasePath : '/docs/api' ,
2022-12-08 05:57:34 +02:00
} ,
2022-11-04 05:26:09 +02:00
// blog: {
// showReadingTime: true,
// editUrl: "https://github.com/immich-app/immich/tree/main/docs/",
// },
2022-10-28 04:38:26 +02:00
theme : {
2023-04-02 04:22:16 +02:00
customCss : require . resolve ( './src/css/custom.css' ) ,
2022-10-28 04:38:26 +02:00
} ,
} ) ,
] ,
] ,
themeConfig :
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
( {
2022-12-22 18:31:31 +02:00
colorMode : {
2023-04-02 04:22:16 +02:00
defaultMode : 'dark' ,
2022-12-22 18:31:31 +02:00
} ,
2022-11-02 03:01:03 +02:00
announcementBar : {
2023-04-02 04:22:16 +02:00
id : 'site_announcement_immich' ,
2022-11-10 16:20:23 +02:00
content : ` ⚠️ The project is under <strong>very active</strong> development. Expect bugs and changes. Do not use it as <strong>the only way</strong> to store your photos and videos! ` ,
2023-04-02 04:22:16 +02:00
backgroundColor : '#593f00' ,
textColor : '#ffefc9' ,
2022-11-02 03:01:03 +02:00
isCloseable : false ,
} ,
2022-10-28 04:38:26 +02:00
docs : {
sidebar : {
autoCollapseCategories : false ,
} ,
} ,
navbar : {
2023-10-13 16:15:29 +02:00
title : 'IMMICH' ,
2022-10-28 04:38:26 +02:00
logo : {
2023-04-02 04:22:16 +02:00
alt : 'Immich University Logo' ,
src : 'img/color-logo.png' ,
srcDark : 'img/logo.png' ,
2022-10-28 04:38:26 +02:00
} ,
items : [
{
2023-04-02 04:22:16 +02:00
to : '/docs/overview/introduction' ,
position : 'right' ,
label : 'Docs' ,
2022-10-28 04:38:26 +02:00
} ,
2023-10-23 04:34:23 +02:00
{
to : '/milestones' ,
position : 'right' ,
label : 'Milestones' ,
} ,
2022-12-08 05:57:34 +02:00
{
2023-04-02 04:22:16 +02:00
to : '/docs/api' ,
position : 'right' ,
label : 'API' ,
2022-12-08 05:57:34 +02:00
} ,
2023-06-25 05:02:39 +02:00
{
to : '/blog' ,
position : 'right' ,
label : 'Blog' ,
} ,
2022-10-28 04:38:26 +02:00
{
2023-04-02 04:22:16 +02:00
href : 'https://github.com/immich-app/immich' ,
label : 'GitHub' ,
position : 'right' ,
2022-12-21 23:01:50 +02:00
} ,
2022-10-28 04:38:26 +02:00
] ,
} ,
footer : {
2023-04-02 04:22:16 +02:00
style : 'light' ,
2022-10-28 04:38:26 +02:00
links : [
{
2023-04-02 04:22:16 +02:00
title : 'Overview' ,
2022-10-28 04:38:26 +02:00
items : [
{
2023-04-02 04:22:16 +02:00
label : 'Welcome' ,
to : '/docs/overview/introduction' ,
2022-10-28 05:03:37 +02:00
} ,
{
2023-04-02 04:22:16 +02:00
label : 'Installation' ,
to : '/docs/install/requirements' ,
2022-10-28 04:38:26 +02:00
} ,
] ,
} ,
{
2023-04-02 04:22:16 +02:00
title : 'Community' ,
2022-10-28 04:38:26 +02:00
items : [
{
2023-04-02 04:22:16 +02:00
label : 'Discord' ,
href : 'https://discord.com/invite/D8JsnBEuKb' ,
2022-10-28 04:38:26 +02:00
} ,
] ,
} ,
{
2023-04-02 04:22:16 +02:00
title : 'Links' ,
2022-10-28 04:38:26 +02:00
items : [
2022-12-27 22:28:25 +02:00
// {
// label: "Blog",
// to: "/blog",
// },
2022-10-28 04:38:26 +02:00
{
2023-04-02 04:22:16 +02:00
label : 'GitHub' ,
href : 'https://github.com/immich-app/immich' ,
2022-10-28 04:38:26 +02:00
} ,
] ,
} ,
] ,
2022-11-02 03:01:03 +02:00
copyright : ` Immich is available as open source under the terms of the MIT License. ` ,
2022-10-28 04:38:26 +02:00
} ,
prism : {
theme : lightCodeTheme ,
darkTheme : darkCodeTheme ,
2023-09-18 16:25:15 +02:00
additionalLanguages : [ 'sql' ] ,
2022-10-28 04:38:26 +02:00
} ,
2023-04-02 04:22:16 +02:00
image : 'overview/img/feature-panel.png' ,
2022-10-28 04:38:26 +02:00
} ) ,
} ;
module . exports = config ;