Blog

  • TriPay-Library

    TriPay-Library

    Library untuk TriPay (Payment Gateway Lokal Indonesia) menggunakan bahasa pemrograman PHP versi 7 dan database MariaDB

    Installation

    install with composer

    $ composer require hexageek1337/tripay-library

    manual install with git

    $ git clone https://github.com/hexageek1337/TriPay-Library
    $ cd TriPay-Library-main
    $ cp lib/Tripay.php your_application_folder

    Usage

    • Pertama registrasi akun tripay terlebih dahulu, bisa melalui link https://denny.my.id/go/tripay
    • Dapatkan API Key dan Private Key pada menu Merchant

    Sandbox Sandbox Merchant Key Production Production Merchant Key

    • Kemudian pada file lib/Tripay.php atur koneksi database mysql Anda di $this->dbH = new mysqli("localhost", "root", "", "bs");
    • Lalu perhatikan juga pada file lib/Tripay.php terdapat $field_status,$field_kodetrans,$tabel_trans, Sesuaikan dengan kondisi database Anda
    • Anda bisa melihat contoh menggunakan library ini di folder example

    List Variable Link

    // URLs Channel

    public $URL_channelPs = 'https://payment.tripay.co.id/api-sandbox/payment/channel';
    public $URL_channelPp = 'https://payment.tripay.co.id/api/payment/channel';
    public $URL_channelMs = 'https://payment.tripay.co.id/api-sandbox/merchant/payment-channel';
    public $URL_channelMp = 'https://payment.tripay.co.id/api/merchant/payment-channel';
    

    // URLs Calculator

    public $URL_calcMs = 'https://payment.tripay.co.id/api-sandbox/merchant/fee-calculator';
    public $URL_calcMp = 'https://payment.tripay.co.id/api/merchant/fee-calculator';
    

    // URLs Transaction

    // Create

    public $URL_transMs = 'https://payment.tripay.co.id/api-sandbox/transaction/create';
    public $URL_transMp = 'https://payment.tripay.co.id/api/transaction/create';
    public $URL_transOpenMs = '';
    public $URL_transOpenMp = 'https://payment.tripay.co.id/api/transaction/open-payment/create';
    

    // Detail Close Sistem

    public $URL_transDetailMs = 'https://payment.tripay.co.id/api-sandbox/transaction/detail';
    public $URL_transDetailMp = 'https://payment.tripay.co.id/api/transaction/detail';
    

    // Detail Open Sistem with uuid

    public $URL_transDetailOpenMs = '';
    public $URL_transDetailOpenMp = 'https://payment.tripay.co.id/api/transaction/open-payment/';
    public $URL_transPembOpenMs = '';
    public $URL_transPembOpenMp = 'https://payment.tripay.co.id/api/transaction/open-payment/';
    

    Regards

    Denny Septian Panggabean

    Visit original content creator repository https://github.com/hexageek1337/TriPay-Library
  • useful-tools

    All Contributors

    Useful Tools 🔎

    A list of useful tools and programs for developpers, devops, admins, … but not only. Whereas most of them are Open Source, not all of them are. Please check licences that may apply. This list contains items that i personally find useful, usages may differ.

    The concept behind that list is based on the famous “awesome” lists you can find on github. Since they did not fully suited my need, i preferred to go with my own version.

    Please feel free to comment or open a pull request if you know better tools / or alternatives or if some links are dead, … 😉

    Thanks a lot to Algolia for providing the search mechanism through docsearch !

    Usage

    You can either find the source markdown file here, or access the result here.

    To set it up locally:

    For development mode:

    1. Run yarn install to install all dependencies.
    2. Run yarn vuepress dev docs
    3. Open http://localhost:8080/useful-tools/ in your browser.

    To generate the static files:

    1. Run yarn install to install all dependencies.
    2. Run yarn vuepress build docs

    To update the dependencies:

    1. Run yarn upgrade

    Preview

    preview

    Contributors ✨

    Thanks goes to these wonderful people (emoji key):

    Felix Bartels
    Felix Bartels

    🐛 📆
    trolologuy
    trolologuy

    🖋 📖
    Cthulhux
    Cthulhux

    🖋
    deadc0de
    deadc0de

    🖋
    Nikita Sobolev
    Nikita Sobolev

    🖋
    Roman Tezikov
    Roman Tezikov

    🖋
    unbelauscht
    unbelauscht

    🖋
    cyr1l0u
    cyr1l0u

    🖋
    Sebastian Lackner
    Sebastian Lackner

    🖋
    Ruben
    Ruben

    🖋
    Caio Rolla
    Caio Rolla

    🖋
    gruelingpine185
    gruelingpine185

    🖋
    antmorr
    antmorr

    🖋
    Jonass Hass
    Jonass Hass

    🖋
    Tomilo Mark
    Tomilo Mark

    🖋
    Martin Stastny
    Martin Stastny

    🖋
    Tomzur
    Tomzur

    🖋
    dfntlmb
    dfntlmb

    🖋
    Mariusz Michalowski
    Mariusz Michalowski

    🖋
    John Xie
    John Xie

    🖋

    This project follows the all-contributors specification. Contributions of any kind welcome!

    Visit original content creator repository https://github.com/trolologuy/useful-tools
  • useful-tools

    All Contributors

    Useful Tools 🔎

    A list of useful tools and programs for developpers, devops, admins, … but not only. Whereas most of them are Open Source, not all of them are. Please check licences that may apply. This list contains items that i personally find useful, usages may differ.

    The concept behind that list is based on the famous “awesome” lists you can find on github. Since they did not fully suited my need, i preferred to go with my own version.

    Please feel free to comment or open a pull request if you know better tools / or alternatives or if some links are dead, … 😉

    Thanks a lot to Algolia for providing the search mechanism through docsearch !

    Usage

    You can either find the source markdown file here, or access the result here.

    To set it up locally:

    For development mode:

    1. Run yarn install to install all dependencies.
    2. Run yarn vuepress dev docs
    3. Open http://localhost:8080/useful-tools/ in your browser.

    To generate the static files:

    1. Run yarn install to install all dependencies.
    2. Run yarn vuepress build docs

    To update the dependencies:

    1. Run yarn upgrade

    Preview

    preview

    Contributors ✨

    Thanks goes to these wonderful people (emoji key):

    Felix Bartels
    Felix Bartels

    🐛 📆
    trolologuy
    trolologuy

    🖋 📖
    Cthulhux
    Cthulhux

    🖋
    deadc0de
    deadc0de

    🖋
    Nikita Sobolev
    Nikita Sobolev

    🖋
    Roman Tezikov
    Roman Tezikov

    🖋
    unbelauscht
    unbelauscht

    🖋
    cyr1l0u
    cyr1l0u

    🖋
    Sebastian Lackner
    Sebastian Lackner

    🖋
    Ruben
    Ruben

    🖋
    Caio Rolla
    Caio Rolla

    🖋
    gruelingpine185
    gruelingpine185

    🖋
    antmorr
    antmorr

    🖋
    Jonass Hass
    Jonass Hass

    🖋
    Tomilo Mark
    Tomilo Mark

    🖋
    Martin Stastny
    Martin Stastny

    🖋
    Tomzur
    Tomzur

    🖋
    dfntlmb
    dfntlmb

    🖋
    Mariusz Michalowski
    Mariusz Michalowski

    🖋
    John Xie
    John Xie

    🖋

    This project follows the all-contributors specification. Contributions of any kind welcome!

    Visit original content creator repository https://github.com/trolologuy/useful-tools
  • tagdox

    Tagdox – 标签文库

    Github Ready-to-Code Gitee Ready-to-Code
    Powered by Python and Tkinter

    简要介绍

    Tagdox / 标签文库,是用于对文档进行「标签化管理」的免费开源工具。通过Python语言编写。

    利用Windows系统NTFS文件流的特性,为文件加标签,并可实现标签的识别和查询等功能。

    可实现对大量文件的标签化快速管理,可显著提升效率。

    2023年9月28日备注:

    近期正在调整软件架构,包括代码拆分以及不合理的命名调整等。

    程序界面

    以 v0.20.3.3为例(此为旧版页面 的历史截图,请以最新版本为准,详见更新记录)。

    image-20210911124858447

    其中:

    左侧是关注的文件夹,可以将文件夹添加到这里,程序将自动对其中所有文件进行解析。支持分组管理。

    右侧是文件列表,左起第二列就是本程序最核心的「标签」部分。

    开发说明

    本程序采用Python实现,程序界面主要依靠tkinter库完成开发。

    通过pyinstaller转制为exe可执行程序,所以目前只支持 windows 系统。

    程序完全开源,不上传任何数据。

    其中,标签文库.py 文件是全部的源代码,options_for_tagdox.json是设置项,没有设置项时程序会自动生成。

    主要功能

    文件和标签管理

    为文件添加 / 删除标签。

    可以为指定的文件快速添加标签,快捷键是 Ctrl+T。支持多文件批量操作。

    添加标签的方式:

    (1)右键,添加标签。

    image-20210907213438028

    (2)点击右下角按钮添加。

    image-20210911124938272

    (3)快捷键Ctrl+T添加。

    当然,删除标签也是一键搞定。

    image-20210907214903690

    补充:识别文件夹标签

    (备注:本功能即将被移除或重做)

    对于文件名包括标签识别符的,也会识别为标签。可以方便地进行大批量快速管理。

    如果有些文件拥有相同的主题(公共标签),可以直接放在叫做「文件夹名称^标签名称」的文件夹内,程序会自动将「标签名称」识别为批量标签,为文件夹里面所有项都添加这个标签,而无需对每个文件进行重命名操作。

    文件夹批量标签的识别层数可以通过设置进行自定义。

    按照标签快速查询文件

    支持按照标签对文件进行筛选和检索。

    image-20210907110953223

    当前文件夹的标签会自动提取到标签列表中,便于按标签快速搜索。

    也可以通过手动输入文件名和路径等任意关键词进行搜索。

    拖拽添加文件/文件夹

    可以通过鼠标将任意文件或文件夹拖拽到右侧文件列表,被拖动的文件/文件夹将被移动(或复制)到当前打开的文件夹中。

    image-20210911125153412

    可以通过菜单设置项,设置拖拽操作是「移动」(不保留原始文件)还是「复制」。

    image-20210907105115950

    添加文件时,会自动为文件附带当前选中的标签。

    这个功能非常适合管理微信的文件,从聊天列表中一拖拽就能保存到目标位置,而且可以快速添加标签,让管理更加轻松。

    文件夹管理

    添加关注的文件夹

    本程序主要分析目标是本机文件夹。

    对任意文件夹添加关注之后,文件夹将出现在本程序左侧列表中,添加之后才能进行文件分析和管理操作。

    添加的方式:

    (1)可以通过点击顶部菜单按钮添加,

    image-20210911125021348

    (2)也可以直接将文件夹用鼠标拖动到列表区域,支持多文件夹拖动操作;

    image-20210911125110175

    (3)还可以通过右键菜单,将子文件夹快速添加到关注列表。

    image-20210907213657414

    文件夹分组

    可以通过文件夹分组,对相似功能的文件夹进行统一管理,比如查询搜索或者标签管理等。

    如下图所示:

    image-20210907110442737

    分组可以通过右键菜单自定义。

    image-20210907213824717

    更多功能

    快速笔记

    程序可以快速添加笔记,并以本地文件的方式实现笔记管理,

    添加这个功能的主要原因是已经受够了在线笔记软件(如印X笔记、为X笔记、有X云笔记等)越来越差的使用体验,以及越来越麻烦的数据垄断。

    笔记还是要掌握在用户自己手中!所以,这里的笔记坚决以本地文件的方式实现,完全自主可控。

    image-20210907105443565

    可以通过设置,选择笔记类型为 docx、md、rtf、txt等。

    image-20210907214121596

    新建笔记之后将首先输入名称,然后立刻自动打开笔记。

    安装教程

    请访问「发行版」页面,下载最新版本并解压缩,运行其中的「标签文库.exe」文件即可。

    image-20210818124551314

    版本升级:

    目前还没有制作专门的安装包,所以将最新版压缩包下载后,解压缩,直接覆盖旧版文件夹即可。

    感谢

    感谢以下朋友的技术支持

    GoogleLLP Xiangrui Zong

    更新记录

    2025年

    v0.28.1.1 2025年2月18日

    fixed: 修正了无配置文件启动时(全新启动),因列表溢出导致无法启动的bug。

    2024年

    v0.28.1.0 2024年5月14日

    左侧文件夹可以设置为常开模式了; 优化配置文件的显示格式。

    v0.28.0.0 2024年5月10日

    增加了通过配置文件调整界面尺寸的功能。

    v0.27.4.0 2024年3月23日

    空格预览功能优化,增加了对md和txt的内容预览,并增加了纵向滚动功能。

    v0.27.3.1 2024年1月3日

    新增:在文件树区域,对分组增加了右键菜单。 修正:修正了一个陈年老bug。

    v0.27.3.0 2024年1月2日

    增加README区域的纵向滚动条。

    2023年

    v0.27.2.2 2023年12月29日

    微调UI。

    v0.27.2.1 2023年12月27日

    为打开当前文件夹之类的操作添加了补充说明;增加新增文件夹时选择分组的功能。

    v0.27.2.0 2023年12月26日

    增加了文件只读的读取和显示功能。顺便修复了一个只读文件不能添加标签的bug。

    v0.27.1.2 2023年12月26日

    修复:修正了左侧文件夹层级错误的bug。

    v0.27.1.1 2023年12月23日

    调整UI,使文件夹搜索功能上线之后的界面布局更协调。

    v0.27.1.0 2023年12月22日

    增加了文件夹搜索目标高亮的功能,而且搜索到的文件夹保持其全部子文件夹,从而提高使用体验。

    v0.27.0.1 2023年12月21日

    初步实现了文件夹搜索功能,稍微调整了布局。 修正了搜索文件夹大小写的bug。

    v0.27.0.0 2023年12月21日

    初步实现了文件夹搜索功能。

    v0.26.2.2 2023年12月21日

    将文件操作从原始代码中独立出来,便于后续升级。 修正了只读权限导致的重命名和移动失败的问题。

    v0.26.2.1 2023年11月30日

    修复了文件夹列表刷新的时候,滚动到纵向位置的错误。 定位了一个之前报错的地方,但bug尚未消除。

    v0.26.2.0 2023年10月29日

    初步实现了常开文件夹的功能,方便设置inbox等特殊文件夹。

    v0.26.1.3 2023年10月25日

    注释区增加对大写”README.md”的支持,以便支持github等常见平台的说明文件。

    v0.26.1.2 2023年10月17日

    为readme增加快捷键 ctrl+R,并优化了高度,按比例显示。

    v0.26.1.1 2023年10月11日

    优化readme区域的外观、修正滚动条宽度控制逻辑。

    v0.26.1.0 2023年10月11日

    增加功能:为readme功能增加了快捷按钮。

    v0.26.0.0 2023年10月11日

    增加功能:可以解析当前文件夹内的readme.md文件,并作为文件夹备注显示在列表下面。

    v0.25.1.9 2023年10月6日

    增加功能:可以在左侧文件夹列表自动忽略点开头的文件夹。这个功能以后可以作为设置项。

    v0.25.1.8 2023年9月27日

    修正了空格唤起的文件预览框缩放不正确的问题。 将图标等素材统一移动到 resources 文件夹下。

    (近期正在调整软件架构)

    v0.25.1.7 2023年7月25日

    将左侧列表的缩进设置为40,提高区分度。之后考虑做成自适应或者可调节的。

    v0.25.1.6 2023年1月24日

    补充了弹窗对高分屏的适配。

    v0.25.1.5 2023年1月22日

    增加了对1080p以上分辨率的缩放适配.

    2022年

    v0.25.1.4 2022年10月15日

    fixed: 修复了点击分组(0级目录)的时候,不能查看分组文件的bug(#I5VX6P)。 优化文件夹取消关注的表达。

    v0.25.1.3 2022年10月13日

    优化了点击左侧文件夹的时候,增加了对当前文件夹的刷新的逻辑。 之前启动的时候,文件夹是完整加载,效率太低。现在优化为只加载一层子文件夹,加载速度显著提升。

    v0.25.1.2 2022年8月15日

    增加标签页拖拽为剪切移动的功能;调整标签为左对齐。

    v0.25.1.1 2022年7月20日

    优化询问拖拽是否保留原始文件的表达。

    v0.25.1.0 2022年7月5日

    外部文件拖拽进入主窗口时,可以通过对话框设定是否保留原始文件。

    v0.25.0.1 2022年5月22日

    修复了文件夹区域左键单击时,当前对象没有正常高亮的bug。

    v0.25.0.0 2022年5月22日

    左侧文件夹列表优化,现在右键操作可直接作用于鼠标选中对象,而不是只能操作打开的文件夹。

    v0.24.0.0 2022年5月5日

    调整UI显示,将标签、日期、大小都放在右侧。

    v0.23.1.2 2022年4月30日

    修复了文件夹名称存在包含关系时,较长文件夹的内部文件会出现在较短文件夹内部的bug。

    v0.23.1.1 2022年3月9日

    修复了点击列表空白处的bug。

    v0.23.1.0 2022年3月8日

    实现了隐藏空分组的功能。 已知bug:按住Ctrl的时候,点击分组内的项目,不能选中。

    v0.23.0.3 2022年3月7日

    尝试修复了tree定位高亮项目的错误。

    v0.23.0.2 2022年3月5日

    尝试修复输入框与中文输入法之间的兼容性问题。

    v0.23.0.1 2022年3月5日

    实现了按照子文件夹分组显示的功能, 修复了文件夹分组的背景色问题; 已知bug:tree定位到高亮内容存在错误。

    v0.23.0.0 2022年3月3日

    增加tree分组显示,可以将子文件夹的内容在第二组显示出来, 相关的功能还没有全部测试。 已知bug:tree定位到高亮内容存在错误。 tree列表的背景色有错误; 如果能显示文件夹名称就更好了。

    v0.22.1.0 2022年1月12日

    增加.git文件夹的忽略; 将默认配置文件配置设定在上级目录。

    v0.22.0.4 2022年1月12日

    优化了新建笔记时候的扩展名提示。

    v0.22.0.3 2022年1月3日

    对部分函数进行了重命名,逻辑没有改。

    2021年12月

    v0.22.0.2 2021年12月25日

    文件重命名默认不再修改扩展名,避免重命名导致的其他问题。 圣诞快乐!

    v0.22.0.1 2021年12月21日

    优化文件夹排序,实现英文首字母混排,且忽略标签分隔符。 精简部分菜单项。

    v0.22.0.0 2021年12月19日

    优化了标签区域的鼠标效果; 为子窗口增加后台自动关闭的功能,修复了在后台会锁住程序的bug。

    v0.21.4.6 2021年12月19日

    修复了短时间快速点击可能导致多次打开文件的bug。

    v0.21.4.5 2021年12月19日

    将文件夹区域右键的添加关注文件夹功能调整到菜单中。

    v0.21.4.4 2021年12月2日

    优化代码,将标签的排除类型调整到变量中。

    v0.21.4.3 2021年12月2日

    隐藏了标签下拉框。

    2021年11月

    v0.21.4.2 2021年11月28日

    尝试修复Typora以覆盖方式更新md文件导致丢失标签的bug。

    v0.21.4.1 2021年11月26日

    优化UI布局和颜色。

    v0.21.4.0 2021年11月26日

    增加标签列表,提高标签应用性能,进入测试阶段。

    v0.21.3.1 2021年11月17日

    优化体验,当左键单击列表空白的时候,会自动取消选中。

    2021年10月

    v0.21.3.0 2021年10月30日

    增加对markdown移动的优化,相对路径附件可以在移动的时候自动复制了, 这样移动后的md文件仍然可以正常访问图片等附件。

    v0.21.2.0 2021年10月21日

    右键新建笔记的时候,可以更方便地选择笔记类型了。

    v0.21.1.2 2021年10月6日

    修复了在非NTFS磁盘上的兼容性bug。 文件夹区域也增加了鼠标指向效果。 修改自建模块位置。

    v0.21.1.1 2021年10月4日

    储备:优化标签类封装逻辑,关闭文件前一直占用文件。 储备:新增常用工具函数,直接对标签进行增加、删除、清空、查询。 储备:新增依赖说明requirements.txt。

    v0.21.1.0 2021年10月4日

    为文件列表的鼠标指向增加了高亮效果。

    v0.21.0.0 2021年10月3日

    优化标签逻辑,采用NTFS流模式,不再影响文件名(测试版)。 优化右键响应,现在可以正确在被点击的项目处出现右键菜单了。

    2021年9月

    v0.20.3.7 2021年9月18日

    优化了分组的颜色,调整为浅蓝色;调整菜单按钮颜色为浅蓝色。

    v0.20.3.6 2021年9月15日

    修复新建笔记时错误影响存储的笔记类型的bug。

    v0.20.3.5 2021年9月13日

    开放“打开文件夹并选中文件”的功能。

    v0.20.3.4 2021年9月12日

    增加只筛选笔记的功能;增加部分快捷键;增加窗口最小尺寸限制。

    v0.20.3.3 2021年9月10日

    增加空格查看文件信息的功能;增加Insert键快速插入txt笔记的功能。

    v0.20.3.2 2021年9月9日

    修复:复制粘贴快捷键在输入弹窗中与输入框冲突的问题。

    v0.20.3.1 2021年9月9日

    优化界面布局和间距,调整按钮等。

    v0.20.3.0 2021年9月6日

    优化界面。

    v0.20.2.0 2021年9月6日

    文件列表增加常用的小图标。

    v0.20.1.1 2021年9月6日

    修复文件夹重复添加的bug,增加快速添加子目录到关注列表的功能。

    v0.20.1.0 2021年9月6日

    全面优化界面UI和配色。

    v0.20.0.0 2021年9月6日

    重大更新: 美化UI,增加主题配色。

    v0.19.1.0 2021年9月6日

    允许拖拽文件夹到主窗口;修复文件夹列表可能被多选的bug。

    v0.19.0.5 2021年9月5日

    代码拆分成多个文件,首先拆分进度条和弹窗类。

    v0.19.0.4 2021年9月5日

    修复初始化时定位文件夹错误的bug。

    v0.19.0.3 2021年9月5日

    修复文件夹刷新后的定位异常。

    v0.19.0.2 2021年9月4日

    修复文件拖拽到分组的异常。

    v0.19.0.1 2021年9月4日

    优化文件夹分组,增加置顶分组功能。

    v0.19.0.0 2021年9月4日

    重大更新: 实现文件夹分组等功能; 文件夹按照名称排序; 移除文件夹顺序自定义功能。

    v0.18.6.3 2021年9月4日

    优化剪切逻辑,统一部分函数命名规则。

    v0.18.6.2 2021年9月3日

    子文件夹删除或移动时,取消文件的粘贴功能。

    v0.18.6.1 2021年9月3日

    增加子文件夹删除的功能。

    v0.18.6.0 2021年9月3日

    增加子文件夹移动的功能;增加检查更新的功能。

    v0.18.5.0 2021年9月3日

    将删除修改为删除到回收站。

    v0.18.4.1 2021年9月2日

    实现了文件的复制剪切功能。

    v0.18.4.0 2021年9月2日

    刷新文件夹列表时,选中项保留在之前位置附近; 增加重命名文件夹功能。

    v0.18.3.4 2021年9月1日

    调整表格的列宽度。

    2021年8月

    v0.18.3.3 2021年8月25日

    将删除修改为隐藏。

    v0.18.3.2 2021年8月23日

    增加「新建子文件夹」功能。

    v0.18.3.1 2021年8月23日

    强化「拿起」之后的视觉效果。

    v0.18.3.0 2021年8月23日

    增加「拿起放下」功能,算是程序内的剪切粘贴。

    v0.18.2.0 2021年8月23日

    增加只看当前文件夹的功能。

    v0.18.1.2 2021年8月22日

    添加点击文件夹时,同级文件夹自动折叠的效果。

    v0.18.1.1 2021年8月21日

    文件夹设置为随点随开,并优化了文件夹排序时的定位效果。

    v0.18.1.0 2021年8月21日

    增加0级、1级、2级文件夹在点击时自动展开/折叠的功能。

    v0.18.0.0 2021年8月21日

    将左侧文件夹列表调整为树结构。取消子文件夹模式。

    v0.17.0.3 2021年8月17日

    修复点击全部文件夹之后,再点击第一个文件夹会导致看不到子文件夹的bug。

    v0.17.0.2 2021年8月17日

    将功能绑定拆分到类的独立函数,进一步解耦;稍微优化设置窗口的界面布局。

    v0.17.0.1 2021年8月17日

    修复了新建笔记的默认名称可能会保留上一个笔记名称的bug。

    v0.17.0.0 2021年8月16日

    以独立class的方式重构主页面架构【重要更新】。

    v0.16.1.1 2021年8月15日

    更新了关于页面的二维码。

    v0.16.1.0 2021年8月13日

    设置项增加对最后目录的解析设置、对标签的解析设置。

    v0.16.0.1 2021年8月13日

    优化最后一级目录作为标签对空格的解析。

    v0.16.0.0 2021年8月12日

    启动时增加后台进程,显著提高数据加载速度。

    v0.15.2.5 2021年8月12日

    优化部分UI显示。

    v0.15.2.4 2021年8月12日

    优化部分UI显示,增加框架底纹。

    v0.15.2.3 2021年8月11日

    优化部分界面显示。

    v0.15.2.2 2021年8月9日

    修复单击相同的主文件夹会导致子文件夹消失的bug。

    v0.15.2.1 2021年8月9日

    优化排序逻辑,现在大小写放在一起排序。

    v0.15.2.0 2021年8月9日

    将窗口模式的添加到设置项中。

    v0.15.1.2 2021年8月8日

    修复子文件夹重命名和新建的bug。

    v0.15.1.1 2021年8月7日

    修复子文件夹模式的标签刷新逻辑bug。

    v0.15.1.0 2021年8月7日

    采用字典查询,显著增加列表加载速度。

    v0.15.0.4 2021年8月6日

    增加对文件创建时间的解析,但是还没开放。

    v0.15.0.3 2021年8月3日

    增加标签「强筛选」和「弱筛选」的功能。默认是弱筛选。

    v0.15.0.2 2021年8月3日

    增加文件夹列表“置顶”的功能。

    v0.15.0.1 2021年8月2日

    标签区域排序优化,现在无论大小写英文都可以在一起排序了。

    v0.15.0.0 2021年8月1日

    实现左下角列表区域为标签功能的调试,好像可以正常使用。进入测试阶段。

    2021年7月

    v0.14.3.1 2021年7月31日

    增加文件列表区拖拽进来的自动添加当前选中标签的功能,为标签化管理做好准备。

    v0.14.3.0 2021年7月31日

    增加将最后的子文件夹也作为标签的功能。

    v0.14.2.6 2021年7月31日

    子文件夹区域新增「新建文件夹」和「重命名文件夹」功能。

    v0.14.2.5 2021年7月30日

    将搜索项目分类处理,并将关键词搜索限制在文件名和标签范围内;增加文件夹列表对键盘上下键的响应。 已知bug:快速按上下键会导致进度条不消失。所以现在增加了点击进度条使其强行消失的功能。

    v0.14.2.4 2021年7月28日

    文件区右键菜单将不可执行的功能也显示出来并标记为灰色。

    v0.14.2.3 2021年7月28日

    增加对多文件拖拽添加的视觉支持;多个关键词的搜索逻辑现在是“and”关系。

    v0.14.2.2 2021年7月27日

    增加对多文件同时删除公共标签。

    v0.14.2.1 2021年7月27日

    增加对多文件同时操作的支持,而且可以快速选中多个处理结果。

    v0.14.2.0 2021年7月27日

    增加对多文件同时操作的支持,目前支持同时打开、同时增加标签,但是加标签的选中体验还不好。

    v0.14.1.4 2021年7月27日

    增加 Ctrl+F 出现弹窗快捷搜索的功能;调整弹窗位置为窗口中央而不是屏幕中央。

    v0.14.1.3 2021年7月24日

    增加按F5刷新的快捷键。

    v0.14.1.2 2021年7月24日

    修复了文件夹为空时刷新会导致卡死的bug。

    v0.14.1.1 2021年7月23日

    优化字体和字号显示;简化笔记标签显示方式。

    v0.14.1.0 2021年7月22日

    增加了文件夹拖动进来是移动还是复制的设置;优化设置文件的架构。

    v0.14.0.5 2021年7月22日

    按照规则优化了代码里面函数的名称,对功能没有变化。

    v0.14.0.4 2021年7月19日

    增加子文件夹区域快速添加关注的功能。

    v0.14.0.3 2021年7月19日

    增加子文件夹区域的右键菜单。

    v0.14.0.2 2021年7月18日

    修复进度条显示错误。

    v0.14.0.1 2021年7月18日

    切换文件夹时不再保留标签搜索项。

    v0.14.0.0 2021年7月17日

    将子文件夹独立为左侧列表。

    v0.13.1.0 2021年7月16日

    去掉文件夹区域下面的按钮框架。

    v0.13.0.5 2021年7月16日

    修复设置项修改后不能立刻刷新的bug;修复输入框二次刷新的bug;优化部分菜单。

    v0.13.0.4 2021年7月15日

    修复分辨率和缩放不兼容导致的启动失败问题。

    v0.13.0.3 2021年7月14日

    修复致命bug。

    v0.13.0.2 2021年7月13日

    修正了一处错别字。

    v0.13.0.1 2021年7月12日

    多进程性能太差,所以修改为多线程逻辑。

    v0.13.0.0 2021年7月10日

    加入多进程并发处理逻辑。

    v0.12.2.0 2021年7月10日

    优化代码架构。

    v0.12.1.0 2021年7月9日

    增加了文件大小数据。

    v0.12.0.2 2021年7月9日

    修复了输入框覆盖的错误。

    v0.12.0.1 2021年7月9日

    修复了提示文字的错误。

    v0.12.0.0 2021年7月9日

    增加了居中的进度条。

    v0.11.2.4 2021年7月8日

    Bug修复,性能优化。

    v0.11.2.3 2021年7月8日

    逻辑优化。

    v0.11.2.2 2021年7月8日

    修复子文件夹手动留空时候,标签列表错误的bug。

    v0.11.2.1 2021年7月8日

    优化弹窗代码逻辑;修复 ALL_FOLDERS=2 的时候取消关注文件夹的按钮失效的bug;

    v0.11.2.0 2021年7月8日

    增加列排序的可视化提示效果;优化标签的添加逻辑。

    v0.11.1.0 2021年7月8日

    优化了窗口的左上角图标。

    v0.11.0.0 2021年7月7日

    完成了自制的居中输入窗体,并优化了界面; 解决了分辨率导致的窗口位置偏移问题。

    v0.10.2.3 2021年7月7日

    修复了GBK不支持特殊空格,导致排序失败的问题。

    v0.10.2.2 2021年7月7日

    将设置窗口和关于窗口调整为模态。

    v0.10.2.1 2021年7月7日

    修复了切换文件夹的bug。

    v0.10.2.0 2021年7月7日

    实现文件列表上下移动的功能。

    v0.10.1.0 2021年7月7日

    实现文件列表的重命名和删除功能。

    v0.10.0.4 2021年7月7日

    修复了子文件夹内添加或删除标签的定位逻辑;优化通过菜单添加标签的交互。

    v0.10.0.3 2021年7月6日

    修复列表的中文排序;优化列表文件定位逻辑。

    v0.10.0.2 2021年7月6日

    修复列表文件定位错误的bug。

    v0.10.0.1 2021年7月6日

    优化设置弹窗显示。

    v0.10.0.0 2021年7月6日

    增加了子文件夹的筛选功能,进一步提高管理效率。

    v0.9.5.4 2021年7月5日

    增加设置菜单;调整分隔符的潜在兼容性错误。

    v0.9.5.3 2021年7月5日

    增加「关于」窗口功能。

    v0.9.5.2 2021年7月5日

    增加主菜单功能。

    v0.9.5.1 2021年7月5日

    增加拖拽文件直接复制到文件夹内的功能,便于处理微信文件或其他需要复制的业务。

    v0.9.5.0 2021年7月4日

    增加进度条显示;优化加载效率;优化排序加载算法,缩短排序时间。

    v0.9.4.1 2021年7月4日

    增加文件加载状态的提示,优化加载时间长期间的体验;

    增加开发和实际数据的区分。

    v0.9.4.0 2021年7月2日

    新增:

    • 增加了右键删除标签的功能;
    • 增加了右键快速添加标签的功能。

    优化:

    • 切换文件夹之后会将滚动条设置到最顶部。
    • 点击文件夹之后,如果并没有切换,就不执行文件夹内容刷新。

    v0.9.3.3 2021年7月1日

    修复了新建笔记定位错位的bug;增加文件列表中「在相同位置创建笔记」的功能。

    v0.9.3.2 2021年7月1日

    实现了对高分屏的适配,现在应该是默认就很清晰,不需要手动设置了。

    2021年6月

    v0.9.3.1 2021年6月30日

    更新LOGO;

    增加了切换文件夹之后是否清除筛选的变量;

    完善了是否保留所有文件夹这个功能;

    修复bug

    v0.9.3 2021年6月30日

    增加列表文件的高亮,包括添加标签后定位到相应位置、新建文件后定位到相应位置等。

    v0.9.2 2021年6月29日

    修复了可能导致空白文件夹的bug。

    v0.9.0 2021年6月29日

    实现了点击列标排序的功能。

    v0.8.9 2021年6月29日

    增加了右键菜单,实现跳转到文件夹等功能。

    调整py文件名。

    虽然重命名已完成,但不能输入特殊符号,所以暂不开放。

    v0.8.2 2021年6月29日

    升级了搜索功能,标签是直接选择,文字是直接输入,而且支持空格拆分多个输入文本片段。

    调整UI,将新增标签输入框放在下面,更符合逻辑。

    新增标签可以直接选择已有的标签。

    默认以最大化方式启动。

    增加对word缓存文档的屏蔽。

    修复了一个启动时候不能刷新的bug。

    v0.8.0 2021年6月27日

    关注的文件夹列表终于完成了自定义!现在可以通过下面的增删按钮调整关注的文件夹列表,甚至可以直接鼠标拖动文件夹到文件夹列表区域,程序会自动识别并添加文件夹。

    在没有设置项的时候,程序会自动创建初始化的设置文件。

    优化内部逻辑,修复文件夹和文件夹简称可能重复的漏洞。

    v0.7.0 2021年6月26日

    更名为 Tagdox / 标签文库;

    更新icon;

    调整架构,将文件夹列表调整到左侧作为独立区间,并为以后增加子文件夹做准备;

    列表增加序号列。

    v0.6.4 2021年6月24日

    优化文件夹路径简写功能,做到了 json 里面,更加规范,并且兼容了不带简写的写法。

    列表按回车也能打开文件,而不仅仅是双击。

    v0.6.3 2021年6月22日

    为文件夹筛选增加了路径简写功能,简化下拉列表的显示效果,功能已经实现,但是还不够优雅。

    准备做到 json 里面提供自定义功能。

    而且现在这种方式存在最后文件夹名称重复的 bug ,也需要处理好。

    v0.6.2 2021年6月22日

    增加按文件夹筛选的功能。优化UI布局。

    v0.6.1 2021年6月22日

    增加排除文件夹的功能,目前包括以下规则:

    • 路径中存在”.”开头的文件夹
    • 内容包括”_nomedia“文件
    • 指定的排除文件夹名称(尚未实现自定义,以后实现)

    v0.6.0 2021年6月21日

    实现界面自适应调整尺寸,并增加横向滚动条功能。

    优化UI。

    v0.5.2 2021年6月20日

    支持对最末2层文件夹名称进行解析,如果文件夹名称包括#号也可以解析为标签(层数默认2层、分隔号默认#号,都可以自定义)。

    微调UI。

    v0.5.1 2021年6月20日

    将分隔符(原来的#号)独立出来,设置为可以调整的符号。

    在data.json里面可以设置。

    v0.5.0 2021年6月19日

    实现添加标签、自由搜索、结果计数的功能。

    v0.4.0 2021年6月18日

    实现按照中文音序排序标签。

    将检索目录的设定方案调整到外接 json 文件中,实现程序外自定义。

    优化UI、优化程序架构。

    (中间开发版未记录)

    v0.1.0 2021年6月17日

    实现文件检索、标签拆分等基础功能。

    Visit original content creator repository https://github.com/HorseSword/tagdox
  • tagdox

    Tagdox – 标签文库

    Github Ready-to-Code Gitee Ready-to-Code
    Powered by Python and Tkinter

    简要介绍

    Tagdox / 标签文库,是用于对文档进行「标签化管理」的免费开源工具。通过Python语言编写。

    利用Windows系统NTFS文件流的特性,为文件加标签,并可实现标签的识别和查询等功能。

    可实现对大量文件的标签化快速管理,可显著提升效率。

    2023年9月28日备注:

    近期正在调整软件架构,包括代码拆分以及不合理的命名调整等。

    程序界面

    以 v0.20.3.3为例(此为旧版页面 的历史截图,请以最新版本为准,详见更新记录)。

    image-20210911124858447

    其中:

    左侧是关注的文件夹,可以将文件夹添加到这里,程序将自动对其中所有文件进行解析。支持分组管理。

    右侧是文件列表,左起第二列就是本程序最核心的「标签」部分。

    开发说明

    本程序采用Python实现,程序界面主要依靠tkinter库完成开发。

    通过pyinstaller转制为exe可执行程序,所以目前只支持 windows 系统。

    程序完全开源,不上传任何数据。

    其中,标签文库.py 文件是全部的源代码,options_for_tagdox.json是设置项,没有设置项时程序会自动生成。

    主要功能

    文件和标签管理

    为文件添加 / 删除标签。

    可以为指定的文件快速添加标签,快捷键是 Ctrl+T。支持多文件批量操作。

    添加标签的方式:

    (1)右键,添加标签。

    image-20210907213438028

    (2)点击右下角按钮添加。

    image-20210911124938272

    (3)快捷键Ctrl+T添加。

    当然,删除标签也是一键搞定。

    image-20210907214903690

    补充:识别文件夹标签

    (备注:本功能即将被移除或重做)

    对于文件名包括标签识别符的,也会识别为标签。可以方便地进行大批量快速管理。

    如果有些文件拥有相同的主题(公共标签),可以直接放在叫做「文件夹名称^标签名称」的文件夹内,程序会自动将「标签名称」识别为批量标签,为文件夹里面所有项都添加这个标签,而无需对每个文件进行重命名操作。

    文件夹批量标签的识别层数可以通过设置进行自定义。

    按照标签快速查询文件

    支持按照标签对文件进行筛选和检索。

    image-20210907110953223

    当前文件夹的标签会自动提取到标签列表中,便于按标签快速搜索。

    也可以通过手动输入文件名和路径等任意关键词进行搜索。

    拖拽添加文件/文件夹

    可以通过鼠标将任意文件或文件夹拖拽到右侧文件列表,被拖动的文件/文件夹将被移动(或复制)到当前打开的文件夹中。

    image-20210911125153412

    可以通过菜单设置项,设置拖拽操作是「移动」(不保留原始文件)还是「复制」。

    image-20210907105115950

    添加文件时,会自动为文件附带当前选中的标签。

    这个功能非常适合管理微信的文件,从聊天列表中一拖拽就能保存到目标位置,而且可以快速添加标签,让管理更加轻松。

    文件夹管理

    添加关注的文件夹

    本程序主要分析目标是本机文件夹。

    对任意文件夹添加关注之后,文件夹将出现在本程序左侧列表中,添加之后才能进行文件分析和管理操作。

    添加的方式:

    (1)可以通过点击顶部菜单按钮添加,

    image-20210911125021348

    (2)也可以直接将文件夹用鼠标拖动到列表区域,支持多文件夹拖动操作;

    image-20210911125110175

    (3)还可以通过右键菜单,将子文件夹快速添加到关注列表。

    image-20210907213657414

    文件夹分组

    可以通过文件夹分组,对相似功能的文件夹进行统一管理,比如查询搜索或者标签管理等。

    如下图所示:

    image-20210907110442737

    分组可以通过右键菜单自定义。

    image-20210907213824717

    更多功能

    快速笔记

    程序可以快速添加笔记,并以本地文件的方式实现笔记管理,

    添加这个功能的主要原因是已经受够了在线笔记软件(如印X笔记、为X笔记、有X云笔记等)越来越差的使用体验,以及越来越麻烦的数据垄断。

    笔记还是要掌握在用户自己手中!所以,这里的笔记坚决以本地文件的方式实现,完全自主可控。

    image-20210907105443565

    可以通过设置,选择笔记类型为 docx、md、rtf、txt等。

    image-20210907214121596

    新建笔记之后将首先输入名称,然后立刻自动打开笔记。

    安装教程

    请访问「发行版」页面,下载最新版本并解压缩,运行其中的「标签文库.exe」文件即可。

    image-20210818124551314

    版本升级:

    目前还没有制作专门的安装包,所以将最新版压缩包下载后,解压缩,直接覆盖旧版文件夹即可。

    感谢

    感谢以下朋友的技术支持

    GoogleLLP Xiangrui Zong

    更新记录

    2025年

    v0.28.1.1 2025年2月18日

    fixed: 修正了无配置文件启动时(全新启动),因列表溢出导致无法启动的bug。

    2024年

    v0.28.1.0 2024年5月14日

    左侧文件夹可以设置为常开模式了; 优化配置文件的显示格式。

    v0.28.0.0 2024年5月10日

    增加了通过配置文件调整界面尺寸的功能。

    v0.27.4.0 2024年3月23日

    空格预览功能优化,增加了对md和txt的内容预览,并增加了纵向滚动功能。

    v0.27.3.1 2024年1月3日

    新增:在文件树区域,对分组增加了右键菜单。 修正:修正了一个陈年老bug。

    v0.27.3.0 2024年1月2日

    增加README区域的纵向滚动条。

    2023年

    v0.27.2.2 2023年12月29日

    微调UI。

    v0.27.2.1 2023年12月27日

    为打开当前文件夹之类的操作添加了补充说明;增加新增文件夹时选择分组的功能。

    v0.27.2.0 2023年12月26日

    增加了文件只读的读取和显示功能。顺便修复了一个只读文件不能添加标签的bug。

    v0.27.1.2 2023年12月26日

    修复:修正了左侧文件夹层级错误的bug。

    v0.27.1.1 2023年12月23日

    调整UI,使文件夹搜索功能上线之后的界面布局更协调。

    v0.27.1.0 2023年12月22日

    增加了文件夹搜索目标高亮的功能,而且搜索到的文件夹保持其全部子文件夹,从而提高使用体验。

    v0.27.0.1 2023年12月21日

    初步实现了文件夹搜索功能,稍微调整了布局。 修正了搜索文件夹大小写的bug。

    v0.27.0.0 2023年12月21日

    初步实现了文件夹搜索功能。

    v0.26.2.2 2023年12月21日

    将文件操作从原始代码中独立出来,便于后续升级。 修正了只读权限导致的重命名和移动失败的问题。

    v0.26.2.1 2023年11月30日

    修复了文件夹列表刷新的时候,滚动到纵向位置的错误。 定位了一个之前报错的地方,但bug尚未消除。

    v0.26.2.0 2023年10月29日

    初步实现了常开文件夹的功能,方便设置inbox等特殊文件夹。

    v0.26.1.3 2023年10月25日

    注释区增加对大写”README.md”的支持,以便支持github等常见平台的说明文件。

    v0.26.1.2 2023年10月17日

    为readme增加快捷键 ctrl+R,并优化了高度,按比例显示。

    v0.26.1.1 2023年10月11日

    优化readme区域的外观、修正滚动条宽度控制逻辑。

    v0.26.1.0 2023年10月11日

    增加功能:为readme功能增加了快捷按钮。

    v0.26.0.0 2023年10月11日

    增加功能:可以解析当前文件夹内的readme.md文件,并作为文件夹备注显示在列表下面。

    v0.25.1.9 2023年10月6日

    增加功能:可以在左侧文件夹列表自动忽略点开头的文件夹。这个功能以后可以作为设置项。

    v0.25.1.8 2023年9月27日

    修正了空格唤起的文件预览框缩放不正确的问题。 将图标等素材统一移动到 resources 文件夹下。

    (近期正在调整软件架构)

    v0.25.1.7 2023年7月25日

    将左侧列表的缩进设置为40,提高区分度。之后考虑做成自适应或者可调节的。

    v0.25.1.6 2023年1月24日

    补充了弹窗对高分屏的适配。

    v0.25.1.5 2023年1月22日

    增加了对1080p以上分辨率的缩放适配.

    2022年

    v0.25.1.4 2022年10月15日

    fixed: 修复了点击分组(0级目录)的时候,不能查看分组文件的bug(#I5VX6P)。 优化文件夹取消关注的表达。

    v0.25.1.3 2022年10月13日

    优化了点击左侧文件夹的时候,增加了对当前文件夹的刷新的逻辑。 之前启动的时候,文件夹是完整加载,效率太低。现在优化为只加载一层子文件夹,加载速度显著提升。

    v0.25.1.2 2022年8月15日

    增加标签页拖拽为剪切移动的功能;调整标签为左对齐。

    v0.25.1.1 2022年7月20日

    优化询问拖拽是否保留原始文件的表达。

    v0.25.1.0 2022年7月5日

    外部文件拖拽进入主窗口时,可以通过对话框设定是否保留原始文件。

    v0.25.0.1 2022年5月22日

    修复了文件夹区域左键单击时,当前对象没有正常高亮的bug。

    v0.25.0.0 2022年5月22日

    左侧文件夹列表优化,现在右键操作可直接作用于鼠标选中对象,而不是只能操作打开的文件夹。

    v0.24.0.0 2022年5月5日

    调整UI显示,将标签、日期、大小都放在右侧。

    v0.23.1.2 2022年4月30日

    修复了文件夹名称存在包含关系时,较长文件夹的内部文件会出现在较短文件夹内部的bug。

    v0.23.1.1 2022年3月9日

    修复了点击列表空白处的bug。

    v0.23.1.0 2022年3月8日

    实现了隐藏空分组的功能。 已知bug:按住Ctrl的时候,点击分组内的项目,不能选中。

    v0.23.0.3 2022年3月7日

    尝试修复了tree定位高亮项目的错误。

    v0.23.0.2 2022年3月5日

    尝试修复输入框与中文输入法之间的兼容性问题。

    v0.23.0.1 2022年3月5日

    实现了按照子文件夹分组显示的功能, 修复了文件夹分组的背景色问题; 已知bug:tree定位到高亮内容存在错误。

    v0.23.0.0 2022年3月3日

    增加tree分组显示,可以将子文件夹的内容在第二组显示出来, 相关的功能还没有全部测试。 已知bug:tree定位到高亮内容存在错误。 tree列表的背景色有错误; 如果能显示文件夹名称就更好了。

    v0.22.1.0 2022年1月12日

    增加.git文件夹的忽略; 将默认配置文件配置设定在上级目录。

    v0.22.0.4 2022年1月12日

    优化了新建笔记时候的扩展名提示。

    v0.22.0.3 2022年1月3日

    对部分函数进行了重命名,逻辑没有改。

    2021年12月

    v0.22.0.2 2021年12月25日

    文件重命名默认不再修改扩展名,避免重命名导致的其他问题。 圣诞快乐!

    v0.22.0.1 2021年12月21日

    优化文件夹排序,实现英文首字母混排,且忽略标签分隔符。 精简部分菜单项。

    v0.22.0.0 2021年12月19日

    优化了标签区域的鼠标效果; 为子窗口增加后台自动关闭的功能,修复了在后台会锁住程序的bug。

    v0.21.4.6 2021年12月19日

    修复了短时间快速点击可能导致多次打开文件的bug。

    v0.21.4.5 2021年12月19日

    将文件夹区域右键的添加关注文件夹功能调整到菜单中。

    v0.21.4.4 2021年12月2日

    优化代码,将标签的排除类型调整到变量中。

    v0.21.4.3 2021年12月2日

    隐藏了标签下拉框。

    2021年11月

    v0.21.4.2 2021年11月28日

    尝试修复Typora以覆盖方式更新md文件导致丢失标签的bug。

    v0.21.4.1 2021年11月26日

    优化UI布局和颜色。

    v0.21.4.0 2021年11月26日

    增加标签列表,提高标签应用性能,进入测试阶段。

    v0.21.3.1 2021年11月17日

    优化体验,当左键单击列表空白的时候,会自动取消选中。

    2021年10月

    v0.21.3.0 2021年10月30日

    增加对markdown移动的优化,相对路径附件可以在移动的时候自动复制了, 这样移动后的md文件仍然可以正常访问图片等附件。

    v0.21.2.0 2021年10月21日

    右键新建笔记的时候,可以更方便地选择笔记类型了。

    v0.21.1.2 2021年10月6日

    修复了在非NTFS磁盘上的兼容性bug。 文件夹区域也增加了鼠标指向效果。 修改自建模块位置。

    v0.21.1.1 2021年10月4日

    储备:优化标签类封装逻辑,关闭文件前一直占用文件。 储备:新增常用工具函数,直接对标签进行增加、删除、清空、查询。 储备:新增依赖说明requirements.txt。

    v0.21.1.0 2021年10月4日

    为文件列表的鼠标指向增加了高亮效果。

    v0.21.0.0 2021年10月3日

    优化标签逻辑,采用NTFS流模式,不再影响文件名(测试版)。 优化右键响应,现在可以正确在被点击的项目处出现右键菜单了。

    2021年9月

    v0.20.3.7 2021年9月18日

    优化了分组的颜色,调整为浅蓝色;调整菜单按钮颜色为浅蓝色。

    v0.20.3.6 2021年9月15日

    修复新建笔记时错误影响存储的笔记类型的bug。

    v0.20.3.5 2021年9月13日

    开放“打开文件夹并选中文件”的功能。

    v0.20.3.4 2021年9月12日

    增加只筛选笔记的功能;增加部分快捷键;增加窗口最小尺寸限制。

    v0.20.3.3 2021年9月10日

    增加空格查看文件信息的功能;增加Insert键快速插入txt笔记的功能。

    v0.20.3.2 2021年9月9日

    修复:复制粘贴快捷键在输入弹窗中与输入框冲突的问题。

    v0.20.3.1 2021年9月9日

    优化界面布局和间距,调整按钮等。

    v0.20.3.0 2021年9月6日

    优化界面。

    v0.20.2.0 2021年9月6日

    文件列表增加常用的小图标。

    v0.20.1.1 2021年9月6日

    修复文件夹重复添加的bug,增加快速添加子目录到关注列表的功能。

    v0.20.1.0 2021年9月6日

    全面优化界面UI和配色。

    v0.20.0.0 2021年9月6日

    重大更新: 美化UI,增加主题配色。

    v0.19.1.0 2021年9月6日

    允许拖拽文件夹到主窗口;修复文件夹列表可能被多选的bug。

    v0.19.0.5 2021年9月5日

    代码拆分成多个文件,首先拆分进度条和弹窗类。

    v0.19.0.4 2021年9月5日

    修复初始化时定位文件夹错误的bug。

    v0.19.0.3 2021年9月5日

    修复文件夹刷新后的定位异常。

    v0.19.0.2 2021年9月4日

    修复文件拖拽到分组的异常。

    v0.19.0.1 2021年9月4日

    优化文件夹分组,增加置顶分组功能。

    v0.19.0.0 2021年9月4日

    重大更新: 实现文件夹分组等功能; 文件夹按照名称排序; 移除文件夹顺序自定义功能。

    v0.18.6.3 2021年9月4日

    优化剪切逻辑,统一部分函数命名规则。

    v0.18.6.2 2021年9月3日

    子文件夹删除或移动时,取消文件的粘贴功能。

    v0.18.6.1 2021年9月3日

    增加子文件夹删除的功能。

    v0.18.6.0 2021年9月3日

    增加子文件夹移动的功能;增加检查更新的功能。

    v0.18.5.0 2021年9月3日

    将删除修改为删除到回收站。

    v0.18.4.1 2021年9月2日

    实现了文件的复制剪切功能。

    v0.18.4.0 2021年9月2日

    刷新文件夹列表时,选中项保留在之前位置附近; 增加重命名文件夹功能。

    v0.18.3.4 2021年9月1日

    调整表格的列宽度。

    2021年8月

    v0.18.3.3 2021年8月25日

    将删除修改为隐藏。

    v0.18.3.2 2021年8月23日

    增加「新建子文件夹」功能。

    v0.18.3.1 2021年8月23日

    强化「拿起」之后的视觉效果。

    v0.18.3.0 2021年8月23日

    增加「拿起放下」功能,算是程序内的剪切粘贴。

    v0.18.2.0 2021年8月23日

    增加只看当前文件夹的功能。

    v0.18.1.2 2021年8月22日

    添加点击文件夹时,同级文件夹自动折叠的效果。

    v0.18.1.1 2021年8月21日

    文件夹设置为随点随开,并优化了文件夹排序时的定位效果。

    v0.18.1.0 2021年8月21日

    增加0级、1级、2级文件夹在点击时自动展开/折叠的功能。

    v0.18.0.0 2021年8月21日

    将左侧文件夹列表调整为树结构。取消子文件夹模式。

    v0.17.0.3 2021年8月17日

    修复点击全部文件夹之后,再点击第一个文件夹会导致看不到子文件夹的bug。

    v0.17.0.2 2021年8月17日

    将功能绑定拆分到类的独立函数,进一步解耦;稍微优化设置窗口的界面布局。

    v0.17.0.1 2021年8月17日

    修复了新建笔记的默认名称可能会保留上一个笔记名称的bug。

    v0.17.0.0 2021年8月16日

    以独立class的方式重构主页面架构【重要更新】。

    v0.16.1.1 2021年8月15日

    更新了关于页面的二维码。

    v0.16.1.0 2021年8月13日

    设置项增加对最后目录的解析设置、对标签的解析设置。

    v0.16.0.1 2021年8月13日

    优化最后一级目录作为标签对空格的解析。

    v0.16.0.0 2021年8月12日

    启动时增加后台进程,显著提高数据加载速度。

    v0.15.2.5 2021年8月12日

    优化部分UI显示。

    v0.15.2.4 2021年8月12日

    优化部分UI显示,增加框架底纹。

    v0.15.2.3 2021年8月11日

    优化部分界面显示。

    v0.15.2.2 2021年8月9日

    修复单击相同的主文件夹会导致子文件夹消失的bug。

    v0.15.2.1 2021年8月9日

    优化排序逻辑,现在大小写放在一起排序。

    v0.15.2.0 2021年8月9日

    将窗口模式的添加到设置项中。

    v0.15.1.2 2021年8月8日

    修复子文件夹重命名和新建的bug。

    v0.15.1.1 2021年8月7日

    修复子文件夹模式的标签刷新逻辑bug。

    v0.15.1.0 2021年8月7日

    采用字典查询,显著增加列表加载速度。

    v0.15.0.4 2021年8月6日

    增加对文件创建时间的解析,但是还没开放。

    v0.15.0.3 2021年8月3日

    增加标签「强筛选」和「弱筛选」的功能。默认是弱筛选。

    v0.15.0.2 2021年8月3日

    增加文件夹列表“置顶”的功能。

    v0.15.0.1 2021年8月2日

    标签区域排序优化,现在无论大小写英文都可以在一起排序了。

    v0.15.0.0 2021年8月1日

    实现左下角列表区域为标签功能的调试,好像可以正常使用。进入测试阶段。

    2021年7月

    v0.14.3.1 2021年7月31日

    增加文件列表区拖拽进来的自动添加当前选中标签的功能,为标签化管理做好准备。

    v0.14.3.0 2021年7月31日

    增加将最后的子文件夹也作为标签的功能。

    v0.14.2.6 2021年7月31日

    子文件夹区域新增「新建文件夹」和「重命名文件夹」功能。

    v0.14.2.5 2021年7月30日

    将搜索项目分类处理,并将关键词搜索限制在文件名和标签范围内;增加文件夹列表对键盘上下键的响应。 已知bug:快速按上下键会导致进度条不消失。所以现在增加了点击进度条使其强行消失的功能。

    v0.14.2.4 2021年7月28日

    文件区右键菜单将不可执行的功能也显示出来并标记为灰色。

    v0.14.2.3 2021年7月28日

    增加对多文件拖拽添加的视觉支持;多个关键词的搜索逻辑现在是“and”关系。

    v0.14.2.2 2021年7月27日

    增加对多文件同时删除公共标签。

    v0.14.2.1 2021年7月27日

    增加对多文件同时操作的支持,而且可以快速选中多个处理结果。

    v0.14.2.0 2021年7月27日

    增加对多文件同时操作的支持,目前支持同时打开、同时增加标签,但是加标签的选中体验还不好。

    v0.14.1.4 2021年7月27日

    增加 Ctrl+F 出现弹窗快捷搜索的功能;调整弹窗位置为窗口中央而不是屏幕中央。

    v0.14.1.3 2021年7月24日

    增加按F5刷新的快捷键。

    v0.14.1.2 2021年7月24日

    修复了文件夹为空时刷新会导致卡死的bug。

    v0.14.1.1 2021年7月23日

    优化字体和字号显示;简化笔记标签显示方式。

    v0.14.1.0 2021年7月22日

    增加了文件夹拖动进来是移动还是复制的设置;优化设置文件的架构。

    v0.14.0.5 2021年7月22日

    按照规则优化了代码里面函数的名称,对功能没有变化。

    v0.14.0.4 2021年7月19日

    增加子文件夹区域快速添加关注的功能。

    v0.14.0.3 2021年7月19日

    增加子文件夹区域的右键菜单。

    v0.14.0.2 2021年7月18日

    修复进度条显示错误。

    v0.14.0.1 2021年7月18日

    切换文件夹时不再保留标签搜索项。

    v0.14.0.0 2021年7月17日

    将子文件夹独立为左侧列表。

    v0.13.1.0 2021年7月16日

    去掉文件夹区域下面的按钮框架。

    v0.13.0.5 2021年7月16日

    修复设置项修改后不能立刻刷新的bug;修复输入框二次刷新的bug;优化部分菜单。

    v0.13.0.4 2021年7月15日

    修复分辨率和缩放不兼容导致的启动失败问题。

    v0.13.0.3 2021年7月14日

    修复致命bug。

    v0.13.0.2 2021年7月13日

    修正了一处错别字。

    v0.13.0.1 2021年7月12日

    多进程性能太差,所以修改为多线程逻辑。

    v0.13.0.0 2021年7月10日

    加入多进程并发处理逻辑。

    v0.12.2.0 2021年7月10日

    优化代码架构。

    v0.12.1.0 2021年7月9日

    增加了文件大小数据。

    v0.12.0.2 2021年7月9日

    修复了输入框覆盖的错误。

    v0.12.0.1 2021年7月9日

    修复了提示文字的错误。

    v0.12.0.0 2021年7月9日

    增加了居中的进度条。

    v0.11.2.4 2021年7月8日

    Bug修复,性能优化。

    v0.11.2.3 2021年7月8日

    逻辑优化。

    v0.11.2.2 2021年7月8日

    修复子文件夹手动留空时候,标签列表错误的bug。

    v0.11.2.1 2021年7月8日

    优化弹窗代码逻辑;修复 ALL_FOLDERS=2 的时候取消关注文件夹的按钮失效的bug;

    v0.11.2.0 2021年7月8日

    增加列排序的可视化提示效果;优化标签的添加逻辑。

    v0.11.1.0 2021年7月8日

    优化了窗口的左上角图标。

    v0.11.0.0 2021年7月7日

    完成了自制的居中输入窗体,并优化了界面; 解决了分辨率导致的窗口位置偏移问题。

    v0.10.2.3 2021年7月7日

    修复了GBK不支持特殊空格,导致排序失败的问题。

    v0.10.2.2 2021年7月7日

    将设置窗口和关于窗口调整为模态。

    v0.10.2.1 2021年7月7日

    修复了切换文件夹的bug。

    v0.10.2.0 2021年7月7日

    实现文件列表上下移动的功能。

    v0.10.1.0 2021年7月7日

    实现文件列表的重命名和删除功能。

    v0.10.0.4 2021年7月7日

    修复了子文件夹内添加或删除标签的定位逻辑;优化通过菜单添加标签的交互。

    v0.10.0.3 2021年7月6日

    修复列表的中文排序;优化列表文件定位逻辑。

    v0.10.0.2 2021年7月6日

    修复列表文件定位错误的bug。

    v0.10.0.1 2021年7月6日

    优化设置弹窗显示。

    v0.10.0.0 2021年7月6日

    增加了子文件夹的筛选功能,进一步提高管理效率。

    v0.9.5.4 2021年7月5日

    增加设置菜单;调整分隔符的潜在兼容性错误。

    v0.9.5.3 2021年7月5日

    增加「关于」窗口功能。

    v0.9.5.2 2021年7月5日

    增加主菜单功能。

    v0.9.5.1 2021年7月5日

    增加拖拽文件直接复制到文件夹内的功能,便于处理微信文件或其他需要复制的业务。

    v0.9.5.0 2021年7月4日

    增加进度条显示;优化加载效率;优化排序加载算法,缩短排序时间。

    v0.9.4.1 2021年7月4日

    增加文件加载状态的提示,优化加载时间长期间的体验;

    增加开发和实际数据的区分。

    v0.9.4.0 2021年7月2日

    新增:

    • 增加了右键删除标签的功能;
    • 增加了右键快速添加标签的功能。

    优化:

    • 切换文件夹之后会将滚动条设置到最顶部。
    • 点击文件夹之后,如果并没有切换,就不执行文件夹内容刷新。

    v0.9.3.3 2021年7月1日

    修复了新建笔记定位错位的bug;增加文件列表中「在相同位置创建笔记」的功能。

    v0.9.3.2 2021年7月1日

    实现了对高分屏的适配,现在应该是默认就很清晰,不需要手动设置了。

    2021年6月

    v0.9.3.1 2021年6月30日

    更新LOGO;

    增加了切换文件夹之后是否清除筛选的变量;

    完善了是否保留所有文件夹这个功能;

    修复bug

    v0.9.3 2021年6月30日

    增加列表文件的高亮,包括添加标签后定位到相应位置、新建文件后定位到相应位置等。

    v0.9.2 2021年6月29日

    修复了可能导致空白文件夹的bug。

    v0.9.0 2021年6月29日

    实现了点击列标排序的功能。

    v0.8.9 2021年6月29日

    增加了右键菜单,实现跳转到文件夹等功能。

    调整py文件名。

    虽然重命名已完成,但不能输入特殊符号,所以暂不开放。

    v0.8.2 2021年6月29日

    升级了搜索功能,标签是直接选择,文字是直接输入,而且支持空格拆分多个输入文本片段。

    调整UI,将新增标签输入框放在下面,更符合逻辑。

    新增标签可以直接选择已有的标签。

    默认以最大化方式启动。

    增加对word缓存文档的屏蔽。

    修复了一个启动时候不能刷新的bug。

    v0.8.0 2021年6月27日

    关注的文件夹列表终于完成了自定义!现在可以通过下面的增删按钮调整关注的文件夹列表,甚至可以直接鼠标拖动文件夹到文件夹列表区域,程序会自动识别并添加文件夹。

    在没有设置项的时候,程序会自动创建初始化的设置文件。

    优化内部逻辑,修复文件夹和文件夹简称可能重复的漏洞。

    v0.7.0 2021年6月26日

    更名为 Tagdox / 标签文库;

    更新icon;

    调整架构,将文件夹列表调整到左侧作为独立区间,并为以后增加子文件夹做准备;

    列表增加序号列。

    v0.6.4 2021年6月24日

    优化文件夹路径简写功能,做到了 json 里面,更加规范,并且兼容了不带简写的写法。

    列表按回车也能打开文件,而不仅仅是双击。

    v0.6.3 2021年6月22日

    为文件夹筛选增加了路径简写功能,简化下拉列表的显示效果,功能已经实现,但是还不够优雅。

    准备做到 json 里面提供自定义功能。

    而且现在这种方式存在最后文件夹名称重复的 bug ,也需要处理好。

    v0.6.2 2021年6月22日

    增加按文件夹筛选的功能。优化UI布局。

    v0.6.1 2021年6月22日

    增加排除文件夹的功能,目前包括以下规则:

    • 路径中存在”.”开头的文件夹
    • 内容包括”_nomedia“文件
    • 指定的排除文件夹名称(尚未实现自定义,以后实现)

    v0.6.0 2021年6月21日

    实现界面自适应调整尺寸,并增加横向滚动条功能。

    优化UI。

    v0.5.2 2021年6月20日

    支持对最末2层文件夹名称进行解析,如果文件夹名称包括#号也可以解析为标签(层数默认2层、分隔号默认#号,都可以自定义)。

    微调UI。

    v0.5.1 2021年6月20日

    将分隔符(原来的#号)独立出来,设置为可以调整的符号。

    在data.json里面可以设置。

    v0.5.0 2021年6月19日

    实现添加标签、自由搜索、结果计数的功能。

    v0.4.0 2021年6月18日

    实现按照中文音序排序标签。

    将检索目录的设定方案调整到外接 json 文件中,实现程序外自定义。

    优化UI、优化程序架构。

    (中间开发版未记录)

    v0.1.0 2021年6月17日

    实现文件检索、标签拆分等基础功能。

    Visit original content creator repository https://github.com/HorseSword/tagdox
  • Jovian_archive

    Jovian
    A user-friendly Viromics toolkit

    Github release licence Snakemake Version

    For Citations, please use the following DOI:
    Zenodo DOI

    See the documentation:
    Jovian Docs
    Or view an example notebook:
    Launch an example notebook

    IMPORTANT: manuscript is in preparation


    Table of contents


    About Jovian

    Jovian is a Public Health toolkit to automatically process raw NGS data from human clinical matrices (faeces, serum, etc.) into clinically relevant information. It has three main components:

    • Illumina based Metagenomics:
      Includes (amongst other features) data quality control, assembly, taxonomic classification, viral typing, and minority variant identification (quasispecies).
      📝 Please refer to the documentation page for the Illumina Metagenomics workflow for more information.

    • Illumina based Reference-alignment:
      Includes (amongst other features) data quality control, alignment, SNP identification, and consensus-sequence generation.
      ❗ A reference fasta is required.
      📝 Please refer to the documentation page for the Illumina Reference based workflow for more information.

    • Nanopore based Reference-alignment:
      Includes (amongst other features) data quality control, alignment, SNP identification, and consensus-sequence generation.
      ❗ A reference fasta is required.
      ❗ A fasta with primer sequences is required.
      📝 Please refer to the documentation page for the Nanopore Reference based workflow for more information.

    Key features of Jovian:

    • User-friendliness:
      Wetlab personnel can start, configure and interpret results via an interactive web-report. Click here for an example report.
      This makes doing Public Health analyses much more accessible and user-friendly since minimal command-line skills are required.

    • Audit trail:
      All pipeline parameters, software versions, database information and runtime statistics are logged. See details below.

    • Portable:
      Jovian is easily installed on off-site computer systems and at back-up sister institutes. Allowing results to be generated even when the internal grid-computer is down (speaking from experience).




    Commands

    📝 Please see the full Command Line Reference on the documentation site for a more detailed explanation of each command, including example commands for starting an analysis or common usage examples.

    Here, we have a short list of commands and use cases that are used very frequently.

    Use case 1:
    Metagenomic analylsis based on Illumina data:

    bash jovian illumina-metagenomics -i <INPUT DIRECTORY>
    

    Use case 2:
    Align Illumina data against a user-provided reference to generate a consensus genome:

    bash jovian illumina-reference -i <INPUT DIRECTORY> -ref <REFERENCE FASTA>
    

    Use case 3:
    Align Nanopore (multiplex) PCR data against a user-provided reference, remove overrepresented primer sequences, and generate a consensus genome:

    bash jovian nanopore-reference -i <INPUT DIRECTORY> -ref <REFERENCE FASTA> -pr <PRIMER FASTA>
    

    use bash jovian -h to see a full list of commands applicable to the Jovian version that you’re using.


    Features

    📝 Please refer to our documentation for the full list of features

    General features

    • Data quality control and cleaning.
      • Including library fragment length analysis, useful for sample preparation QC.
    • Removal of human* data (patient privacy). *You can use whichever reference you would like. However, Jovian is intended for human clinical samples.
    • Removal of PCR-duplicates for Illumina data.

    Metagenomics specific features

    • Assembly of short reads into bigger scaffolds (often full viral genomes).
    • Taxonomic classification:
      • Every nucleic acid containing biological entity (i.e. not only viruses) is determined up to species level.
      • Lowest Common Ancestor (LCA) analysis is performed to move ambiguous results up to their last common ancestor, which makes results more robust.
    • Viral typing:
      • Several viral families and genera can be taxonomically labelled at the sub-species level as described here.
    • Viral scaffolds are cross-referenced against the Virus-Host interaction database and NCBI host database.
    • Scaffolds are annotated in detail:
      • Depth of coverage.
      • GC content.
      • Open reading frames (ORFs) are predicted.
      • Minority variants (quasispecies) are identified.
    • Importantly, results of all processes listed above are presented via an interactive web-report including an audit trail.

    Reference-alignment specific features

    • All cleaned reads are aligned against the user-provided reference fasta.
    • In the case of Nanopore (multiplex) PCR data, the overrepresented primer sequences are removed.
    • SNPs are called and a consensus genome is generated.
    • Consensus genomes are filtered at the following coverage cut-off thresholds: 1, 5, 10, 30 and 100x.
    • A tabular overview of the breadth of coverage (BoC) at the different coverage cut-off thresholds is generated.
    • Alignments and visualized via IGVjs and allow manual assessment and validation of consensus genomes.

    Visualizations

    All data are visualized via an interactive web-report, as shown here, which includes:

    • A collation of interactive QC graphs via MultiQC.
    • Taxonomic results are presented on three levels:
      • For an entire (multi sample) run, interactive heatmaps are made for non-phage viruses, phages and bacteria. They are stratified to different taxonomic levels.
      • For a sample level overview, Krona interactive taxonomic piecharts are generated.
      • For more detailed analyses, interactive tables are included. Similar to popular spreadsheet applications (e.g. Microsoft Excel).
        • Classified scaffolds
        • Unclassified scaffolds (i.e. “Dark Matter”)
    • Virus typing results are presented via interactive spreadsheet-like tables.
    • An interactive scaffold alignment viewer (IGVjs) is included, containing:
      • Detailed alignment information.
      • Depth of coverage graph.
      • GC content graph.
      • Predicted open reading frames (ORFs).
      • Identified minority variants (quasispecies).
    • All SNP metrics are presented via interactive spreadsheet-like tables, allowing detailed analysis.

    Virus typing

    After a Jovian analysis is finished you can perform virus-typing (i.e. sub-species level taxonomic labelling). These analyses can be started by the command bash jovian -vt [virus keyword], where [virus keyword] can be:

    Keyword Taxon used for scaffold selection Notable virus species
    NoV Caliciviridae Norovirus GI and GII, Sapovirus
    EV Picornaviridae Enteroviruses (Coxsackie, Polio, Rhino, etc.), Parecho, Aichi, Hepatitis A
    RVA Rotavirus A Rotavirus A
    HAV Hepatovirus A Hepatitis A
    HEV Orthohepevirus A Hepatitis E
    PV Papillomaviridae Human Papillomavirus
    Flavi Flaviviridae Dengue (work in progress)
    all All of the above All of the above

    Audit trail

    An audit trail, used for clinical reproducibility and logging, is generated and contains:

    • A unique methodological fingerprint: allowing to exactly reproduce the analysis, even retrospectively by reverting to old versions of the pipeline code.
    • The following information is also logged:
      • Database timestamps
      • (user-specified) Pipeline parameters

    However, it has limitations since several things are out-of-scope for Jovian to control:

    • The virus typing-tools version
      • Currently we depend on a public web-tool hosted by the RIVM. These are developed in close collaboration with – but independently of – Jovian. A versioning system for the virus typing-tools is being worked on, however, this is not trivial and will take some time.
    • Input files and metadata
      • We only save the names and location of input files at the time the analysis was performed. Long-term storage of the data, and documenting their location over time, is the responsibility of the end-user. Likewise, the end-user is responsible for storing datasets with their correct metadata (e.g. clinical information, database versions, etc.). We recommend using iRODS for this as described by Nieroda et al. 2019. While we acknowledge that database versions are vital to replicate results, the databases Jovian uses have no official versioning, hence why we include timestamps only.

    Jovian Illumina Metagenomics workflow visualization Click the image for a full-sized version Jovian Illumina Metagenomics workflow

    Jovian Illumina Reference alignment workflow visualization Click the image for a full-sized version Jovian Illumina Reference workflow

    Jovian Nanopore Reference alignment workflow visualization Click the image for a full-sized version Jovian Nanopore reference workflow

    Requirements

    📝 Please refer to our documentation for a detailed overview of the Jovian requirements here


    Installation

    📝 Please refer to our documentation for detailed instructions regarding the installation of Jovian here

    Usage instructions

    General usage instructions vary for each workflow that we support.
    Please refer to the link below corresponding to the workflow that you wish to use


    FAQ

    Can be found here.


    Example Jovian report

    Can be found here.


    Acknowledgements

    Name Publication Website
    BBtools NA https://jgi.doe.gov/data-and-tools/bbtools/
    BEDtools Quinlan, A.R. and I.M.J.B. Hall, BEDTools: a flexible suite of utilities for comparing genomic features. 2010. 26(6): p. 841-842. https://bedtools.readthedocs.io/en/latest/
    BLAST Altschul, S.F., et al., Gapped BLAST and PSI-BLAST: a new generation of protein database search programs. 1997. 25(17): p. 3389-3402. https://www.ncbi.nlm.nih.gov/books/NBK279690/
    BWA Li, H. (2013). Aligning sequence reads, clone sequences and assembly contigs with BWA-MEM. arXiv preprint arXiv:1303.3997. https://github.com/lh3/bwa
    BioConda Grüning, B., et al., Bioconda: sustainable and comprehensive software distribution for the life sciences. 2018. 15(7): p. 475. https://bioconda.github.io/
    Biopython Cock, P. J., Antao, T., Chang, J. T., Chapman, B. A., Cox, C. J., Dalke, A., … & De Hoon, M. J. (2009). Biopython: freely available Python tools for computational molecular biology and bioinformatics. Bioinformatics, 25(11), 1422-1423. https://biopython.org/
    Bokeh Bokeh Development Team (2018). Bokeh: Python library for interactive visualization. https://bokeh.pydata.org/en/latest/
    Bowtie2 Langmead, B. and S.L.J.N.m. Salzberg, Fast gapped-read alignment with Bowtie 2. 2012. 9(4): p. 357. http://bowtie-bio.sourceforge.net/bowtie2/index.shtml
    Conda NA https://conda.io/
    DRMAA NA http://drmaa-python.github.io/
    FastQC Andrews, S., FastQC: a quality control tool for high throughput sequence data. 2010. https://www.bioinformatics.babraham.ac.uk/projects/fastqc/
    gawk NA https://www.gnu.org/software/gawk/
    GNU Parallel O. Tange (2018): GNU Parallel 2018, March 2018, https://doi.org/10.5281/zenodo.1146014. https://www.gnu.org/software/parallel/
    Git NA https://git-scm.com/
    igvtools NA https://software.broadinstitute.org/software/igv/igvtools
    Jupyter Notebook Kluyver, Thomas, et al. “Jupyter Notebooks-a publishing format for reproducible computational workflows.” ELPUB. 2016. https://jupyter.org/
    Jupyter_contrib_nbextension NA https://github.com/ipython-contrib/jupyter_contrib_nbextensions
    Jupyterthemes NA https://github.com/dunovank/jupyter-themes
    Krona Ondov, B.D., N.H. Bergman, and A.M. Phillippy, Interactive metagenomic visualization in a Web browser. BMC Bioinformatics, 2011. 12: p. 385. https://github.com/marbl/Krona/wiki
    Lofreq Wilm, A., et al., LoFreq: a sequence-quality aware, ultra-sensitive variant caller for uncovering cell-population heterogeneity from high-throughput sequencing datasets. 2012. 40(22): p. 11189-11201. http://csb5.github.io/lofreq/
    MGkit Rubino, F. and Creevey, C.J. 2014. MGkit: Metagenomic Framework For The Study Of Microbial Communities. . Available at: figshare [doi:10.6084/m9.figshare.1269288]. https://bitbucket.org/setsuna80/mgkit/src/develop/
    Minimap2 Li, H., Minimap2: pairwise alignment for nucleotide sequences. Bioinformatics, 2018. https://github.com/lh3/minimap2
    MultiQC Ewels, P., et al., MultiQC: summarize analysis results for multiple tools and samples in a single report. 2016. 32(19): p. 3047-3048. https://multiqc.info/
    Nb_conda NA https://github.com/Anaconda-Platform/nb_conda
    Nb_conda_kernels NA https://github.com/Anaconda-Platform/nb_conda_kernels
    Nginx NA https://www.nginx.com/
    Numpy Walt, S. V. D., Colbert, S. C., & Varoquaux, G. (2011). The NumPy array: a structure for efficient numerical computation. Computing in Science & Engineering, 13(2), 22-30. http://www.numpy.org/
    Pandas McKinney, W. Data structures for statistical computing in python. in Proceedings of the 9th Python in Science Conference. 2010. Austin, TX. https://pandas.pydata.org/
    Picard NA https://broadinstitute.github.io/picard/
    Prodigal Hyatt, D., et al., Prodigal: prokaryotic gene recognition and translation initiation site identification. 2010. 11(1): p. 119. https://github.com/hyattpd/Prodigal/wiki/Introduction
    Python G. van Rossum, Python tutorial, Technical Report CS-R9526, Centrum voor Wiskunde en Informatica (CWI), Amsterdam, May 1995. https://www.python.org/
    Qgrid NA https://github.com/quantopian/qgrid
    SAMtools Li, H., et al., The sequence alignment/map format and SAMtools. 2009. 25(16): p. 2078-2079. http://www.htslib.org/
    SPAdes Nurk, S., et al., metaSPAdes: a new versatile metagenomic assembler. Genome Res, 2017. 27(5): p. 824-834. http://cab.spbu.ru/software/spades/
    seqkit Shen, Wei, et al. “SeqKit: a cross-platform and ultrafast toolkit for FASTA/Q file manipulation.” PloS one 11.10 (2016). https://github.com/shenwei356/seqkit
    Seqtk NA https://github.com/lh3/seqtk
    Snakemake Köster, J. and S.J.B. Rahmann, Snakemake—a scalable bioinformatics workflow engine. 2012. 28(19): p. 2520-2522. https://snakemake.readthedocs.io/en/stable/
    Tabix NA www.htslib.org/doc/tabix.html
    tree NA http://mama.indstate.edu/users/ice/tree/
    Trimmomatic Bolger, A.M., M. Lohse, and B. Usadel, Trimmomatic: a flexible trimmer for Illumina sequence data. Bioinformatics, 2014. 30(15): p. 2114-20. www.usadellab.org/cms/?page=trimmomatic
    Virus-Host Database Mihara, T., Nishimura, Y., Shimizu, Y., Nishiyama, H., Yoshikawa, G., Uehara, H., … & Ogata, H. (2016). Linking virus genomes with host taxonomy. Viruses, 8(3), 66. http://www.genome.jp/virushostdb/note.html
    Virus typing tools Kroneman, A., Vennema, H., Deforche, K., Avoort, H. V. D., Penaranda, S., Oberste, M. S., … & Koopmans, M. (2011). An automated genotyping tool for enteroviruses and noroviruses. Journal of Clinical Virology, 51(2), 121-125. https://www.ncbi.nlm.nih.gov/pubmed/21514213

    Authors

    • Dennis Schmitz (RIVM and EMC)
    • Sam Nooij (RIVM and EMC)
    • Robert Verhagen (RIVM)
    • Thierry Janssens (RIVM)
    • Jeroen Cremer (RIVM)
    • Florian Zwagemaker (RIVM)
    • Mark Kroon (RIVM)
    • Erwin van Wieringen (RIVM)
    • Harry Vennema (RIVM)
    • Annelies Kroneman (RIVM)
    • Marion Koopmans (EMC)

    This project/research has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 643476. and the Dutch working group on molecular diagnostics (WMDI).


    Visit original content creator repository https://github.com/DennisSchmitz/Jovian_archive
  • capstone-java-part

    Credit Card Transactions Management System

    Java Module for Per Scholas’ Data Engineering Training Course Final Project

    The Java module of the capstone case study project for the Data Engineering course at Platform by Per Scholas. It is a program to access and update the information on a database containing credit card transactions and customer information.

    The program provides an interface to see transaction details in three different scenarios: A list of transactions at a given zipcode(during a given month and year), the total sales amount of transactions of a given type, and the total sales amount of transactions in a given US state. The interface also allows to see customer information in three different scenarios and also to update a given customer’s information.

    Installing and running the program

    To run the code a MySQL database with the necessary schema must first be running. The schema and some sample data can be found in the db.sql file included in the repository; please use this file to install the schema on MySQL. The login information for this database must be entered in the “DataBaseConfig.ini” file found inside the java project folder.

    To execute the main program, please run the “Main” class inside the “presentationLayer” package/directory. This class displays two choices on the console, one choice for each of the program modules. To access the customer module with all the customer details and to update customer information, press 1. To access the transaction module, press two. Either choice will bring you to a screen with more choices.

    The customer module gives you four choices with the first choice allowing you to see customer details. The second choice allows to update customer details. The third choice prepares a bill for a customer on a given month and year. The final choice shows all the transactions by a given customer between two given dates, it first prompts for a day, then a month then a year for the first date and then again for the second date. All four choices will ask for a customer’s social security number and credit card number (this information can be found on the database).

    The first choice of the transaction module asks for a zipcode, then a month and then a year. The second choice first gives a list of all available transaction types in the database and then asks to choose one. The third choice asks to input a valid US state.

    Running any of the modules will save a CSV file with the output information. This CSV file will be saved inside the corresponding directory inside the “Output” directory.

    Valid inputs:

    Zipcode numbers are 5-digit-long integers (e.g. 12345).
    US state names are the two-letter abbreviation (e.g. NY for New York) or the whole state name (e.g. New York).
    Month names are either the whole month name (e.g. January), the 3-letter abbreviation (e.g. Jan), or the month number (e.g. 1 or 01 for January).
    A valid year is a 4-digit long integer. Two-digit long numbers are assumed to be in the 2000’s (i.e., 15 is in 2015).
    All inputs are case insensitive.

    Visit original content creator repository
    https://github.com/arisdavid13579/capstone-java-part

  • tenancy

    Tenancy logo Tenancy Ecosystem (for Laravel)

    Enabling awesome Software as a Service with the Laravel framework.

    This is the successor of hyn/multi-tenant.

    Feel free to show support by starring the project following progress via twitter and backing its development over at OpenCollective or GitHub Sponsors.

    Tests

    Code Coverage Subsplit

    Before you start, we highly recommend you to read the extensive online documentation.

    Installation

    To give this package a spin, install all components at once:

    $ composer require tenancy/tenancy

    Otherwise make sure to selectively install the components you need and at least the framework:

    $ composer require tenancy/framework

    After that you’ll need to decide on and configure:

    Contributions

    This repository is used for developing all tenancy packages.

    Contributors need to use this repository for implementing code. All other repositories are READ-ONLY and overwritten on each subsplit push.

    Please read our Governance documentation in case you’d like to get involved.

    Local Testing

    Testing the ecosystem locally is possible when:

    • You have Docker (and docker-compose) installed
    • You have Bash installed

    When you have those requirements, you can simply run ./test in order to run the test in Docker containers. By default they will run the most recent versions of all our dependencies

    Visit original content creator repository https://github.com/tenancy/tenancy
  • rust-algorithms

    Contest Algorithms in Rust

    Crates.io Version Documentation license Crates.io Downloads Build Status Gitter

    A collection of classic data structures and algorithms, emphasizing usability, beauty and clarity over full generality. As such, this should be viewed not as a blackbox library, but as a whitebox cookbook demonstrating the design and implementation of algorithms. I hope it will be useful to students and educators, as well as fans of algorithmic programming contests.

    This repository is distributed under the MIT License. Contest submissions need not include the license text. Enjoy!

    For Students and Educators

    When learning a new algorithm or data structure, it’s often helpful to see or play with a concrete implementation. As such, this repository catalogues several classic algorithms in their simplest forms.

    In addition, the Rust language has outstanding pedagogical attributes. Its compiler acts as a teacher, enforcing strict discipline while pointing to clearer ways to structure one’s logic.

    For Programming Contests

    The original intent of this project was to build a reference for use in programming contests. As a result, it contains algorithms that are frequently useful to have in one’s toolkit, with an emphasis on code that is concise and easy to modify under time pressure.

    Most competitive programmers rely on C++ for its fast execution time. However, it’s notoriously unsafe, diverting a considerable share of the contestant’s time and attention on mistake prevention and debugging. Java is the next most popular choice, offering a little safety at some expense to speed of coding and execution.

    To my delight, I found that Rust eliminates entire classes of bugs, while reducing visual clutter to make the rest easier to spot. And, it’s fast. There’s a learning curve, to be sure. However, a proficient Rust programmer stands to gain a competitive advantage as well as a more pleasant experience!

    Some contest sites and online judges that support Rust:

    For help in getting started, you may check out some of my past submissions (requires login).

    Programming Language Advocacy

    My other goal is to appeal to developers who feel limited by ancient (yet still mainstream) programming languages, by demonstrating the power of modern techniques.

    Rather than try to persuade you with words, this repository aims to show by example. If you’d like to learn the language, I recommend the official book or Programming Rust.

    Contents

    • Integer index-based adjacency list representation
    • Disjoint set union
    • Euler path and tour
    • Kruskal’s minimum spanning tree
    • Dijkstra’s single-source shortest paths
    • DFS pre-order traversal
    • Connected components
    • Strongly connected components
    • Bridges and 2-edge-connected components
    • Articulation points and 2-vertex-connected components
    • Topological sort
    • 2-SAT solver
    • Dinic’s blocking maximum flow
    • Minimum cut
    • Hopcroft-Karp bipartite matching
    • Minimum cost maximum flow
    • Greatest common divisor
    • Canonical solution to Bezout’s identity
    • Miller’s primality test
    • Fast Fourier transform
    • Number theoretic transform
    • Convolution
    • Rational numbers
    • Complex numbers
    • Linear algebra
    • Safe modular arithmetic
    • Comparator for PartialOrd
    • Binary search: drop-in replacements for C++ lower_bound()/upper_bound()
    • Merge and mergesort
    • Coordinate compression
    • Online convex hull trick (update and query the upper envelope of a set of lines)
    • Statically allocated binary indexed ARQ tree (a.k.a. generic segtree with lazy propagation)
    • Dynamically allocated ARQ tree, optionally sparse and persistent
    • Mo’s algorithm (a.k.a. query square root decomposition)
    • Utility for reading input data ergonomically
    • File and standard I/O examples
    • Generic trie
    • Knuth-Morris-Pratt single-pattern string matching
    • Aho-Corasick multi-pattern string matching
    • Suffix array: O(n log n) construction using counting sort
    • Longest common prefix
    • Manacher’s linear-time palindrome search
    Visit original content creator repository https://github.com/EbTech/rust-algorithms
  • install-neovim

    Acerca de:


    • Todos los recursos necesarios para instalar Neovim estaran aquí, sin necesidad de abrir otras páginas.
    • Los Plugins y temas más conocidos igualmente se encontrarán en este repositorio.

    Instalar Vim/Neovim

    Recursos

    • Git
    • Node.js
    • Chocolatey
      • Windows 7 o posteriores / Windows Server 2003+
      • PowerShell v2+ (el mínimo es v3 para instalar desde este sitio web debido al requisito de TLS 1.2)
      • .NET Framework 4 o posteriores (la instalación intentará instalar .NET 4.0 si no lo tiene instalado) (el mínimo es 4.5 para instalar desde este sitio web debido al requisito de TLS 1.2)
    • Windows Terminal (Recomendado)

    Instalar los recursos

    Instalar Chocolatey

    Instale el administrador de paquetes Chocolatey ejecutando el siguiente código desde el Windows PowerShell (Administrador):

    Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
    

    Instalar Neovim

    • Una vez instalado los recursos continuaremos a instalar el editor de código.

    Abrimos Windows PowerShell y ejecutamos el siguiente código:

    choco install neovim
    

    Para instalar la versión pre-release:

    choco install neovim --pre
    

    Configurar Neovim

    Verificar el archivo init.vim

    Diríjase a C:\Users\YourUser\AppData\Local, ahí debe haber una carpeta nombrada “nvim”, aparte de “nvim-data”, si no está creela y dentro de dicha carpeta cree el archivo init.vim y abrelo con un editor de texto, copie y pegue el siguiente código:

    Instalar vim-plug

    En Windows PowerShell (Administrador), ejecute el siguiente código y se instalará instantáneamente:

    iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |`
        ni "$(@($env:XDG_DATA_HOME, $env:LOCALAPPDATA)[$null -eq $env:XDG_DATA_HOME])/nvim-data/site/autoload/plug.vim" -Force
    

    Primer inicio de Neovim

    Abrimos el Windows Terminal y debemos abrir el archivo “init.vim” y para aplicar todos los plugins preinstalados en dicho archivo.

    • Diríjase a la siguiente dirección: C:\Users\YourUser\AppData\Local\nvim.

    Ejecute el siguiente código para abrir el archivo con neovim:

    nvim init.vim
    

    Donde “nvim”, se usa para abrir el editor de código en sí y “init.vim”, en este caso de ejemplo, se usa para abrir el archivo o carpeta.

    Aplicar la instalación de Plugins

    Una vez dentro de neovim damos Enter, y nos aparecerá el código del archivo init.vim.

    • Luego tipeamos : , y automáticamente nos mandará a la linea de abajo y escribimos el siguiente comando: PlugInstall y damos Enter.

    Y los plugins deben instalarse automaticamente.

    • Reiniciamos neovim de la siguiente manera:
    • Tipeamos : y q
    • Luego tipeamos : y wq para aplicar los cambios.

    Volveremos al Windows Terminal y volveremos a ejecutar el comando:

    nvim init.vim
    

    Y ya veremos los cambios aplicados y a Neovim con una nueva apariencia.

    Visit original content creator repository https://github.com/eid4m/install-neovim