SkillAgentSearch skills...

Pygen

Command-line tool to generate Python applications and libraries

Install / Use

/learn @tecnickcom/Pygen
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

pygen

Command-line tool to generate Python services, applications and libraries with reusable logic.

Master Build Status Donate via PayPal Please consider supporting this project by making a donation via PayPal

  • category Tool
  • author Nicola Asuni info@tecnick.com
  • copyright 2014-2019 Nicola Asuni - Tecnick.com LTD
  • license MIT (see LICENSE)
  • link https://github.com/tecnickcom/pygen

Description

This is a command-line tool to quickly generate Python services, applications and libraries with a common set of features and reusable logic.

For an equivalent project in Go (golang) please check GoGen.

Each Python project built with this tool adheres to the set of conventions detailed in the following articles:

Each generated project is immediately functional and can be fully tested using the make build command.

Quick Start

This project includes a Makefile that allows you to test and build the project in a Linux-compatible system with simple commands.
All the artifacts and reports produced using this Makefile are stored in the target folder.

To see all available options:

make help

Usage

make new TYPE=app CONFIG=myproject.cfg
  • TYPE is the project type:

    • lib : library
    • app : command-line application
    • srv : HTTP API service
    • libapp : library + command-line application
    • libsrv : library + HTTP API service
  • CONFIG is the configuration file containing the project settings.

To create a new configuration please clone the default.cfg file and change the values.

All projects are creted inside the target directory.

Features

Services (srv)

  • Web HTTP RESTful JSON API;
  • Standard command line options;
  • Multiple configuration options, including remote configuration via URL;
  • Logging;
  • StatsD client to collect usage metrics;
  • Unit tests;
  • Makefile;
  • Docker build;
  • Conda packaging.
  • Wheel packaging.

Applications (app)

  • Standard command line options;
  • Multiple configuration options, including remote configuration via URL;
  • Logging;
  • StatsD client to collect usage metrics;
  • Unit tests;
  • Makefile;
  • Docker build;
  • Conda packaging.
  • Wheel packaging.

Libraries (lib)

  • Unit tests;
  • Makefile;
  • Docker build;
  • Conda packaging.
  • Wheel packaging.

Related Skills

View on GitHub
GitHub Stars11
CategoryDevelopment
Updated4mo ago
Forks3

Languages

Python

Security Score

92/100

Audited on Dec 6, 2025

No findings