This project demonstrates the basic Go project structure and CRUD operations using the Go programming language.
The Go Library Management System is designed to showcase a simple library management system implementing CRUD operations with a structured Go project. This project aims to help developers understand how to structure a Go(Fiber) application and perform basic database operations with Postgresql.
- Basic CRUD operations for managing library records
- Unit and Integration Tests
- CI/CD using Github Actions
- API documentation with Swagger
- Clone this project:
git clone https://github.com/afurgapil/library-management-system.git
- Navigate to the project directory:
cd library-management-system
- Create the database table on your PostgreSQL server by running the
migrations
file. - Install dependencies:
go mod tidy
- Check
.env
file
- Run the server:
go run cmd/library-management-system/main.go
- Access the API using an HTTP client. You can check the documentation on swagger.
To run all tests go test ./... -v
If you encounter any issues or have suggestions for improvements, please feel free to contribute. Your feedback is highly appreciated and contributes to the learning experience.
This project is licensed under the MIT License. For more information, please refer to the LICENSE file.