base

module
v0.17.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 21, 2025 License: AGPL-3.0

README

base Open in Gitpod

Tests Status Go Report Card PkgGoDev

License

This project is dual-licensed under the following terms:

  • For non-commercial use, you may choose either the GNU Affero General Public License v3.0 (AGPLv3) or a separate commercial license (see below). You can find a copy of the AGPLv3 at: https://www.gnu.org/licenses/agpl-3.0.txt

  • For commercial use, a separate commercial license is required. Commercial licenses are available for various use cases. Please contact me via my contact page to obtain a commercial license.

Installation

go get github.com/dracory/base

About Dracory

The Dracory project is a Go framework that provides various utilities, including:

  • BBCode to HTML conversion
  • Slice manipulation
  • Database interaction
  • Error handling and validation
  • Image manipulation
  • URL downloading
  • QR code generation
  • HTTP request handling
  • Timezone conversion
  • Date and datetime validation
  • Web server functionality
  • Command line functionality
  • HTTP routing with middleware support

Array

The array package provides a comprehensive set of utilities for working with arrays, slices, and maps in Go. It offers functions for array manipulation, analysis, map operations, and iteration.

For more information, see the arr/README.md file.

BBCode

The bbkode package provides BBCode to HTML conversion functionality for the Dracory framework. It enables converting BBCode formatted text into clean, valid HTML output.

For more information, see the bbkode/README.md file.

Environment Variables

The Dracory framework provides easy access to environment variables using the env package.

For information on environment variables, see the env/README.md file.

Database

The database package provides database interaction functionalities for the Dracory framework. It offers a set of tools for interacting with various database systems.

For more information, see the database/README.md file.

Email

The email package provides email functionality for the Dracory framework. It includes SMTP email sending, responsive HTML email templates, and plain text conversion from HTML.

For more information, see the email/README.md file.

Markdown

The markdown package provides Markdown to HTML conversion functionality for the Dracory framework. It uses the Goldmark library to convert Markdown text into clean, valid HTML with support for GitHub Flavored Markdown (GFM).

For more information, see the markdown/README.md file.

Object

The object package provides a flexible and thread-safe implementation for managing properties and serializable objects. It offers interfaces and implementations for property storage and JSON serialization.

For more information, see the object/README.md file.

Router

The router package provides HTTP routing functionality with middleware support for the Dracory framework. It enables building flexible and powerful web applications with clean routing patterns.

For more information, see the router/README.md file.

Server

The server package provides web server functionality for the Dracory framework. It offers a simple and configurable way to create and manage HTTP servers.

For more information, see the server/README.md file.

String

The string package provides a comprehensive set of string manipulation utilities for the Dracory framework. It offers functions for string operations, validation, transformation, and formatting.

For more information, see the str/README.md file.

Test

The test package provides utilities for testing Go applications in the Dracory ecosystem. It includes tools for setting up test environments, managing test databases, and testing HTTP endpoints.

For more information, see the test/README.md file.

Timezone

The timezone package provides utilities for converting UTC dates, times, and datetimes to different timezones. It offers a simple API for handling timezone conversions with proper error handling.

For more information, see the tz/README.md file.

Workflow

The workflow package provides a flexible and extensible framework for defining and executing sequential operations. It enables creating complex workflows with steps, pipelines, and directed acyclic graphs (DAGs).

For more information, see the wf/README.md file.

Simple Workflow (SWF)

The SWF package provides a simple, linear workflow management system. It is designed for straightforward, sequential workflows where steps are executed one after another in a predefined order.

For more information, see the swf/README.md file.

Directories

Path Synopsis
Package arr contains functions to interact with arrays, slices, and sometimes maps.
Package arr contains functions to interact with arrays, slices, and sometimes maps.
Package crypto contains functions to interact with cryptography.
Package crypto contains functions to interact with cryptography.
chacha20poly1305
Package chacha20poly1305 provides ChaCha20-Poly1305 encryption and decryption functions.
Package chacha20poly1305 provides ChaCha20-Poly1305 encryption and decryption functions.
Package database contains functions to interact with the database.
Package database contains functions to interact with the database.
Package env contains functions to interact with environment variables.
Package env contains functions to interact with environment variables.
Package errs contains functions to interact with errors.
Package errs contains functions to interact with errors.
Package llm provides a lightweight interface for Large Language Model operations
Package llm provides a lightweight interface for Large Language Model operations
Package qr contains functions to interact with QR codes.
Package qr contains functions to interact with QR codes.
Package vld contains functions to interact with validators.
Package vld contains functions to interact with validators.
wf

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL