AI-supported system design framework optimized for usability.
Project description
LinguStruct
LinguStruct is a structured system design framework optimized for usability. It provides templates for system design documents, making it easy for users to develop, document, and manage systems efficiently.
Installation
Ensure you have Python 3.6 or higher installed. Clone the repository and install the package:
git clone https://github.com/lilseedabe/lingustruct.git
cd lingustruct
pip install -e .
Usage
1. Setting up Configuration
Create a .env file in the root directory to store your encryption key, license, and other sensitive information. Here is an example:
# .env file example
LINGUSTRUCT_LICENSE_KEY=your-license-key
2. Running the Framework
Below is an example of how to use the LinguStruct framework:
from lingustruct import LinguStruct, Validator
# Initialize components
lingu_struct = LinguStruct()
validator = Validator()
# Example: Generate a master JSON template
replacements = {"PROJECT_ID": "123", "VERSION": "1.0"}
lingu_struct.generate_master_json(replacements)
# Example: Validate a module using a schema
module_data = {
"project_id": "123",
"v": "1.3",
"meta": {"t_v": "1.0", "p_n": "Project Name", "desc": "Sample project", "scale": "m"}
}
is_valid, message = validator.validate(module_data)
print(f"Validation Result: {message}")
Abbreviation Reference
Below are the abbreviations used within the LinguStruct framework to keep templates concise and manageable:
| Abbreviation | Meaning | Description |
|---|---|---|
t_v |
Template Version | The version of the template being used |
p_n |
Project Name | The name of the project |
p_v |
Project Version | The version of the project |
desc |
Description | A brief description of the project |
scale |
Scale | The scale of the project (e.g., small, medium) |
st |
Style | The design style |
c_n |
Component Name | The name of the component |
c_t |
Component Type | The type of the component |
c_dep |
Component Dependencies | Dependencies of the component |
dep_res |
Dependency Resolution | How dependencies are resolved |
err_handling |
Error Handling | The error handling approach |
prio |
Priority | The priority level |
map |
Mappings | Key-value mappings |
l |
Languages | Programming languages used |
ar |
Architecture | System architecture overview |
svc |
Service | Services or modules |
Configuration
Ensure your .env file is properly configured as follows:
# Example .env file
LINGUSTRUCT_LICENSE_KEY=your-license-key
LINGUSTRUCT_ENCRYPTION_KEY=your-32-byte-encryption-key
License
This package is provided for personal and academic use only.
Commercial use requires a license agreement. Contact us at osusume-co@lilseed.jp for licensing inquiries.
Terms of Use:
- Non-Commercial Use Only: This software is intended for personal or academic purposes.
- Commercial License Required: Contact
osusume-co@lilseed.jpfor commercial use. - Redistribution Prohibited: Public redistribution is not allowed.
- No Warranty: The authors are not responsible for damages resulting from the use of this software.
Contributing
To contribute:
- Fork the repository.
- Create a new branch for your feature or fix.
- Commit your changes and push them.
- Submit a pull request.
Disclaimer
The authors are not responsible for any misuse or unintended consequences of using this framework. Users must adhere to applicable laws and regulations.
Issues & Support
Report issues on the GitHub Issues page.
Changelog
- v0.2.4: Removed AI support and enhanced template handling.
Authors
Developed by Yasunori Abe. For inquiries, contact osusume-co@lilseed.jp.
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 lingustruct-0.2.5.tar.gz.
File metadata
- Download URL: lingustruct-0.2.5.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
caf008a83834eaec707b46463e049c5613277d6dbf02d49aa685e2209274acfb
|
|
| MD5 |
48c3310bcacce42695731446771dbcb9
|
|
| BLAKE2b-256 |
ef8b3bbc47d2973d8765c9263d17cdc525364f20b21b050bb98885eff831b08b
|
File details
Details for the file lingustruct-0.2.5-py3-none-any.whl.
File metadata
- Download URL: lingustruct-0.2.5-py3-none-any.whl
- Upload date:
- Size: 15.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd49f6626b7e4d61d7609226043db76556011bb00a76e4dba5907d8196ba992b
|
|
| MD5 |
22f7b98a3495b17a6127877122603693
|
|
| BLAKE2b-256 |
f640fa3c2fde19eefbee30dbad701c4966be01f281135382b8f9ce3ccb71bf26
|