Skip to content

Commit 9db4fd1

Browse files
committed
chore: Update pull request template and contributing guidelines
1 parent 3446eea commit 9db4fd1

2 files changed

Lines changed: 126 additions & 14 deletions

File tree

README.md

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# STRUCT: Automated Project Structure Generator
1+
# 🚀 STRUCT: Automated Project Structure Generator
22

33
![Struct Banner](extras/banner.png)
44

55
> ⚠️ **Warning:** This project is still in development and may contain bugs. Use it at your own risk.
66
77
STRUCT is a powerful and flexible script designed to automate the creation of project structures based on YAML configurations. It supports template variables, custom file permissions, remote content fetching, and multiple file handling strategies to streamline your development setup process.
88

9-
## Features
9+
## Features
1010

1111
- **YAML Configuration**: Define your project structure in a simple YAML file.
1212
- **Template Variables**: Use placeholders in your configuration and replace them with actual values at runtime.
@@ -17,7 +17,7 @@ STRUCT is a powerful and flexible script designed to automate the creation of pr
1717
- **Configuration Validation**: Ensure your YAML configuration is valid before executing the script.
1818
- **Verbose Logging**: Get detailed logs of the script's actions for easy debugging and monitoring.
1919

20-
## Installation
20+
## 🛠️ Installation
2121

2222
You can install STRUCT using pip:
2323

@@ -27,7 +27,7 @@ pip install git+https://github.com/httpdss/struct.git
2727

2828
Alternatively, you can clone the repository and install it locally. see the [Development](#development) section for more details.
2929

30-
## Quick Start using Docker
30+
## 🐳 Quick Start using Docker
3131

3232
You can run STRUCT using Docker without installing it on your system. Here's how you can do it:
3333

@@ -38,12 +38,13 @@ You can run STRUCT using Docker without installing it on your system. Here's how
3838
docker run \
3939
-v $(pwd):/workdir \
4040
-e OPENAI_API_KEY=your-key \
41+
-u $(id -u):$(id -g) \
4142
ghcr.io/httpdss/struct:main \
42-
/workdir/structure.yaml \
43-
.
43+
/workdir/example/structure.yaml \
44+
/workdir/example_output
4445
```
4546

46-
## Using docker alpine
47+
## 🐳 Using docker alpine
4748

4849
```sh
4950
docker run -it --entrypoint="" python:3.10-alpine sh -l
@@ -62,7 +63,7 @@ export OPENAI_API_KEY=something
6263
struct structure.yaml .
6364
```
6465

65-
## Usage
66+
## 📝 Usage
6667

6768
Run the script with the following command:
6869

@@ -98,7 +99,7 @@ struct \
9899
/path/to/your/output/directory
99100
```
100101

101-
## YAML Configuration
102+
## 📄 YAML Configuration
102103

103104
Here is an example of a YAML configuration file:
104105

@@ -121,7 +122,7 @@ structure:
121122
122123
```
123124
124-
## Development
125+
## 👩‍💻 Development
125126
126127
To get started with development, follow these steps:
127128
@@ -140,18 +141,22 @@ pip install -r requirements.txt
140141
pip install -r requirements.dev.txt
141142
```
142143

143-
## License
144+
## 📜 License
144145

145146
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
146147

147-
## Funding
148+
## 💰 Funding
148149

149150
If you find this project helpful, please consider supporting it through donations: [patreon/structproject](https://patreon.com/structproject)
150151

151-
## Contributing
152+
## 🤝 Contributing
152153

153154
Contributions are welcome! Please open an issue or submit a pull request.
154155

155-
## Acknowledgments
156+
## 🙏Acknowledgments
156157

157158
Special thanks to all the contributors who helped make this project possible.
159+
160+
## 🐞 Known Issues
161+
162+
- [ ] Its mandatory that you set the `OPENAI_API_KEY` environment variable before running the script. if you are not using gpt properties, you can set it to any value. Issue [#3](https://github.com/httpdss/struct/issues/3)

contribs/generic-app.yaml

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
structure:
2+
- README.md:
3+
content: |
4+
# Generic App
5+
6+
This is a generic app that can be used as a starting point for new projects.
7+
- .gitignore:
8+
content: |
9+
# Ignore files generated by the app
10+
/node_modules
11+
/dist
12+
- .devops/apps/environments/dev/main.tf:
13+
content: "# Terraform configuration for the dev environment"
14+
- .devops/apps/environments/dev/providers.tf:
15+
content: |
16+
provider "aws" {
17+
region = "${ aws_region }"
18+
}
19+
- .devops/apps/environments/prod/main.tf:
20+
content: "# Terraform configuration for the prod environment"
21+
- .devops/apps/environments/prod/providers.tf:
22+
content: |
23+
provider "aws" {
24+
region = "${ aws_region }"
25+
}
26+
- .devops/apps/environments/stage/main.tf:
27+
content: "# Terraform configuration for the stage environment"
28+
- .devops/apps/environments/stage/providers.tf:
29+
content: |
30+
provider "aws" {
31+
region = "${ aws_region }"
32+
}
33+
- .devops/apps/environments/qa/main.tf:
34+
content: "# Terraform configuration for the qa environment"
35+
- .devops/apps/environments/qa/providers.tf:
36+
content: |
37+
provider "aws" {
38+
region = "${ aws_region }"
39+
}
40+
- .devops/apps/init/main.tf:
41+
content: "# Terraform configuration for the init environment"
42+
- .devops/apps/init/providers.tf:
43+
content: |
44+
provider "aws" {
45+
region = "${ aws_region }"
46+
}
47+
- .github/workflows/pre-commit.yaml:
48+
content: |
49+
repos:
50+
- repo: https://github.com/pre-commit/pre-commit-hooks
51+
rev: v4.6.0
52+
hooks:
53+
- id: trailing-whitespace
54+
- id: end-of-file-fixer
55+
- id: check-yaml
56+
- .github/workflows/ci.yaml:
57+
content: |
58+
name: CI
59+
60+
on:
61+
push:
62+
branches:
63+
- main
64+
65+
jobs:
66+
build:
67+
runs-on: ubuntu-latest
68+
69+
steps:
70+
- name: Checkout code
71+
uses: actions/checkout@v2
72+
73+
- name: Install dependencies
74+
run: npm install
75+
76+
- name: Build
77+
run: npm run build
78+
79+
- name: Test
80+
run: npm test
81+
82+
- name: Deploy
83+
run: echo "Deploying to the cloud"
84+
- .github/CODEOWNERS:
85+
content: |
86+
# This file defines the code owners for the repository
87+
# See https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
88+
89+
# The owners of the repository
90+
* @github-owner
91+
- .pre-commit-config.yaml:
92+
content: |
93+
repos:
94+
- repo: https://github.com/pre-commit/pre-commit-hooks
95+
rev: v4.6.0
96+
hooks:
97+
- id: trailing-whitespace
98+
- id: end-of-file-fixer
99+
- id: check-yaml
100+
- .github/ISSUE_TEMPLATE/bug_report.md:
101+
file: https://raw.githubusercontent.com/bitnami/charts/main/.github/ISSUE_TEMPLATE/bug_report.yml
102+
- .github/ISSUE_TEMPLATE/feature_request.md:
103+
file: https://raw.githubusercontent.com/bitnami/charts/main/.github/ISSUE_TEMPLATE/feature_request.yml
104+
- .github/PULL_REQUEST_TEMPLATE.md:
105+
file: https://raw.githubusercontent.com/bitnami/charts/main/.github/PULL_REQUEST_TEMPLATE.md
106+
- .github/dependabot.yml:
107+
file: https://raw.githubusercontent.com/bitnami/charts/main/.github/dependabot.yml

0 commit comments

Comments
 (0)