Skip to content

WoofDeveloper/firma-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🏭 ProProcurement - Industrial Sourcing Platform

Laravel PHP Tailwind CSS License

Profesjonalna platforma do zarzΔ…dzania zakupami przemysΕ‚owymi z wbudowanym CRM

Demo β€’ FunkcjonalnoΕ›ci β€’ Instalacja β€’ Dokumentacja


πŸ“‹ Spis treΕ›ci


🎯 O projekcie

ProProcurement to kompleksowa aplikacja webowa stworzona dla firm zajmujΔ…cych siΔ™ outsourcingiem zakupΓ³w przemysΕ‚owych. Łączy eleganckΔ… stronΔ™ publicznΔ… z zaawansowanym panelem CRM, umoΕΌliwiajΔ…c efektywne zarzΔ…dzanie zapytaniami ofertowymi, generowanie profesjonalnych ofert PDF oraz prowadzenie bazy wiedzy.

Kluczowe cechy:

  • 🌐 DwujΔ™zycznoΕ›Δ‡ - peΕ‚ne wsparcie dla jΔ™zyka polskiego i angielskiego
  • πŸ” BezpieczeΕ„stwo 2FA - logowanie dwuetapowe z Google Authenticator / Proton Authenticator
  • πŸ“Š Dashboard analityczny - wykresy i statystyki w czasie rzeczywistym
  • πŸ’± Integracja NBP - automatyczne przeliczanie walut wg kursu NBP
  • πŸ“§ System mailingowy - powiadomienia i newsletter

✨ GΕ‚Γ³wne funkcjonalnoΕ›ci

🌍 Strona Publiczna

Funkcja Opis
Strona gΕ‚Γ³wna Nowoczesny landing page z sekcjami: Hero, O nas, UsΕ‚ugi, Portfolio, Blog, Kontakt
Formularz RFQ Zapytania ofertowe z obsΕ‚ugΔ… zaΕ‚Δ…cznikΓ³w (PDF, DWG, STEP, ZIP)
Baza wiedzy Blog z edytorem WYSIWYG (Trix) i optymalizacjΔ… SEO
Portfolio Galeria zrealizowanych projektΓ³w z kategoriami
Newsletter System subskrypcji z linkiem do wypisania
WielojΔ™zycznoΕ›Δ‡ Automatyczne przeΕ‚Δ…czanie PL/EN

πŸŽ›οΈ Panel Administracyjny (CRM)

ModuΕ‚ FunkcjonalnoΕ›ci
Dashboard KPI, wykres zapytaΕ„ (Chart.js), ostatnie zgΕ‚oszenia, wartoΕ›Δ‡ ofert
ZarzΔ…dzanie RFQ Lista zapytaΕ„, zmiana statusΓ³w, podglΔ…d szczegΓ³Ε‚Γ³w, pobieranie zaΕ‚Δ…cznikΓ³w
Generator Ofert Tworzenie ofert PDF, obsΕ‚uga wielu walut (PLN/EUR/USD), przelicznik NBP
UsΕ‚ugi CRUD usΕ‚ug z wersjami PL/EN
Portfolio ZarzΔ…dzanie realizacjami z uploadem zdjΔ™Δ‡
Blog Edytor Trix, publikacja/szkice, SEO-friendly slugi
Newsletter WysyΕ‚ka masowa, lista subskrybentΓ³w
Backup Tworzenie i pobieranie kopii zapasowych bazy danych
Profil Edycja danych, konfiguracja 2FA

πŸ› οΈ Technologie

Backend

PHP 8.2+ | Laravel 12 | Eloquent ORM

Frontend

Blade Templates | Tailwind CSS 3.x | Alpine.js | Chart.js | Trix Editor

Baza danych

MySQL / PostgreSQL / SQLite

Pakiety i integracje

Pakiet Zastosowanie
laravel/breeze Uwierzytelnianie
barryvdh/laravel-dompdf Generowanie PDF
pragmarx/google2fa Dwuetapowa weryfikacja
spatie/laravel-backup System backupΓ³w
NBP API Kursy walut

DevOps

Docker (Laravel Sail) | Vite | NPM

πŸš€ Instalacja

Wymagania

  • PHP >= 8.2
  • Composer
  • Node.js >= 18
  • MySQL / PostgreSQL / SQLite

Szybki start

# 1. Klonowanie repozytorium
git clone https://github.com/WoofDeveloper/firma-app.git
cd firma-app

# 2. Instalacja zaleΕΌnoΕ›ci PHP
composer install

# 3. Instalacja zaleΕΌnoΕ›ci Node.js
npm install

# 4. Konfiguracja Ε›rodowiska
cp .env.example .env
php artisan key:generate

# 5. Konfiguracja bazy danych w .env
# DB_CONNECTION=mysql
# DB_HOST=127.0.0.1
# DB_DATABASE=firma_app
# DB_USERNAME=root
# DB_PASSWORD=

# 6. Migracje
php artisan migrate

# 7. Uruchomienie
php artisan serve
npm run dev

Docker (Laravel Sail)

# Uruchomienie z Docker
./vendor/bin/sail up -d

# Migracje w kontenerze
./vendor/bin/sail artisan migrate

βš™οΈ Konfiguracja

Zmienne Ε›rodowiskowe (.env)

# Aplikacja
APP_NAME="ProProcurement"
APP_URL=http://localhost

# Poczta (dla powiadomieΕ„ i newslettera)
MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1025
MAIL_FROM_ADDRESS="biuro@proprocurement.pl"

# Backup (opcjonalne)
BACKUP_NOTIFICATION_EMAIL=admin@example.com

Harmonogram zadaΕ„ (Cron)

# Dodaj do crontab dla automatycznych zadaΕ„
* * * * * cd /path-to-project && php artisan schedule:run >> /dev/null 2>&1

Zaplanowane zadania:

  • sitemap:generate - codziennie o 2:00 (generowanie mapy strony)

πŸ“ Struktura projektu

firma-app/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ Console/Commands/     # Komendy Artisan (sitemap)
β”‚   β”œβ”€β”€ Http/
β”‚   β”‚   β”œβ”€β”€ Controllers/
β”‚   β”‚   β”‚   β”œβ”€β”€ Admin/        # Kontrolery panelu CRM
β”‚   β”‚   β”‚   └── ...           # Kontrolery publiczne
β”‚   β”‚   └── Middleware/       # 2FA, Language
β”‚   β”œβ”€β”€ Mail/                 # Szablony maili
β”‚   β”œβ”€β”€ Models/               # Eloquent Models
β”‚   └── Services/             # Serwisy (NBP API)
β”œβ”€β”€ database/
β”‚   └── migrations/           # Migracje bazy danych
β”œβ”€β”€ lang/
β”‚   β”œβ”€β”€ en/                   # TΕ‚umaczenia angielskie
β”‚   └── pl/                   # TΕ‚umaczenia polskie
β”œβ”€β”€ resources/
β”‚   β”œβ”€β”€ css/                  # Style Tailwind
β”‚   β”œβ”€β”€ js/                   # Alpine.js
β”‚   └── views/
β”‚       β”œβ”€β”€ admin/            # Widoki panelu CRM
β”‚       β”œβ”€β”€ auth/             # Logowanie, 2FA
β”‚       β”œβ”€β”€ emails/           # Szablony email
β”‚       β”œβ”€β”€ layouts/          # Layouty (app, guest)
β”‚       └── partials/         # Komponenty (navbar, cookies)
β”œβ”€β”€ routes/
β”‚   β”œβ”€β”€ web.php               # Trasy gΕ‚Γ³wne
β”‚   └── console.php           # Harmonogram zadaΕ„
└── public/                   # Pliki publiczne

πŸ”Œ API i Integracje

NBP API

Automatyczne pobieranie kursΓ³w walut dla ofert w EUR/USD:

// app/Services/NbpService.php
$rate = NbpService::getRate('EUR'); // Zwraca aktualny kurs

Generowanie Sitemap

php artisan sitemap:generate

πŸ”’ BezpieczeΕ„stwo

Implementacje bezpieczeΕ„stwa:

Funkcja Opis
2FA (TOTP) Dwuetapowa weryfikacja z Google/Proton Authenticator
CSRF Protection Ochrona formularzy
Middleware Auth Chronione trasy panelu
Signed URLs Bezpieczne linki wypisania z newslettera
File Validation Walidacja typΓ³w i rozmiarΓ³w zaΕ‚Δ…cznikΓ³w

Konfiguracja 2FA

  1. Zaloguj siΔ™ do panelu
  2. PrzejdΕΊ do Profil β†’ BezpieczeΕ„stwo (2FA)
  3. Zeskanuj kod QR aplikacjΔ… Authenticator
  4. WprowadΕΊ kod weryfikacyjny

πŸ“Š Modele danych

User ─────────────── (auth, 2FA)
  β”‚
Rfq ──────────────── (zapytania ofertowe)
  β”‚
  └── Offer ──────── (oferty)
        β”‚
        └── OfferItem (pozycje oferty)

Service ─────────── (usΕ‚ugi)
Project ─────────── (portfolio)
Post ────────────── (blog)
Subscriber ──────── (newsletter)

🀝 WkΕ‚ad w projekt

  1. Fork repozytorium
  2. UtwΓ³rz branch (git checkout -b feature/AmazingFeature)
  3. Commit (git commit -m 'Add AmazingFeature')
  4. Push (git push origin feature/AmazingFeature)
  5. OtwΓ³rz Pull Request

πŸ“„ Licencja

Projekt jest dostΔ™pny na licencji MIT. Zobacz plik LICENSE po szczegΓ³Ε‚y.


πŸ‘€ Autor

WoofDeveloper


⭐ JeΕ›li projekt Ci siΔ™ podoba, zostaw gwiazdkΔ™! ⭐

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages