A simple Create Structure tool.
Project description
Create Structure Tool
About the Project
Create Structure is a Python tool designed to help developers quickly generate file and folder structures based on an outline provided in a text file. It simplifies the process of organizing projects, creating Python classes, and generating __init__.py files automatically.
With this tool, you can easily:
- Generate a project structure with folders and files.
- Automatically create Python class files with a basic class template.
- Generate
__init__.pyfiles that import classes for easier module management. - Creating a
setup.pyfile. - Creating a
README.mdfile. - Creating a
LICENSEfile.
Features
- Flexible Input: Provide a text file that outlines the structure of your project.
- Automatic Class Creation: Automatically creates Python class templates in
.pyfiles. - Init File Generation: Automatically generates
__init__.pyfiles for importing modules. - Setup File Generation: Automatically generates
setup.pyfile, The file is generated with ready-to-use content for installation. - Cross-Platform: Works on Windows, Linux, and macOS.
Installation
You can install the tool directly from source or by using pip.
From Source:
git clone https://github.com/hemaabokila/create_structure.git
cd create_structure
python install .
From PyPI :
pip install create-struc
Usage
After installing the tool, you can run it directly from the command line.
Syntax:
ceartes <path_to_outline_file>
1- Example: Create a text file, e.g., structure.txt:
src/
main.py
utils.py
tests/
test_main.py
test_utils.py
2- Run the command:
ceartes structure.txt
3- The tool will generate the following structure:
├── src/
│ ├── main.py
│ ├── utils.py
│ └── __init__.py
├── tests/
│ ├── test_main.py
│ ├── test_utils.py
│ └── __init__.py
├── README.md
├── setup.py
└── LICENSE
Arguments
file (Required): Path to the outline text file that specifies the project structure.
Example Command:
ceartes my_structure.txt
How It Works
1- Reads the outline from a text file.
2- Creates directories and files based on the provided structure.
3- For Python files:
- Adds a basic class template.
- Generates init.py files for importing classes in submodules.
File Structure
If you clone or download the repository, here’s what the directory structure looks like:
create_structure/
├── structure/ # Core functionality of the tool
│ ├── main.py # Main entry point of the tool
│ └── __init__.py
├── setup.py # Setup script for packaging
├── LICENSE # MIT License file
├── README.md # Documentation file
└── tests/ # Unit tests for the tool
License
This project is licensed under the MIT License.
See the LICENSE file for more details.
Author
Developed by Ibrahem abo kila.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file create_struc-1.0.2.tar.gz.
File metadata
- Download URL: create_struc-1.0.2.tar.gz
- Upload date:
- Size: 5.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ee8c67432458ac425c53ec314a499bc7214e88bd60c79464ba136cf0a9d0a8f
|
|
| MD5 |
51a7e55f40013995713646229a1e1d18
|
|
| BLAKE2b-256 |
ff0700d28a4807906fb4aac8a2ad8cb25b933bc518b6d425000b2bb51d3329a3
|
File details
Details for the file create_struc-1.0.2-py3-none-any.whl.
File metadata
- Download URL: create_struc-1.0.2-py3-none-any.whl
- Upload date:
- Size: 6.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
82c91c24dad8d7a9fa7d2a16f99e97c42112fd8d80fdd8699c03a420d7bf3bcf
|
|
| MD5 |
92732233dc0e808ce461d41203e67ea4
|
|
| BLAKE2b-256 |
f04ee4696b58eb93635e857462e6b58f90104f7709c2d5c89b4f7bd640872c50
|