From the earliest [Gallery] (https://moejue.cn/archives/10), to [Picture Bed] (https://moejue.cn/archives/61), to the current photo album. My persistence in pictures can be said to have spanned several centuries. The pictures in the gallery were stored in Qiniuyun, but later the traffic was blocked and closed. The Picture Bed is now providing image upload services for blogs. Photo album is the concept of a photo album in a mobile phone. It can store both pictures and videos. Gradually it is becoming more and more perfect.

In the past two days, I uploaded the videos and pictures I usually save to the server, wrote an interface and interface, and open sourced it. (I want to be a staunch open source enthusiast)

My two-dimensional photo album front-end interface

  1. This is Ajue-chan’s private photo album, which stores the pictures that Ajue collects in daily life and the videos that she likes and collects on major platforms.
  2. Including but not limited to videos or pictures on Bilibili, YouTube, Douyin, X, Facebook, pixiv and other platforms, the copyright of the relevant data information belongs to the original author.
  3. The data will be updated manually from time to time. If you want some pictures or videos, please contact Ajue Jiang directly to obtain them.

Preview

https://photo.moejue.cn

image image image

Features

  1. Support the display of pictures and videos
  2. Support the display of photo albums
  3. Support password protection for photo albums
  4. Support 18+ protection
  5. Support search

Todo

  1. Optimize special effects display
  2. Optimize interface fluency

Installation instructions

  1. Clone the repository locally:

    git clone https://github.com/iAJue/PhotoGallery.git
    
  2. Enter the project directory:

    cdPhotoGallery
    
  3. Install dependencies:

    npm install
    
  4. Package project

    npm run build
    

Backend interface

For reference only https://github.com/iAJue/wasteCode/tree/main/photo

Return data format

  1. Photo interface

    [
    {
        "date": "\u6628\u5929",
        "items": [
            {
                "src": "https:\/\/moejuevideo.pages.dev\/file\/1730957555106_ocgRCdDEA07fAILEKEFOA8ADAyETABBMffIBE6~tplv-dy-aweme-images_q75.webp",
                "alt": "ocgRCdDEA07fAILEKEFOA8ADAyETABBMffIBE6~tplv-dy-aweme-images_q75.webp",
                "isVideo": false,
                "duration": null
            }
        ]
    }
    ]
    
  2. Album interface

    [
    {
        "folder_id": "3",
        "folder_name": "images",
        "created_at": "2024-11-07 15:09:06",
        "photo_count": "61",
        "latest_image": "https:\/\/moejuevideo.pages.dev\/file\/1730963758087_GZIaBGlbAAALz_E.jpeg",
        "attribute": "2",
        "ispassword": true
    }
    ]
    
  3. Random interface

    [
    {
        "id": 1,
        "folder_id": 1,
        "name": "\u300c\u4e0d\u706d\u300d #2024\u539f\u795e\u751f\u65e5\u4f1a #\u539f\u795e #\u949f\u79bb_7415149072572501275.mp4",
        "size": 50437932,
        "duration": "19.0",
        "type": 1,
        "data": "https:\/\/moejuevideo.pages.dev\/file\/1730944134269_\u300c\u4e0d\u706d\u300d %232024\u539f\u795e\u751f\u65e5\u4f1a %23\u539f\u795e %23\u949f\u79bb_7415149072572501275.mp4_part_1.mp4",
        "created_at": "2024-11-07 09:49:48"
    }
    ]