Skip to content

xditu/BookTrack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Book Management System

This is a Book Management System built with:

  • Frontend: Vue 3 + Vuetify
  • Backend: Golang (GORM for database management)

Prerequisites

  • Docker & Docker Compose installed

Getting Started

To start both the frontend and backend services, run the following command:

docker compose -f ./docker-compose.yml -p booktrack up -d

The application will be available at:

http://0.0.0.0:3000/

Project Structure

├── backend
│   ├── cmd
│   │   └── http
│   │       ├── config.json
│   │       └── main.go
│   ├── internal
│   │   ├── common
│   │   │   ├── conversion.go
│   │   │   └── error.go
│   │   ├── config
│   │   │   └── config.go
│   │   ├── domain
│   │   │   ├── database.go
│   │   │   ├── repository.go
│   │   │   └── types.go
│   │   ├── handler
│   │   │   └── bookhandler.go
│   │   ├── infrastructure
│   │   │   └── db
│   │   │       └── sqliteconnector.go
│   │   ├── repository
│   │   │   ├── membookrepository.go
│   │   │   ├── mockbookrepository.go
│   │   │   └── sqlitebookrepository.go
│   │   ├── server
│   │   │   └── httpserver.go
│   │   └── usecase
│   │       ├── bookusecase.go
│   │       └── bookusecase_test.go
│   ├── BookTrack.iml
│   ├── Dockerfile
│   ├── go.mod
│   ├── go.sum
│   └── to-do
├── docs
├── frontend
│   ├── public
│   │   └── favicon.ico
│   ├── src
│   │   ├── api
│   │   │   └── rest.js
│   │   ├── assets
│   │   │   ├── base.css
│   │   │   ├── logo.svg
│   │   │   └── main.css
│   │   ├── components
│   │   │   ├── BookForm.vue
│   │   │   ├── BooksTable.vue
│   │   │   └── ViewHistory.vue
│   │   ├── plugins
│   │   ├── router
│   │   ├── utils
│   │   │   ├── common.js
│   │   │   └── constants.js
│   │   ├── views
│   │   │   └── BookTableView.vue
│   │   ├── App.vue
│   │   ├── eventBus.js
│   │   └── main.js
│   ├── Dockerfile
│   ├── index.html
│   ├── jsconfig.json
│   ├── package.json
│   ├── package-lock.json
│   └── vite.config.js
├── docker-compose.yml
└── README.md

Database

The backend uses GORM for database interactions. SQLite is the primary database used in local development.

Development

To access the logs for debugging:

docker logs -f booktrack-frontend
docker logs -f booktrack-backend

To stop the services:

docker compose -f ./docker-compose.yml -p booktrack down

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors