npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@isdfs-low-code/db-poetry

v0.0.2

Published

A low-code database package providing a collection of classical and modern poetry.

Downloads

2

Readme

@isdfs-low-code/db-poetry

一个轻量级的诗词数据库库,包含唐朝、宋朝、明朝的经典诗词。该库支持在前端(浏览器)和后端(Node.js)环境中使用,并提供了灵活的接口来查询和扩展诗词数据。

功能特性

  • 动态加载数据:根据运行环境自动加载诗词数据,无论是在前端还是后端环境中都能正常工作。
  • 支持自定义数据:用户可以将自己的诗词数据与库中的默认数据合并使用。
  • 多种查询方式:支持按标题、作者、朝代、主题等多种方式查询诗词数据。
  • 全文搜索:支持在诗词内容和标题中进行关键词搜索。

安装

通过 npm 安装:

npm install @isdfs-low-code/db-poetry

或使用 Yarn 安装:

yarn add @isdfs-low-code/db-poetry

使用

以下是一些基本的使用示例,展示了如何加载和查询诗词数据。

合并自定义数据

你可以通过 mergeData 方法将自定义数据与默认数据合并使用:

import dbPoetry, { mergeData } from '@isdfs-low-code/db-poetry';

// 自定义诗词数据
const customPoems = [
    {
        title: '自定义诗词',
        author: '某作者',
        dynasty: '某朝代',
        content: '自定义诗词内容',
        theme: '自定义主题'
    }
];

// 合并自定义数据
mergeData(customPoems);

按标题查询诗词

通过 getPoemByTitle 方法,根据标题查找诗词:

dbPoetry.getPoemByTitle('静夜思').then(poem => console.log(poem));

按作者查询诗词

通过 getPoemsByAuthor 方法,获取某位作者的所有诗词:

dbPoetry.getPoemsByAuthor('李白').then(poems => console.log(poems));

按朝代查询诗词

通过 getPoemsByDynasty 方法,按朝代筛选诗词:

dbPoetry.getPoemsByDynasty('唐朝').then(poems => console.log(poems));

按主题查询诗词

通过 getPoemsByTheme 方法,根据主题筛选诗词:

dbPoetry.getPoemsByTheme('思乡').then(poems => console.log(poems));

全文搜索诗词

通过 searchPoemsByContent 方法,在诗词内容或标题中搜索关键词:

dbPoetry.searchPoemsByContent('大漠孤烟直').then(poems => console.log(poems));

API 文档

mergeData(customData: any[]): void

将用户自定义的数据与库中的默认数据合并。传入的数据应包含 title, author, dynasty, content, theme 等字段。

getPoemByTitle(title: string): Promise<any | null>

根据诗词标题查询对应的诗词。

  • title: 诗词标题。
  • 返回值: 匹配的诗词对象,如果没有找到则返回 null

getPoemsByAuthor(author: string): Promise<any[]>

根据作者姓名查询该作者的所有诗词。

  • author: 作者姓名。
  • 返回值: 该作者的所有诗词数组。

getPoemsByDynasty(dynasty: string): Promise<any[]>

根据朝代名称查询所有属于该朝代的诗词。

  • dynasty: 朝代名称。
  • 返回值: 该朝代的所有诗词数组。

getPoemsByTheme(theme: string): Promise<any[]>

根据主题名称查询所有相关诗词。

  • theme: 主题名称。
  • 返回值: 相关主题的所有诗词数组。

searchPoemsByContent(query: string): Promise<any[]>

在诗词内容或标题中根据关键词进行全文搜索。

  • query: 搜索关键词或诗句的一部分。
  • 返回值: 符合条件的诗词数组。

贡献

欢迎对本项目做出贡献!如果你有任何建议、问题或发现了错误,请提交 Issue 或 Pull Request。

许可证

本项目基于 MIT 许可证开源,详情请参见 LICENSE 文件。

说明

  1. 项目简介:概述了项目的功能特性,帮助用户快速了解库的用途。

  2. 安装说明:提供了使用 npm 或 Yarn 安装库的具体步骤。

  3. 使用示例:详细展示了如何使用该库的不同功能,包括合并自定义数据、按多种条件查询诗词以及全文搜索。

  4. API 文档:详细列出了库中的主要方法及其用法,帮助用户理解每个方法的功能和参数。

  5. 贡献与许可证:鼓励用户参与项目贡献,并明确了项目的开源许可证。