Skip to content

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inventory Library App

Application for managing a bookstore inventory.

image

The base application allows you to:

  1. Product management

image

  1. Category management

image

  1. Inventory movements

image

Technologies

  • Vue 3: JavaScript framework for building user interfaces.
  • Vuetify 3: Material Design component framework for Vue.js.
  • Laravel 11: PHP framework for building web applications.
  • MySQL: Relational database management system.

Installation (manual)

  1. Clone the repository:
git clone https://github.com/daiv05/inventory-library-app.git
cd inventory-library-app

Frontend

  1. Navigate to the frontend directory:
cd frontend
  1. Install dependencies:
npm install
  1. Copy .env.example to .env and adjust environment variables as needed:
cp .env.example .env
  1. Start the development server:
npm run dev

Important

The configured frontend port is 3090

Backend

  1. Navigate to the backend directory:
cd backend
  1. Install dependencies:
composer install
  1. Copy .env.example to .env and adjust environment variables as needed:
cp .env.example .env
  1. Generate the application key:
php artisan key:generate
  1. Generate the JWT secret:
php artisan jwt:secret
  1. Run migrations:
php artisan migrate --seed
  1. Start the development server:
php artisan serve --port 9090

Important

The configured backend port is 9090

Installation (Docker)

The project includes a docker-compose.yml file to simplify installation and execution in Docker containers.

Prerequisites

  • Docker and Docker Compose installed on your machine.

Installation steps

  1. Clone the repository:
git clone https://github.com/daiv05/inventory-library-app.git
cd inventory-library-app
  1. Before continuing, configure the .env files for frontend and backend, plus the .env file used by docker-compose. To do this, copy the example files and edit them as needed:
cp frontend/.env.example frontend/.env
cp backend/.env.example backend/.env
cp .env.example .env

The docker-compose .env file configures database credentials and an initial database. The remaining environment variables are configured in the frontend and backend .env files.

Important

Make sure the database name in the docker-compose .env file matches the one used in the backend .env, as well as the username and password. Also, the DB_HOST value in the backend .env file must be mysql (DO NOT use localhost), which is the database service name in docker-compose.yml.

  1. Build and start the containers:
docker-compose up -d --build
  1. Run the following commands to finish backend setup:
docker-compose exec backend php artisan jwt:secret --force
docker-compose exec backend php artisan migrate --seed
docker-compose exec backend php artisan storage:link
  1. You can now access the application:
    • Frontend: http://localhost:3090
    • Backend: http://localhost:9090

Caution

The application runs in development mode. Source code changes will be reflected automatically in the containers.

Copyright (c) 2025-present David Deras

About

Project to test and play with Docker Compose

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages