Skip to content

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Go Project

Personal learning project following the official Go tutorials, then expanded into a small full-stack web app (Gin + MySQL + Vue.js).

Structure

  • greetings/ — Standalone Go module from the Create a Go module tutorial. Provides a Hello function with unit tests.
  • hello/ — Consumer module from the Call your code from another module tutorial. Imports greetings via a local replace directive.
  • my_app/ — Full-stack web application: Gin REST API backed by MySQL, with a plain HTML + Vue.js (CDN) front end for user login and CRUD management.

my_app overview

  • Backend: Go + Gin router, MySQL via database/sql, bcrypt password hashing.
  • Routes: user CRUD (/users), login/logout (/users/login), home/success/404 pages.
  • Frontend: static HTML pages in client/, styled via a shared global.css, with Vue.js 3 (CDN build) for the login page's interactivity.

Go tutorials followed

  1. Getting started
  2. Create a module
    go mod init example.com/greetings
    
  3. Call module code from another module
    go mod edit -replace example.com/greetings=../greetings
    go mod tidy
    
  4. Add a test
    go test -v
    
  5. Compile and install
    • go build compiles the package and its dependencies but does not install the result.
    • go install compiles and installs the package.

Reference

Go

Gin

Database (MySQL)

Add the MySQL client to PATH (PowerShell, run as admin):

[Environment]::SetEnvironmentVariable("Path", [Environment]::GetEnvironmentVariable("Path", "Machine") + ";C:\Program Files\MySQL\MySQL Server 8.0\bin", "Machine")

Cryptography

Front end

About

Let's go

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages