web

package
v0.3.11 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 8, 2026 License: MIT Imports: 30 Imported by: 0

README ΒΆ

Your awesome project

Welcome to the yet another awesome project generated with the Gowebly CLI! πŸŽ‰

This README file contains all the necessary information about:

And some words about the Gowebly CLI.

Project overview

Backend:

  • Module name in the go.mod file: github.com/ArkLabsHQ/fulmine
  • Go web framework/router: gin
  • Server port: 7000

Frontend:

  • Package name in the package.json file: frontend
  • Reactivity library: htmx
  • CSS framework: tailwindcss

Tools:

  • Air tool to live-reloading: βœ“
  • Bun as a frontend runtime: βœ•
  • Templ to generate HTML: βœ“
  • Config for golangci-lint: βœ“

Folders structure

.
β”œβ”€β”€ assets
β”‚   β”œβ”€β”€ scripts.js
β”‚   └── styles.scss
β”œβ”€β”€ static
β”‚   β”œβ”€β”€ images
β”‚   β”‚   └── gowebly.svg
β”‚   β”œβ”€β”€ apple-touch-icon.png
β”‚   β”œβ”€β”€ favicon.ico
β”‚   β”œβ”€β”€ favicon.png
β”‚   β”œβ”€β”€ favicon.svg
β”‚   β”œβ”€β”€ manifest-desktop-screenshot.jpeg
β”‚   β”œβ”€β”€ manifest-mobile-screenshot.jpeg
β”‚   β”œβ”€β”€ manifest-touch-icon.svg
β”‚   └── manifest.webmanifest
β”œβ”€β”€ templates
β”‚   β”œβ”€β”€ pages
β”‚   β”‚   └── index.templ
β”‚   └── main.templ
β”œβ”€β”€ .gitignore
β”œβ”€β”€ .dockerignore
β”œβ”€β”€ .prettierignore
β”œβ”€β”€ .air.toml
β”œβ”€β”€ Dockerfile
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ prettier.config.js
β”œβ”€β”€ package.jsonβ”œβ”€β”€ golangci.yml
β”œβ”€β”€ go.mod
β”œβ”€β”€ go.sum
β”œβ”€β”€ handlers.go
β”œβ”€β”€ server.go
β”œβ”€β”€ main.go
└── README.md

Starting your project

To start your project, run the Gowebly CLI command in your terminal:

gowebly run

Developing your project

The backend part is located in the *.go files in your project folder.

The ./templates folder contains Templ templates that you can use in your frontend part. Also, the ./assets folder contains the styles.scss (main styles) and scripts.js (main scripts) files.

The ./static folder contains all the static files: icons, images, PWA (Progressive Web App) manifest and other builded/minified assets.

Deploying your project

All deploy settings are located in the Dockerfile and docker-compose.yml files in your project folder.

To deploy your project to a remote server, follow these steps:

  1. Go to your hosting/cloud provider and create a new VDS/VPS.
  2. Update all OS packages on the server and install Docker, Docker Compose and Git packages.
  3. Use git clone command to clone the repository with your project to the server and navigate to its folder.
  4. Run the docker-compose up command to start your project on your server.> ❗️ Don't forget to generate Go files from *.templ templates before run the docker-compose up command.

About the Gowebly CLI

The Gowebly CLI is a next-generation CLI tool that makes it easy to create amazing web applications with Go on the backend, using htmx, hyperscript or Alpine.js, and the most popular CSS frameworks on the frontend.

It's highly recommended to start exploring the Gowebly CLI with short articles "What is Gowebly CLI?" and "How does it work?" to understand the basic principle and the main components built into the Gowebly CLI.

another awesome project built with the Gowebly CLI

Documentation ΒΆ

Index ΒΆ

Constants ΒΆ

This section is empty.

Variables ΒΆ

This section is empty.

Functions ΒΆ

func NewService ΒΆ

func NewService(
	appSvc *application.Service,
	stopCh chan struct{},
	sentryEnabled bool,
	arkServer string,
) *service

func Partition ΒΆ added in v0.3.0

func Partition[T any](items []T, pred func(T) bool) (yes, no []T)

Partition splits items into two slices based on pred(item).

func RemoveFind ΒΆ added in v0.1.12

func RemoveFind[T any](slice []T, match func(T) bool) ([]T, T, bool)

RemoveFind drops the first element in slice for which match(v) is true. It returns the updated slice, the removed element, and true. If nothing matches, it returns the original slice, the zero value, and false.

Types ΒΆ

type TemplRender ΒΆ

type TemplRender struct {
	Code int
	Data templ.Component
}

TemplRender implements the render.Render interface.

func (*TemplRender) Instance ΒΆ

func (t *TemplRender) Instance(name string, data interface{}) render.Render

Instance implements the render.Render interface.

func (TemplRender) Render ΒΆ

func (t TemplRender) Render(w http.ResponseWriter) error

Render implements the render.Render interface.

func (TemplRender) WriteContentType ΒΆ

func (t TemplRender) WriteContentType(w http.ResponseWriter)

WriteContentType implements the render.Render interface.

Directories ΒΆ

Path Synopsis
templ: version: v0.3.977
templ: version: v0.3.977
components
templ: version: v0.3.977
templ: version: v0.3.977
modals
templ: version: v0.3.977
templ: version: v0.3.977
pages
templ: version: v0.3.977
templ: version: v0.3.977

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL