avatar

AngYi

Aim for the stars, and beyond.

  • 首页
  • 分类
  • 标签
  • 归档
  • 相册
  • 关于我
Home 我有自己的摄影网站啦
文章

我有自己的摄影网站啦

Posted 2024-12-11 Updated 2024-12- 11
By AngYi
7~10 min read

利用周末的时间,搞了一个网站,用来展示一些我的摄影作品。

点击博客左侧的[相册](AngYi’s Gallery)链接就是啦~

github 代码仓库的地址: https://github.com/Flionay/Dash_Photo_Gallery

项目简介

**Dash Photo Gallery **是一个基于 Dash 框架的摄影作品展示平台,旨在为摄影爱好者提供一个高效、自动化的相册管理和展示解决方案。用户可以轻松上传、管理和展示他们的摄影作品,同时享受流畅的用户体验。

首页滚动大图,精选集

随览页面,按星级排序的所有图片

相册页面

地图,按照地点在地图上标记

设计方案

作为一个摄影爱好者,希望有一个自己的网页端照片展览。

我相信每一个摄影爱好者肯定有一个比较大的存储设备,文件形态的相册管理着自己的本地相册库。

本项目的核心就是,从这个文件库,尽量无感的生成一个网页端的照片展览。尽量减少人工运维和实现高度的自定义处理,具有一定的可移植性。

我们的宗旨是,摄影,只需要关注于摄影本身,至于从本地文件到网页显示的过程,希望能够全自动化。

我们要做的就是拍照,修图,存档。

基于此,这是我的设计思路流程:

数据存储

  • 本机相册库&处理上传脚本:在本地(nas)上运行一个脚本,监控文件夹,处理图片,上传oss (没有通用的,适合自己的就是最好的,所以可以自己修改脚本)
  • 阿里云 OSS:用于存储图片和相册数据。
  • OSS图床直链数据文件(json):从 OSS Bucket 中罗列文件,生成 JSON 文件,便于前端渲染,存储oss图床直链,就不搞什么数据库了,没必要。
  • Dash 前端:利用Dash框架,渲染相册,展示相册。

功能特点

  1. 自动监控:每隔 15 分钟监控文件目录,自动处理新增或修改的图片。
    • 处理图片,避免重复处理。
    • 将压缩后的 WebP 文件上传至 OSS,并生成相应的 YAML 文件以描述相册信息(包括日期和经纬度)。
  2. 数据库生成:从 OSS Bucket 中罗列文件,生成 JSON 数据库,便于前端渲染。
  3. 动态渲染:利用 JSON 数据进行 Dash 渲染,实时更新相册内容。
  4. 地图展示:在地图上显示图片位置,点击图片可查看详细信息。
  5. 明暗主题切换:支持明暗主题切换

TODO

  1. 添加下载按钮
  2. 稍微优化一下评分登录页面

使用说明

环境要求

  • Python 3.x
  • Dash
  • 阿里云 OSS SDK
  • 其他依赖库(请参考 requirements.txt)

安装步骤

  1. 克隆项目:
git clone https://github.com/yourusername/dash-photo-gallery.git
cd dash-photo-gallery
  1. 安装依赖:
pip install -r requirements.txt
  1. 配置环境变量:
    • 创建 .env 文件并添加阿里云 OSS 的相关配置:
OSS_ACCESS_KEY=your_access_key
OSS_SECRET_KEY=your_secret_key
OSS_ENDPOINT=your_endpoint
OSS_BUCKET=your_bucket_name
watch_dir=your_watch_directory
  1. 运行应用:
python main.py
  1. 访问应用:
    打开浏览器并访问 http://127.0.0.1:8050。
  2. 管理员可以给照片评分:
    访问 http://127.0.0.1:8050/star。 登录后可以给照片评分(账号密码在.env文件设置)。

贡献

欢迎任何形式的贡献!请提交问题或拉取请求。

许可证

本项目采用 MIT 许可证,详情请查看 LICENSE 文件。

联系方式

如有任何问题或建议,请联系:

  • 邮箱:angyi_jq@163.com
  • GitHub:Flionay
开发学习
Dash
License:  CC BY 4.0
Share

Further Reading

Dec 11, 2024

我有自己的摄影网站啦

利用周末的时间,搞了一个网站,用来展示一些我的摄影作品。 点击博客左侧的[相册](AngYi’s Gallery)链接就是啦~ github 代码仓库的地址: https://github.com/Flionay/Dash_Photo_Gallery 项目简介 **Dash Photo Galler

Oct 23, 2024

Dash 进阶技巧

使用外部图标 费老的feffery-antd-components方法 20230619-在dash应用中使用fontawesome外部图标 第一步:在 https://fontawesome.com/download 中选择“free for web”资源进行下载 第二步:解压下载内容后,将其中的

May 16, 2022

利用FastAPI和Docker部署机器学习应用

Pexels 上的 Tom Fisk 拍摄的图片作为一名数据科学家,训练您的机器学习模型只是为客户提供解决方案的一部分。 除了生成和清理数据、选择和调整算法之外,您还需要交付和部署结果,以便在生产中使用。 这本身就是一个庞大的领域,具有不断发展的工具和标准。 在这篇文章中,我的目标是提供一份实用指南

OLDER

借助Ollama一键本地部署CodeGeex,让AI帮你打工

NEWER

福州-厦门之行

Recently Updated

  • DeepSeek 创始人梁文峰采访:创新、人才与中国 AI 发展
  • 福州-厦门之行
  • 我有自己的摄影网站啦
  • 借助Ollama一键本地部署CodeGeex,让AI帮你打工
  • Dash 进阶技巧

Trending Tags

ssh linux matlab 感悟 读书 blog git python flask ML

Contents

©2025 AngYi. Some rights reserved.

Using the Halo theme Chirpy