# THipster

THipster is a CLI tool dedicated to simplifying the ordeal associated with writing Terraform files.
It allows users to write infrastructure as code in a simplified format, using either YAML (with JINJA) or the dedicated Thipster DSL.

Written entirely in Python, it leverages the Python CDK for Terraform to create Terraform files and apply them to the chosen provider.

### Table of contents
[Technology Stack](#technology-stack)

[Project Status](#project-status)

[Dependencies](#dependencies)

[Installation](#installation)

[Usage](#usage)

[Test the software](#how-to-test-the-software)

[Known issues](#knwon-issues)

[Getting help](#getting-help)

[Getting involved](#getting-involved)

## Technology Stack
Written in Python 3.11, thipster is designed as a python package, to be used either as a standalone tool, or as a module inside a running process like a CI/CD pipeline.

## Project Status
THipster is currently in an active development state. If you want to know more, please check the [CHANGELOG](CHANGELOG.md) for more details.

## Dependencies

*Describe any dependencies that must be installed for this software to work.
This includes programming languages, databases or other storage mechanisms, build tools, frameworks, and so forth.
If specific versions of other software are required, or known not to work, call that out.*

## Installation

*Detailed instructions on how to install, configure, and get the project running.
This should be frequently tested to ensure reliability. Alternatively, link to
a separate [INSTALL](INSTALL.md) document.*

## Usage

*Show users how to use the software.
Be specific.
Use appropriate formatting when showing code snippets.*

## How to test the software

*If the software includes automated tests, detail how to run those tests.*

## Known issues

*Document any known significant shortcomings with the software.*

## Getting help

If you have questions, concerns, bug reports, etc, please file an issue in this repository's Issue Tracker.

## Getting involved

*This section should detail why people should get involved and describe key areas you are
currently focusing on; e.g., trying to get feedback on features, fixing certain bugs, building
important pieces, etc.*

*General instructions on _how_ to contribute should be stated with a link to [CONTRIBUTING](CONTRIBUTING.md).*


----

## Open source licensing info
*1. [TERMS](TERMS.md)
2. [LICENSE](LICENSE)
3. [CFPB Source Code Policy](https://github.com/cfpb/source-code-policy/)*


----

## Credits and references

*1. Projects that inspired you
2. Related projects
3. Books, papers, talks, or other sources that have meaningful impact or influence on this project*
