An open API service indexing awesome lists of open source software.

https://github.com/rudrodip/ginit

ginit is a command-line tool for initializing go projects with predefined structures and configurations
https://github.com/rudrodip/ginit

cli go

Last synced: 9 months ago
JSON representation

ginit is a command-line tool for initializing go projects with predefined structures and configurations

Awesome Lists containing this project

README

          

# ginit

Ginit is a command-line tool for initializing projects with predefined structures and configurations. It aims to streamline the project setup process by providing a simple interface to generate project skeletons.

![Example](https://github.com/rudrodip/ginit/blob/main/github/example.gif)

## Features

- **Easy Project Initialization:** Quickly set up projects with predefined structures.
- **Project Type Options:** Choose from different project types (Blank, CLI, Backend, etc.) with associated generator functions.
- **Customizable Templates:** Define your own project structures and templates for various project types.
- **Dynamic Folder and File Generation:** Generate projects with dynamic folder structures and files.
- **Cross-Platform Support:** Works on Linux, macOS, and Windows WSL.

## Supported Platforms

- Linux
- macOS
- Windows WSL

## Installation

### Linux and macOS

To install ginit on Linux or macOS, use the following one-liner:

```bash
curl -sSL https://raw.githubusercontent.com/rudrodip/ginit/main/install.sh | bash
```

### Windows WSL

To install ginit on Windows WSL, use the following one-liner:

```bash
curl -sSL https://raw.githubusercontent.com/rudrodip/ginit/main/install.sh | bash
```

## Usage

### Generating a Project

Run the following command to generate a new project:

```bash
ginit
```

Follow the prompts to choose the project type and provide necessary details.

### Customizing Templates

You can customize project templates by modifying the generator functions and project structures in the code.

## Contributing

Contributions are welcome! Please check the [contribution guidelines](CONTRIBUTING.md) for more details.

## License

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