Skip to main content

Latest Version Supported Python versions Downloads

gmscaffold

1. Preparing the Development Environment

1.1 Introduction

A scaffolding tool helps you quickly generate the basic structure of a project. With a simple command, it can automatically create project directories, configuration files, and initialization code, saving you the hassle of manual setup.

In this system, you can use the command-line tool gmcli to quickly create a standardized application project structure, enabling you to start development efficiently.


1.2 Environment Setup

Install Python Environment

  • Install Python 3.10 or later Visit the official Python website to download and install the appropriate version for your operating system.

    ⚠️ Currently, the scaffolding tool supports Python 3.10 and above only.

  • Install pip (Python package manager) Most systems come with pip pre-installed. If not, please refer to the official pip documentation for installation instructions.


1.3 Install the Scaffolding Tool

Install the CLI tool via pip:

pip3 install gmscaffold

Once installed, you can use the gmcli command to create your project.


2. Generate a Project with the Scaffold

2.1 Create a New Scaffolded Project

Run the following command to generate the project structure:

gmcli gm_app create_app

💡 Tip: The project will be created in the current working directory, so make sure you cd into the desired path first.


Example Output:

➜  ~ gmcli gm_app create_app

     _/_/_/  _/      _/    _/_/_/    _/_/_/  _/    _/
  _/        _/_/  _/_/  _/        _/        _/    _/
 _/  _/_/  _/  _/  _/    _/_/      _/_/    _/_/_/_/
_/    _/  _/      _/        _/        _/  _/    _/
 _/_/_/  _/      _/  _/_/_/    _/_/_/    _/    _/

Please enter the project name: example
Please enter the author name: xxx
Please enter contact email: xxx@163.com
Please enter the project version: 0.0.1
Please enter the project description: example
DEBUG:GmScaffold:[example] create_gm_app successfully

2.2 Command Parameters

Parameter Description
gm_app create_app Create a new scaffolded project

2.3 Project Structure

After execution, the following structure will be generated:

example/
├── app/
│   ├── consts/           # Constants (e.g., status codes, config keys)
│   ├── i18n/             # Internationalization (default: English & Chinese)
│   ├── middlewares/      # Middleware modules (e.g., auth, request handlers)
│   ├── schemas/          # Data validation schemas
│   ├── services/         # Business logic
│   ├── utils/            # Utility functions (e.g., logging, tools)
│   └── __init__.py
├── config.yaml           # Configuration file (logs, ports, etc.)
├── install.sh            # Optional install script (e.g., Redis, MySQL)
├── main.py               # Application entry point
├── makefile              # Build or packaging script
├── requirements.txt      # Python dependencies list
├── .gitignore            # Git ignore settings
├── ReadMe.md             # Project documentation

Key File Descriptions:

  • main.py: Entry point of the application
  • install.sh: Optional script to install external services (e.g., Redis, MySQL)
  • config.yaml: Centralized configuration management (port, logs, DB, etc.)
  • requirements.txt: Python dependencies list (can also use poetry)

2.4 Usage & Extension

The generated project serves as a general-purpose API service template and can be extended for various business scenarios:

  • ✅ Can be used with simplejrpc SDK to quickly build JSON-RPC services
  • ✅ Also supports standalone use with custom business logic and structure

Metadata

Release files for gmscaffold 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gmscaffold 1.1.0
File Size Uploaded
gmscaffold-1.1.0.tar.gz 113.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gmscaffold 1.1.0
File Interpreter ABI Platform
gmscaffold-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 278.6 kB

Release files / gmscaffold-1.1.0.tar.gz

Download URL gmscaffold-1.1.0.tar.gz
Size 113.2 kB
Tags Source
SHA-256 checksum
How to use checksums
63d2d4f78c2334dee06c6fe76fcd26035c94dee4ee20c828fbde64a8a5fc0b26
BLAKE2b-256 checksum
How to use checksums
1759b05bfee7297fd4c5c98eaa290ac3d8f1c538c38962717898aba79007b5e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / gmscaffold-1.1.0-py3-none-any.whl

Download URL gmscaffold-1.1.0-py3-none-any.whl
Size 165.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
326aadb27d7139d6d776fdf980c043384343158a53bd369307025bd2ffd1915d
BLAKE2b-256 checksum
How to use checksums
155677cd7f6a14d93b92f7c60f91ef2aa7ee9b1cce4e175fb06dc972baa7bcbe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page