Skip to content

yalkahaleh/trade-tracker-assesment

Repository files navigation

TOC

Live Demo

To demonstrate the practical application of the project, you can use this link :

Live Demo
Login credentials :

Setup & Installation

Follow these steps to set up and run the Laravel project locally:

1. Clone the Project

git clone https://github.com/yalkahaleh/trade-tracker-assesment

cd laravel-project

2. Create .env File

Create a new .env file in the project root.

3. Copy .env.example

Copy the contents of .env.example and paste them into the newly created .env file.

4. build the image for the 'app' via docker

docker-compose up -d --build app

5. Run composer install via docker

docker-compose exec app composer install

6. Run migration via docker

docker-compose exec app php artisan migrate:fresh --seed

7. install npm via docker

docker-compose exec app npm install

8. build npm via docker

docker-compose exec app npm run build

9. go to localhost

tab in your browser 127.0.0.1:8000

Development Details

1. Laravel Version

The project utilizes Laravel version 10 and livewire 3.

2. Project Structure

the project follows DDD principles, organizing code into domain-specific entities and services.

Domains

  • The Companies domain includes logic related to company profiles, details, and on-demand fetching of stock data.
  • The Users domain handles user authentication and management.

Livewire Components

  • The project leverages Livewire components for dynamic user interfaces, including user registration, login, and company data presentation.
  • Notably, the approach for stock data display was shifted to on-demand fetching within Livewire components.

Views Structure

  • The views are structured in a way that supports the DDD approach, with separate directories for each domain.
  • Tailwind CSS is utilized for styling, ensuring a responsive and modern user interface.
  • Key view directories include:
    • auth for authentication-related views (login, registration).
    • company for displaying company information, stock data and create company.

Frontend Interaction

  • Livewire is used extensively for real-time interactivity without full page reloads.
  • The stock data display updates dynamically, reflecting real-time data fetched when a user views a Stock details.

Important Notes

1. Login

if you don't want to register you can use credentials below :

email : y.alkahaleh@gmail.com
password : 12345678

2. API Limitation

note that the api for fetching stock is limited by 250 request


If you have any questions or need assistance, feel free to contact me via email

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages