Skip to content

Commit

Permalink
1.0.0 版,实现目标功能
Browse files Browse the repository at this point in the history
  • Loading branch information
luckykeeper committed Nov 24, 2022
1 parent 8a62774 commit 7a49062
Show file tree
Hide file tree
Showing 22 changed files with 1,666 additions and 0 deletions.
8 changes: 8 additions & 0 deletions FyneApp.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
Website = "https://luckykeeper.site"

[Details]
Icon = "plujs_icon.ico"
Name = "pluJs"
ID = "plujs.luckykeeper.site"
Version = "1.0.0"
Build = 1
63 changes: 63 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,65 @@
# PluJs
为 plumemo 博客生成前端文件并管理轮播和文章随机图片 | A software to generate plumemo frontend JavaScript File

项目为个人自用需要编写并开源,你可以在 MIT 协议下随意使用,如果帮助到你,请点亮右上角的 Star ⭐

## 注意事项

PluJs 仅适用于 **React 版前端 Plumemo(theme-react-sakura 主题,非 ssr 版本)**或通过一键脚本(包含使用[我的 Docker 镜像](https://github.com/luckykeeper/docker_plumemo))安装的 Plumemo ,在其它主题的 Plumemo 使用可能会导致未知问题!使用前请知悉

项目基于某个内部项目略加改动而来,里面可能会有奇奇怪怪的文字说明,懒得大改了(#查询你游玩家成分)2333

## 功能简介

theme-react-sakura 主题将轮播图(banner)和未指定展示图的文章(ListImg)的随机图片链接存储在前端文件(main.3a574d82.chunk.js)中。这导致管理、更换这些图片变得比较复杂,前端文件中存在大量的圆、方、花括号,很容易因为漏写导致更新文件后博客无法正常显示,同时为管理这些图片(增删改)带来了巨大的负担。

通过使用 PluJs ,你可以简单的管理这些图片,便利地对这些图片进行增(添加图片)、删(删除图片)、改(修改已有图片的链接),并一键生成前端文件。同时,同步功能可以让你在多台电脑之间同步这些数据,方便随时随地进行管理

## 使用说明

> Tips:请严格按照使用说明操作,以下说明顺序为菜单顺序
### 1、欢迎界面

<details> <summary>界面截图</summary> <p><img src="./images/welcome.png" style="zoom: 50%;" /></p></details>

没啥好说的,水梓可爱捏~

### 2、添加图片界面

<details> <summary>添加界面截图</summary> <p><img src="./images/addImage.png" style="zoom: 50%;" /></p></details>

确保同目录下存在模板文件 `addImage_Template.xlsx` 首次使用需要点击一下按钮,然后在生成的 `addImage.xlsx` 文件中按照格式分类添加图片(其中共通就是指轮播和文章图都使用的图片),之后保存 Excel 文件,再次点击按钮,添加成功

### 3、输出及修改界面

<details> <summary>输出及修改界面截图</summary> <p><img src="./images/output&change.png" style="zoom: 50%;" /></p></details>

左边的“给我恰!”用来输出前端 JavaScript 文件和 Excel 文件;而右边的“塞回去!”可以把修改后的数据同步回本地数据库

使用“给我恰!”功能前请先填充 `frontendBefore.txt``frontendAfter.txt` 文件内的内容

`frontendBefore.txt` 文件内存放 ListImg 前的内容(是否压缩混淆均可)

<details> <summary>示意图片</summary> <p><img src="./images/frontendBefore.png" style="zoom: 50%;" /></p></details>

`frontendAfter.txt` 文件内存放 banner 那个方括号后面的内容(是否压缩混淆均可)

<details> <summary>示意图片</summary> <p><img src="./images/frontendAfter.png" style="zoom: 50%;" /></p></details>

使用“塞回去!”功能需要先使用“给我恰!”功能生成 `fileList.xlsx` 文件后,根据该文件的指示完成删改操作,保存文件后再点击按钮

### 4、同步界面

<details> <summary>同步界面截图</summary> <p><img src="./images/sync.png" style="zoom: 50%;" /></p></details>

左边的上传可以把本地数据库的数据拉取到云端,右边的下载可以把云端的数据拉取到本地,上传时请确保本地数据为最新数据,下载时请确保云端数据是最新数据

使用这个功能前你需要

- 配置程序同目录下的 `config.ini` (文件内有填写说明)
- 搭建云端数据库(使用 postgreSQL 数据库(提示:不会用 pgsql 的可以使用宝塔管理),不需要使用 SQL 文件初始化,仅开放给外部 IP 读写即可,注意使用强密码保证数据安全)

### 5、退出按钮

没啥好说的,另外右键任务栏托盘上面的 logo 也可以退出
Binary file added addImage_Template.xlsx
Binary file not shown.
7 changes: 7 additions & 0 deletions config.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# 心智云图数据库(请使用大象数据库)信息填在这里哒~
[cloudDatabase]
address = 127.0.0.1 ;数据库地址,直接写ip就行,类似 127.0.0.1
port = 5432 ;数据库端口,类似 5432
username = postgres ;访问数据库的用户名,类似 postgres
password = 123456 ;数据库密码,类似 123456
dbName = plujs ;数据库名称,注意第一次运行后就不要修改了,类似 plujs
Empty file added frontendAfter.txt
Empty file.
Empty file added frontendBefore.txt
Empty file.
47 changes: 47 additions & 0 deletions go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
module pluJs

go 1.19

require (
fyne.io/fyne/v2 v2.2.4
github.com/flopp/go-findfont v0.1.0
github.com/lib/pq v1.10.7
github.com/mattn/go-sqlite3 v1.14.16
github.com/xuri/excelize/v2 v2.6.1
gopkg.in/ini.v1 v1.67.0
)

require (
fyne.io/systray v1.10.1-0.20220621085403-9a2652634e93 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/fredbi/uri v0.0.0-20181227131451-3dcfdacbaaf3 // indirect
github.com/fsnotify/fsnotify v1.5.4 // indirect
github.com/fyne-io/gl-js v0.0.0-20220119005834-d2da28d9ccfe // indirect
github.com/fyne-io/glfw-js v0.0.0-20220120001248-ee7290d23504 // indirect
github.com/fyne-io/image v0.0.0-20220602074514-4956b0afb3d2 // indirect
github.com/go-gl/gl v0.0.0-20211210172815-726fda9656d6 // indirect
github.com/go-gl/glfw/v3.3/glfw v0.0.0-20211213063430-748e38ca8aec // indirect
github.com/godbus/dbus/v5 v5.1.0 // indirect
github.com/goki/freetype v0.0.0-20181231101311-fa8a33aabaff // indirect
github.com/gopherjs/gopherjs v1.17.2 // indirect
github.com/jsummers/gobmp v0.0.0-20151104160322-e2ba15ffa76e // indirect
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/richardlehane/mscfb v1.0.4 // indirect
github.com/richardlehane/msoleps v1.0.3 // indirect
github.com/srwiley/oksvg v0.0.0-20200311192757-870daf9aa564 // indirect
github.com/srwiley/rasterx v0.0.0-20200120212402-85cb7272f5e9 // indirect
github.com/stretchr/testify v1.7.2 // indirect
github.com/tevino/abool v1.2.0 // indirect
github.com/xuri/efp v0.0.0-20220603152613-6918739fd470 // indirect
github.com/xuri/nfp v0.0.0-20220409054826-5e722a1d9e22 // indirect
github.com/yuin/goldmark v1.4.0 // indirect
golang.org/x/crypto v0.0.0-20220817201139-bc19a97f63c8 // indirect
golang.org/x/image v0.0.0-20220601225756-64ec528b34cd // indirect
golang.org/x/mobile v0.0.0-20211207041440-4e6c2922fdee // indirect
golang.org/x/net v0.0.0-20220812174116-3211cb980234 // indirect
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10 // indirect
golang.org/x/text v0.3.7 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
honnef.co/go/js/dom v0.0.0-20210725211120-f030747120f2 // indirect
)
Loading

0 comments on commit 7a49062

Please sign in to comment.