# StackEverything **Repository Path**: ZDZX-T/StackEverything ## Basic Information - **Project Name**: StackEverything - **Description**: 一款家庭专用的仓储系统,帮您追踪物品所在位置。A home-specific storage system that helps you track where your items are located. - **Primary Language**: JavaScript - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 6 - **Forks**: 0 - **Created**: 2025-06-24 - **Last Updated**: 2025-08-29 ## Categories & Tags **Categories**: erp **Tags**: None ## README # 堆叠世界 [README in English](/i18n/README_en.md) [在github上查看](https://github.com/ZDZX-T/StackEverything) | [在gitee上查看](https://gitee.com/ZDZX-T/StackEverything) ## 简介 不知道大家有没有这样的经历:我记得我有一件这样的衣服,但是我忘记这件衣服是在我家还是在学校了🤔;我叠的整整齐齐的衣服,在翻找衣服时翻着翻着就乱套了😦;一摞鞋盒,为了找一双特定的鞋得每个都掀开看一遍,到最后还没找到😠;过年冰箱冻的肉,到了年中才被发掘出来想起来吃😵…… 为了解决“东西堆成一堆后查找特定物品难”的问题,我开发了“堆叠世界”这个家庭仓储系统。与传统仓储系统注重追踪物品数量不同,堆叠世界家庭仓储系统注重追踪物品位置。 使用本系统,你可以追踪衣服堆里各衣服的位置,这样就避免翻找了;你可以记录药品的保质期,这样就不怕用的时候才发现过期了;你可以和家人一起使用,这样有找不到的东西就不用喊妈妈了……总之,本系统适合记录任何“一堆”东西,防止物品被遗忘在角落。 ## 特点 1. **📁易于上手的UI**主操作界面采用类似windows资源管理器的界面,确保目录切换等操作信手拈来。![UI展示](/i18n/img/README_UI.gif) 2. **🕹️直观的交互方式**拖拽即可移动物品,配合发光指示进行精准操作。![移动展示](/i18n/img/README_move.gif) 3. **🪄多样的移动模式**除了普通的单个拖拽外,堆叠世界还提供了多选、快速插入、快速吸收、传送门四种增加便捷性的移动模式(详细操作说明请见系统内的“帮助”页面)。
多选快移展示 4. **🎛️自定义分类和属性**可以自由添加物品的分类和物品的属性,方便后续对物品进行检索。![分类与属性](/i18n/img/README_attributes.png) 5. **🔎方便的物品检索**可以根据名称、分类、是否虚拟、过期日期、是否有子物品、所在目录进行检索,根据分类检索时还可再根据属性进行筛选。筛选后显示的字段也可自定义。![物品检索](/i18n/img/README_search.png) 6. **🛜局域网任意访问**只要局域网内一台机器运行本软件,局域网内的任何设备上的浏览器都可以访问堆叠世界,发挥不同设备的长处。
局域网访问 ## 部署 _⚠️**安全警告**:由于本项目未实现身份验证机制,且默认使用Flask提供Web服务,因此**请勿将本服务直接暴露至公网**,否则可能导致严重的安全风险。_ ### 首次使用 您可以通过 `git clone`获取本项目,或者通过 `Releases`界面下载最新或特定版本代码。 本项目需要python>=3.7。获取本项目代码后,在项目文件夹内执行下方命令安装项目所需依赖(flask和pillow) ```shell pip install -r requirements.txt ``` 随后启动服务即可 ```shell python StackEverything.py ``` 在本机上访问[127.0.0.1:8456](http://127.0.0.1:8456)即可打开堆叠世界。如果是通过其它设备访问,则访问 `主机IP:8456`即可。 打开堆叠世界页面后,点击左上角的“>”即可展开页面选择侧边栏,点击“帮助”界面即可查看的堆叠世界操作指南。 有些参数是用户可设置的,例如语言。详细可设置参数请见[config.py](/config.py)。 ### 更新 您需要保护好两个文件和一个文件夹: 1. `config.py`,这个是您的配置文件,在系统第一次运行时由自带的config_default.py复制而来; 2. `_StackEverything.db`,这个是数据库文件,系统运行后生成; 3. `user_image`,这个是存放物品图片的文件夹,系统运行后生成。 #### 手动更新 因为上面提到的需要保护的内容在源代码中并不存在,因此直接将新版本的压缩包放入堆叠世界目录内然后解压即可。 _备忘:Linux的覆盖解压命令 `unzip -o xxx.zip`_ ## FAQ Q1: 意思是我每次拿一件衣服还要在你的系统上操作一下? A1: 不一定,比如我的应季衣物会单独放在一堆,我用的时候也不会操作系统使数据同步。但是换季的时候一定是要确保系统上物品次序与现实物品次序对应,这样本系统才有意义。 Q2: 你这个系统是不是有些脱裤子放屁? A2: 看个人需求,有的人东西少,随便用脑子就记住了,那用这个系统确实是个累赘;但是当物品数量多到一定程度、接触频率低到一定程度时,脑子就不好使了,就需要辅助手段了。比如你现在知道你家小房(杂物间)里具体有哪些东西吗?使用本系统,你就可以知道,这就是本系统的意义所在。 ## 问题/建议 提交Issue即可。如果是问题,最好说明当时进行的操作、目录结构、关键日志信息;如果是建议,最好附带使用场景,或说明会解决当前的哪些痛点。 ## 赞赏 如果您喜欢本项目且愿意赞赏本项目的话,可以使用微信扫描下方二维码给作者一些鼓励。感谢您的支持! 赞赏 ## 版本日志 详细请见[CHANGELOG.md](/CHANGELOG.md)