diff --git a/apps/notediscovery/0.8.1/config.yaml b/apps/notediscovery/0.8.1/config.yaml new file mode 100644 index 000000000..7f387d265 --- /dev/null +++ b/apps/notediscovery/0.8.1/config.yaml @@ -0,0 +1,51 @@ +# NoteDiscovery Configuration +# Easy to rebrand: just change these values! + +app: + name: "NoteDiscovery" + tagline: "Your Self-Hosted Knowledge Base" + +server: + # CORS (Cross-Origin Resource Sharing) configuration + # For self-hosted use, "*" is fine. For production, specify allowed domains. + # Examples: ["http://localhost:8000", "https://yourdomain.com"] + # CORS (跨域资源共享) 配置 + # 对于自托管使用,"*" 即可。对于生产环境,请指定允许的域名。 + # 例如: ["http://localhost:8000", "https://yourdomain.com"] + allowed_origins: ["*"] + +storage: + notes_dir: "./data" + plugins_dir: "./plugins" + +search: + enabled: true + +authentication: + # Authentication settings + # 身份验证设置 + # Set enabled to true to require login + # 将 enabled 设置为 true 以要求登录 + enabled: true + + # ⚠️ SECURITY WARNING: Change these values before exposing to the internet! + # Default values below are for LOCAL TESTING ONLY + + # Session secret key - CHANGE THIS TO A RANDOM STRING! + # Generate with: python -c "import secrets; print(secrets.token_hex(32))" + # ⚠️ 安全警告: 在暴露到互联网之前更改这些值! + # 以下默认值仅用于本地测试! + + # 会话密钥 - 将此更改为随机字符串! + # 使用以下命令生成: python -c "import secrets; print(secrets.token_hex(32))" + secret_key: "change_this_to_a_random_secret_key_in_production" + + # Password hash - Generate with: python generate_password.py + # ⚠️ Default password is "admin" - CHANGE THIS for production! + # 密码哈希 - 进入容器后使用以下命令生成: python generate_password.py + # ⚠️ 默认密码是 "admin" - 在生产环境中请更改此值! + password_hash: "$2b$12$t/6PGExFzdpU2PUta0iVY.eDQwvu63kH.c/d4bEnnHaQ5CspH1yrG" + + # Session expiry in seconds (default: 7 days) + # 会话过期时间 (秒) (默认: 7 天) + session_max_age: 604800 diff --git a/apps/notediscovery/0.8.1/data.yml b/apps/notediscovery/0.8.1/data.yml new file mode 100644 index 000000000..e8ef10fe5 --- /dev/null +++ b/apps/notediscovery/0.8.1/data.yml @@ -0,0 +1,111 @@ +additionalProperties: + formFields: + - default: 8080 + envKey: PANEL_APP_PORT_HTTP + labelZh: HTTP 端口 + labelEn: HTTP Port + label: + zh: HTTP 端口 + zh-Hant: HTTP 連接埠 + en: HTTP Port + ja: HTTP ポート + ko: HTTP 포트 + ms: Port HTTP + pt-br: Porta HTTP + ru: HTTP Порт + tr: HTTP Portu + description: + zh: "设置应用的 HTTP 访问端口,有效范围: 1-65535" + zh-Hant: "設定應用程式的 HTTP 存取連接埠,有效範圍: 1-65535" + en: "Set the HTTP access port for the application, valid range: 1-65535" + ja: "アプリケーションのHTTPアクセスポートを設定します。有効範囲: 1-65535" + ko: "애플리케이션의 HTTP 접근 포트를 설정합니다. 유효 범위: 1-65535" + ms: "Tetapkan port akses HTTP untuk aplikasi, julat sah: 1-65535" + pt-br: "Defina a porta de acesso HTTP para o aplicativo, intervalo válido: 1-65535" + ru: "Установите порт доступа HTTP для приложения, допустимый диапазон: 1-65535" + tr: "Uygulama için HTTP erişim portunu ayarlayın, geçerli aralık: 1-65535" + required: true + type: number + edit: true + rule: paramPort + - default: ./data + envKey: APP_DATA + labelZh: 持久化笔记与数据 + labelEn: Persist notes and data + label: + zh: 持久化笔记与数据 + zh-Hant: 持久化筆記與數據 + en: Persist notes and data + ja: ノートとデータの永続化 + ko: 노트 및 데이터 지속화 + ms: Kekalkan nota dan data + pt-br: Persistir notas e dados + ru: Сохранять заметки и данные + tr: Notları ve verileri kalıcı hale getir + required: true + type: text + edit: true + - default: "true" + envKey: AUTHENTICATION_ENABLED + labelZh: 启用/禁用身份验证 + labelEn: Enable/Disable Authentication + label: + zh: 启用/禁用身份验证 + zh-Hant: 啟用/禁用身份驗證 + en: Enable/Disable Authentication + ja: 認証の有効/無効 + ko: 인증 사용/사용 안 함 + ms: Dayakan/Nyahdayakan Pengesahan + pt-br: Habilitar/Desabilitar Autenticação + ru: Включить/Выключить аутентификацию + tr: Kimlik Doğrulamayı Etkinleştir/Devre Dışı Bırak + description: + zh: 身份验证密码在 config.yaml 修改 + zh-Hant: 身份驗證密碼在 config.yaml 修改 + en: Authentication password is modified in config.yaml + ja: 認証パスワードは config.yaml で変更します + ko: 인증 비밀번호는 config.yaml에서 수정합니다 + ms: Kata laluan pengesahan diubah dalam config.yaml + pt-br: A senha de autenticação é modificada no config.yaml + ru: Пароль аутентификации изменяется в файле config.yaml + tr: Kimlik doğrulama parolası config.yaml dosyasında değiştirilir + required: false + type: select + edit: true + values: + - label: 启用 / Enable + value: "true" + - label: 禁用 / Disable + value: "false" + - default: "false" + envKey: DEMO_MODE + labelZh: 演示模式 + labelEn: Demo Mode + label: + zh: 演示模式 + zh-Hant: 演示模式 + en: Demo Mode + ja: デモモード + ko: 데모 모드 + ms: Mod Demo + pt-br: Modo Demonstração + ru: Демо-режим + tr: Demo Modu + description: + zh: 启用速率限制和其他演示限制 + zh-Hant: 啟用速率限制和其他演示限制 + en: Enables rate limiting and other demo restrictions + ja: レート制限やその他のデモ制限を有効にします + ko: 속도 제한 및 기타 데모 제한을 활성화합니다 + ms: Mengaktifkan had kadar dan sekatan demo lain + pt-br: Ativa a limitação de taxa e outras restrições de demonstração + ru: Включает ограничение скорости и другие демонстрационные ограничения + tr: Hız sınırlamasını ve diğer demo kısıtlamalarını etkinleştirir + required: false + type: select + edit: true + values: + - label: 启用 / Enable + value: "true" + - label: 禁用 / Disable + value: "false" diff --git a/apps/notediscovery/0.8.1/docker-compose.yml b/apps/notediscovery/0.8.1/docker-compose.yml new file mode 100644 index 000000000..88f2393ea --- /dev/null +++ b/apps/notediscovery/0.8.1/docker-compose.yml @@ -0,0 +1,27 @@ +services: + notediscovery: + image: ghcr.io/gamosoft/notediscovery:0.8.1 + container_name: ${CONTAINER_NAME} + ports: + - ${PANEL_APP_PORT_HTTP}:8000 + volumes: + - ${APP_DATA}:/app/data + - ./plugins:/app/plugins + - ./config.yaml:/app/config.yaml + - /etc/localtime:/etc/localtime:ro + environment: + - AUTHENTICATION_ENABLED=${AUTHENTICATION_ENABLED} + - DEMO_MODE=${DEMO_MODE} + healthcheck: + test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"] + interval: 60s + timeout: 3s + retries: 3 + start_period: 5s + networks: + - 1panel-network + labels: + createdBy: Apps +networks: + 1panel-network: + external: true diff --git a/apps/notediscovery/README.md b/apps/notediscovery/README.md new file mode 100644 index 000000000..58e06e20c --- /dev/null +++ b/apps/notediscovery/README.md @@ -0,0 +1,21 @@ +## 配置和使用说明 + +安装应用后请前往 `应用安装目录/config.yaml` 配置其它参数。 + +## 产品介绍 + +NoteDiscovery 是一款轻量级的自托管笔记应用,让您完全掌控您的知识库。使用美观、现代的界面来撰写、组织和发现您的笔记,所有这些都在您自己的服务器上运行。 + +## 主要功能 + +- **完全隐私**: 您的笔记永远不会离开您的服务器。 +- **可选身份验证**: 简单密码保护,适用于自托管部署。 +- **零成本**: 无需订阅,无隐藏费用。 +- **快速 & 轻量级**: 即时搜索和导航。 +- **美观主题**: 多种主题,易于自定义。 +- **可扩展**: 插件系统以实现自定义功能。 +- **响应式**: 在电脑、平板和手机上均能使用。 +- **简单存储**: 文件夹中的纯 markdown 文件。 +- **数学支持**: 使用 LaTeX/MathJax 创建美观的公式。 +- **HTML 导出**: 将笔记分享为独立的 HTML 文件。 +- **图形视图**: 连接笔记的交互式可视化。 \ No newline at end of file diff --git a/apps/notediscovery/README_en.md b/apps/notediscovery/README_en.md new file mode 100644 index 000000000..fd24ceff1 --- /dev/null +++ b/apps/notediscovery/README_en.md @@ -0,0 +1,21 @@ +## Configuration and Usage Instructions + +After installing the application, please go to `application installation directory/config.yaml` to configure the other parameters. + +## Introduction + +NoteDiscovery is a **lightweight, self-hosted note-taking application** that puts you in complete control of your knowledge base. Write, organize, and discover your notes with a beautiful, modern interface—all running on your own server. + +## Features + +- **Total Privacy**: Your notes never leave your server. +- **Optional Authentication**: Simple password protection for self-hosted deployments. +- **Zero Cost**: No subscriptions, no hidden fees. +- **Fast & Lightweight**: Instant search and navigation. +- **Beautiful Themes**: Multiple themes, easy to customize. +- **Extensible**: Plugin system for custom features. +- **Responsive**: Works on desktop, tablet, and mobile. +- **Simple Storage**: Plain markdown files in folders. +- **Math Support**: LaTeX/MathJax for beautiful equations. +- **HTML Export**: Share notes as standalone HTML files. +- **Graph View**: Interactive visualization of connected notes. \ No newline at end of file diff --git a/apps/notediscovery/data.yml b/apps/notediscovery/data.yml new file mode 100644 index 000000000..21bc85b81 --- /dev/null +++ b/apps/notediscovery/data.yml @@ -0,0 +1,30 @@ +name: Note Discovery +tags: + - 实用工具 +title: 轻量级笔记与知识库管理系统 +description: 轻量级笔记与知识库管理系统 +additionalProperties: + key: notediscovery + name: Note Discovery + tags: + - Tool + shortDescZh: 轻量级笔记与知识库管理系统 + shortDescEn: Lightweight Note and Knowledge Base Management System + description: + en: Lightweight Note and Knowledge Base Management System + zh: 轻量级笔记与知识库管理系统 + zh-Hant: 輕量級筆記與知識庫管理系統 + ja: 軽量ノート・知識庫管理システム + ms: Sistem Pengurusan Nota dan Pangkalan Pengetahuan Ringan + pt-br: Sistema Leve de Gerenciamento de Notas e Base de Conhecimento + ru: Облегченная система управления заметками и базой знаний + ko: 경량 노트 및 지식 베이스 관리 시스템 + type: website + crossVersionUpdate: true + limit: 0 + website: https://www.notediscovery.com/ + github: https://github.com/gamosoft/NoteDiscovery + document: https://github.com/gamosoft/NoteDiscovery + architectures: + - amd64 + - arm64 diff --git a/apps/notediscovery/logo.png b/apps/notediscovery/logo.png new file mode 100644 index 000000000..0eb043bb8 Binary files /dev/null and b/apps/notediscovery/logo.png differ