/gophersys

A simple CRUD application to manage Gopher entities written in Go.

Primary LanguageGo

Project logo

Gophersys

Status GitHub Issues GitHub Pull Requests License


A simple CRUD application built with Go, Chi, and MongoDB to manage Gophers.

📝 Table of Contents

🏁 Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Development Tools

Deployment Tools

Installing

  1. Clone the repository

    git clone https://github.com/xfrr/gophersys.git
  2. Change directory to the project folder and setup the environment

    cd gophersys && make setup

    This will install all the dependencies required for development.

🎈 Usage

Running the application locally

  1. Start the application using one of the following commands:
    # using go run
    make run
    
    # using https://github.com/air-verse/air
    # for live reloading
    make run-air

Running the application using Docker

Start the application using the following command:

  make run-docker

Accessing the application

Navigate to http://localhost:8080 in your browser

Cleaning the application

To clean up all development resources, run the following command:

make purge

🚀 Deployment

Deploy using Docker

  1. Build the Docker image
    make build-docker
  2. Run the Docker container using docker-compose
    make run-docker
  3. Navigate to http://localhost:8080 in your browser

Deploy using Kubernetes and Helm

  1. Install the application using Helm

    make install-helm
  2. Uninstall the application using Helm

    make uninstall-helm

📝 License

This project is MIT licensed.