yurii-github/yii2-mylib 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

yurii-github/yii2-mylib

最新稳定版本:v3.0

Composer 安装命令:

composer create-project yurii-github/yii2-mylib

包简介

My book library

README 文档

README

Maintainability Test Coverage

This is book library manager, written in PHP and based on Slim4 and JqueryUI.
The main purpose of it is to manage own book library as excel table with ratings and other stuff like filename synchronizations of your books and more.
It supports all JQuery UI themes.

library main

library config

library import

Functionality

  • excel table is sortable, pagable
  • books CRUD
  • books categories
  • book cover is saved to database
  • book cover can be dropped in web interface
  • book cover can be imported from PDF (you need to have ghostScript)
  • web interface is fully themed (all JqueryUI themes)
  • i18n
  • MySQL and SQLite support
  • synchronization with filesystem (renames, deletes)
  • migrations
  • configuration is done via web interface

Requirements

  • PHP 8.3 or higher
  • SQLite or MySQL database

Setup & Run

git clone git@github.com:yurii-github/my-library.git
cd my-library
composer install
./serve

Application will be available at http://localhost:8085

Structure

Here's the list of most interesting places:

├── data            -  -  -  -  -  -  -  - your data is stored here
│   ├── config.json          -  -  -  -  - settings set via web interface
│   └── mydb.s3db            -  -  -  -  - book SQLite database
├── src
├── tests
├── public
│   ├── 3rd         -  -  -  -  -  -  -  - 3rd party assets
│   ├── assets      -  -  -  -  -  -  -  - our assets
├── └── index.php   -  -  -  -  -  -  -  - entry point of the application  
└── serve           -  -  -  -  -  -  -  - run webapp locally
------

Sync

If you have enabled synchronization application will sync changes to your filesystem!

  • Any cell change that has influence on filename of the book will cause its rename
  • If you delete book in MyLibrary it will delete corresponding real file if sync is ON
  • You cannot remove records without corresponding real file if sync is ON
  • You have to manage file extension manually to rename file properly.
  • If you change book filename format it will not rename all books! It will apply new format only to newly renamed books

Importing new books

To import books into the library you have to drop your books to library folder you've set in configuration and then on Import tab press "Import Books". It will import all books from file system that are not in database yet.

Development

To configure tests' run you can create local env file tests/local_test_env.php with content like below

<?php
putenv('DB_TYPE=sqlite_memory'); // sqlite_memory | sqlite | mysql
putenv('DB_DBNAME=my_library_test2');
putenv('DB_LOGIN=my_library_test');
putenv('DB_PASSWORD=my_library_test_pass');

By default, sqlite_memory is used as database. See tests/bootstrap.php for more details.

统计信息

  • 总下载量: 23
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 4
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 3
  • Watchers: 2
  • Forks: 2
  • 开发语言: JavaScript

其他信息

  • 授权协议: GPL-3.0-only
  • 更新时间: 2015-06-08

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固