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

https://github.com/sarvsav/go-starter-template

A boiler plate for your Go project with best practices
https://github.com/sarvsav/go-starter-template

bazel boilerplate bootstrap go golang grpc quickstart

Last synced: 9 months ago
JSON representation

A boiler plate for your Go project with best practices

Awesome Lists containing this project

README

          

[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]





Logo

Go Starter Template


A boiler plate for your Go project with best practices


๐Ÿ“˜ Explore the docs ยป




๐Ÿ“… Book a meeting
ยท
๐Ÿ› Report Bug
ยท
๐Ÿ”จ Request Feature


Table of Contents



  1. About The Project



  2. Getting Started


  3. Usage

  4. Roadmap

  5. License

  6. Contact

  7. Contributors

  8. Acknowledgments

  9. Thank You

## About The Project

[![Go Starter Template][product-screenshot]](https://sarvsav.github.io/go-starter-template/)

This is a starter template for your `go` based projects. It is supercharged with latest technologies like `bazel`, `grpc`, `linters`, and much more. The new updates related to features, bug fixes, and securities will keep on adding with newer version of the template. The detailed version can be found on [project website](https://sarvsav.github.io/go-starter-template/).

(back to top)

### Built With

[![Go][Golang]][Go-url]


[![Bazel][Bazel]][Bazel-url]


[![docusaurus][docusaurus]][docusaurus-url]

(back to top)

## Getting Started

The repository contains the structures and tools that can be used to initialize your `go` project.

### Prerequisites

There is an interactive bash script named `main.bash` located inside the `scripts` folder, that will install all the required dependencies and logs the information in `log` directory. You can run it by running below command from the project root.

```bash
./scripts/main.bash
```

### Installation

The installation will be available after the first release of the product. Currently, you can use this as a template, by clicking the top icon and use template.

## Usage

Choose the option `Use this template` for your new project as a boilerplate for it.

![Use This Template](./assets/use-this-template.png)

_For more information, please refer to the [Documentation](https://sarvsav.github.io/go-starter-template/)_

(back to top)

## Roadmap

- [ ] Add database layer
- [ ] Add goose for migration
- [ ] Add sqlc for code generation
- [ ] Add queue using nats
- [ ] Enhance bash scripts
- [ ] Add CLI to generate this template
- [ ] Add subcommand for help

See the [open issues](https://github.com/sarvsav/go-starter-template/issues) for a full list of proposed features (and known issues).

(back to top)

## License

Distributed under the MIT License. See [LICENSE](./LICENSE) for more information.

(back to top)

## Contact

Discord Server - [Go Starter Template](https://discord.gg/ZNHGGGDsNe)

Project Link: [https://github.com/sarvsav/go-starter-template](https://github.com/sarvsav/go-starter-template)

(back to top)

## Contributors

Big thanks to our contributors.



Made with [contrib.rocks](https://contrib.rocks).

Kindly refer to the [contributing guide](./CONTRIBUTING.md) to contribute to the project.

(back to top)

## Adopters

๐Ÿ“ข If you're using go-starter-template in your organization, please add your name or company name to this [list](./ADOPTERS.md).

By adding yourself to the [ADOPTERS.md](./ADOPTERS.md) file, you help increase the project's visibility and credibility, which is essential for its growth.

(back to top)

## Acknowledgments

- [Best-README-Template](https://github.com/othneildrew/Best-README-Template)

(back to top)

## Thankyou

If you appreciate this project, please consider showing your support by โญ starring it, ๐Ÿ”„ sharing it with your friends, or ๐Ÿ’– making a donation. Thank you!

[contributors-shield]: https://img.shields.io/github/contributors/sarvsav/go-starter-template.svg?style=for-the-badge
[contributors-url]: https://github.com/sarvsav/go-starter-template/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/sarvsav/go-starter-template.svg?style=for-the-badge
[forks-url]: https://github.com/sarvsav/go-starter-template/network/members
[stars-shield]: https://img.shields.io/github/stars/sarvsav/go-starter-template.svg?style=for-the-badge
[stars-url]: https://github.com/sarvsav/go-starter-template/stargazers
[issues-shield]: https://img.shields.io/github/issues/sarvsav/go-starter-template.svg?style=for-the-badge
[issues-url]: https://github.com/sarvsav/go-starter-template/issues
[license-shield]: https://img.shields.io/github/license/sarvsav/go-starter-template.svg?style=for-the-badge
[license-url]: https://github.com/sarvsav/go-starter-template/blob/master/LICENSE.txt
[product-screenshot]: assets/go-starter-template.png
[Golang]: https://img.shields.io/github/go-mod/go-version/sarvsav/go-starter-template?style=for-the-badge&logo=go
[Go-url]: https://go.dev/
[Bazel]: https://img.shields.io/badge/Bazel-v7-brightgreen?style=for-the-badge&logo=bazel
[Bazel-url]: https://bazel.build/
[docusaurus]: https://img.shields.io/badge/docs-passing-green?style=for-the-badge&logo=docusaurus&logoColor=%233ECC5F
[docusaurus-url]: https://docusaurus.io/