Welcome to the Admin Panel for Invoice and Order Management project! This Go-based application is designed to provide administrators with a comprehensive tool to manage invoices and orders efficiently. With this admin panel, you can track orders, generate invoices, and manage customer information all from one centralized interface.
- Order Management: View, edit, and track customer orders.
- Invoice Management: Generate and manage invoices with ease.
- Customer Management: Store and update customer information.
- Dash Board: home page with charts and totals
- Responsive Design: Access from both desktop and mobile devices.
- Go 1.23 or higher
- PostgreSQL database
- [Optional] Docker for containerized deployment
- [Optional] Make to run scripts
To get started with the Admin Panel, follow these steps:
-
Clone the repository:
git clone https://github.com/Orfeo42/admin-panel.git cd admin-panel -
Set up your Go environment:
Make sure you have Go installed and properly set up. You can check this by running:
go version
-
Install dependencies:
go mod tidy
-
Set up your database:
you can define the configuration parameter for your database in the .env file
DB_HOST=localhost DB_PORT=5432 DB_DATABASE=admin_panel_db DB_USERNAME=admin_panel_user DB_PASSWORD=admin_panel_password
then to start the db container just run:
docker-compose -f docker-compose.yaml up -d postgres
or run the make command:
make db-up
-
Run the database creation and data preload (you need a xlsx to fill the data in the db):
@go run ./preload/main.go
or run the make command:
make db-init
-
Start the application:
@go run ./cmd/api/main.go
-
Access the admin panel:
you can define the port for your application in the .env file
PORT=8080
Open your web browser and navigate to
http://localhost:8080to start using the admin panel.