Crate libmake

source ·
Expand description

LibMake

A code generator to reduce repetitive tasks and build high-quality Rust libraries.

Part of the Mini Functions family of libraries.

Rust

Rust Crates.io Lib.rs GitHub License

Overview

LibMake is a tool designed to quickly help creating high-quality Rust libraries by generating a set of pre-filled and pre-defined templated files. This opinionated boilerplate scaffolding tool aims to greatly reduces development time and minimizes repetitive tasks, allowing you to focus on your business logic while enforcing standards, best practices, consistency, and providing style guides for your library.

With LibMake, you can easily generate a new Rust library code base structure with all the necessary files, layouts, build configurations, code, tests, benchmarks, documentation, and much more in a matter of seconds.

The library is designed to be used as a command-line tool. It is available on Crates.io and Lib.rs.

Features

LibMake offers the following features and benefits:

  • Create your Rust library with ease using the command line interface or by providing a configuration file in CSV, JSON, or YAML format.
  • Rapidly generate new library projects with a pre-defined structure and boilerplate code that you can customize with your own template.
  • Automatically generate basic functions, methods, and macros to get you started with your Rust library.
  • Enforce best practices and standards with starter documentation, test suites, and benchmark suites that are designed to help you get up and running quickly.

Usage

  • serde: Enable serialization/deserialization via serde

Modules

  • The args module contains functions for processing command-line arguments.
  • The ascii module contains functions for generating ASCII art.
  • The cli module contains functions for processing command-line input.
  • The generator module contains functions for generating the new library.
  • The interface module contains functions for displaying the interface.
  • The loggers module contains the loggers for the library.
  • The macros module contains functions for generating macros. Macros for the libmake crate.
  • The utils module contains a function for reading a CSV file at the given file path and returns the value of the given field.

Macros

Functions

  • Initializes the logger with a file logger and a terminal logger and processes command-line arguments to generate the new library.