What is Project Crashing with Example

Project Crashing is a project management technique used to shorten the project duration by adding additional resources to critical path tasks. It is typically employed when a project is behind schedule or when there is a need to meet an earlier deadline. However, crashing often comes at an increased cost, as it involves allocating more resources (e.g., labor, equipment, or materials) to complete tasks faster.


Key Concepts of Project Crashing

  1. Critical Path:
    • The longest sequence of tasks in a project that determines the minimum project duration.
    • Crashing focuses on tasks on the critical path because shortening non-critical tasks won’t reduce the overall project duration.
  2. Crash Time:
    • The shortest possible time in which a task can be completed by adding additional resources.
  3. Crash Cost:
    • The additional cost incurred to reduce the task duration to the crash time.
  4. Normal Time and Normal Cost:
    • The original estimated time and cost to complete a task without additional resources.

Steps to Perform Project Crashing

  1. Identify the Critical Path:
    • Determine the critical path and the tasks that are driving the project duration.
  2. Determine Crashable Tasks:
    • Identify tasks on the critical path that can be shortened by adding resources.
  3. Calculate Crash Cost per Unit Time:
    • For each task, calculate the cost of reducing its duration by one unit of time (e.g., per day or week).
  1. Choose the Most Cost-Effective Tasks:
    • Prioritize tasks with the lowest crash cost per unit time to minimize additional costs.
  2. Apply Resources and Adjust the Schedule:
    • Allocate additional resources to the selected tasks and update the project schedule.
  3. Monitor the Impact:
    • Track the changes in the project timeline and budget to ensure the crashing is effective.

Example of Project Crashing

Suppose a project has the following tasks on the critical path:

TaskNormal Time (Days)Crash Time (Days)Normal Cost ($)Crash Cost ($)
A53500800
B7510001400
C426001000
  1. Calculate Crash Cost per Day:

2. Choose the Most Cost-Effective Task:

  • Task A has the lowest crash cost per day ($150).

3. Crash Task A:

  • Reduce Task A from 5 days to 3 days.
  • Additional cost: 2×150=3002×150=300.

4. Update Project Duration:

  • The project duration is reduced by 2 days.

    Advantages of Project Crashing

    • Helps meet tight deadlines.
    • Improves flexibility in project scheduling.
    • Can prevent penalties for late delivery.

    Disadvantages of Project Crashing

    • Increases project costs due to additional resources.
    • May lead to reduced quality if tasks are rushed.
    • Not all tasks can be crashed (e.g., tasks with fixed durations).

    When to Use Project Crashing

    • When the project is behind schedule.
    • When there is a fixed deadline that must be met.
    • When the benefits of completing the project earlier outweigh the additional costs.

    By carefully analyzing the trade-offs between time and cost, project managers can use crashing to effectively manage project timelines while minimizing negative impacts.

    Top 10 Estimation Techniques in Project anagement

    In project management, estimation is a critical process for predicting the time, cost, resources, and effort required to complete a project. Different estimation techniques are used depending on the project’s complexity, available data, and the stage of the project lifecycle. Below are the key estimation techniques used in project management:


    1. Analogous Estimation (Top-Down Estimation)

    • Description: Uses historical data from similar past projects to estimate the current project.
    • When to Use: Early in the project when detailed information is limited.
    • Advantages:
      • Quick and easy to perform.
      • Requires minimal details.
    • Disadvantages:
      • Less accurate, as it relies on assumptions.
      • Not suitable for unique or complex projects.

    2. Parametric Estimation

    • Description: Uses statistical relationships between historical data and project variables (e.g., cost per square foot, time per unit).
    • When to Use: When historical data is available and the project is well-defined.
    • Advantages:
      • More accurate than analogous estimation.
      • Scalable for large projects.
    • Disadvantages:
      • Requires reliable data and a clear understanding of variables.
      • May not account for unique project factors.

    3. Bottom-Up Estimation

    • Description: Breaks the project into smaller tasks, estimates each task individually, and then aggregates the estimates.
    • When to Use: When detailed project information is available.
    • Advantages:
      • Highly accurate.
      • Provides a detailed understanding of the project.
    • Disadvantages:
      • Time-consuming.
      • Requires significant effort and expertise.

    4. Three-Point Estimation

    • Description: Uses three estimates for each task:
      • Optimistic (O): Best-case scenario.
      • Pessimistic (P): Worst-case scenario.
      • Most Likely (M): Realistic scenario.
    • Formulas:
      • Triangular Distribution: Estimate=O+M+P3Estimate=3O+M+P
      • Beta Distribution (PERT): Estimate=O+4M+P6Estimate=6O+4M+P
    • When to Use: When there is uncertainty in task durations or costs.
    • Advantages:
      • Accounts for risks and uncertainties.
      • Provides a range of possible outcomes.
    • Disadvantages:
      • Requires more effort to calculate.
      • Relies on subjective judgment.

    5. Expert Judgment

    • Description: Relies on the experience and intuition of experts to estimate project parameters.
    • When to Use: When historical data is unavailable or the project is unique.
    • Advantages:
      • Quick and flexible.
      • Useful for complex or innovative projects.
    • Disadvantages:
      • Subjective and prone to bias.
      • Accuracy depends on the expert’s experience.

    6. Delphi Technique

    • Description: A structured method where experts provide estimates anonymously, and the results are aggregated and refined through multiple rounds of feedback.
    • When to Use: When consensus is needed among experts.
    • Advantages:
      • Reduces bias and groupthink.
      • Provides reliable estimates.
    • Disadvantages:
      • Time-consuming.
      • Requires coordination and facilitation.

    7. Reserve Analysis

    • Description: Adds contingency reserves (time or cost) to the project estimate to account for uncertainties and risks.
    • When to Use: When the project has high uncertainty or risk.
    • Advantages:
      • Improves project resilience.
      • Accounts for unforeseen events.
    • Disadvantages:
      • Can lead to overestimation if not managed properly.

    8. Comparative Estimation

    • Description: Compares the current project with similar past projects to estimate effort, cost, or duration.
    • When to Use: When historical data from comparable projects is available.
    • Advantages:
      • Simple and quick.
      • Useful for repetitive projects.
    • Disadvantages:
      • Less accurate for unique projects.
      • Relies on the availability of comparable data.

    9. Function Point Analysis (FPA)

    • Description: Estimates the size and complexity of software projects based on the number of functions or features.
    • When to Use: For software development projects.
    • Advantages:
      • Standardized and objective.
      • Useful for measuring productivity.
    • Disadvantages:
      • Requires expertise in FPA.
      • Not suitable for non-software projects.

    10. Monte Carlo Simulation

    • Description: Uses probability distributions and random sampling to simulate thousands of possible project outcomes.
    • When to Use: For complex projects with high uncertainty.
    • Advantages:
      • Provides a range of possible outcomes and probabilities.
      • Accounts for risks and uncertainties.
    • Disadvantages:
      • Requires specialized software and expertise.
      • Time-consuming to set up and run.

    Choosing the Right Estimation Technique

    • Early Project Stages: Use analogous estimation or expert judgment when details are limited.
    • Detailed Planning: Use bottom-up estimation or parametric estimation when more information is available.
    • High Uncertainty: Use three-point estimationMonte Carlo simulation, or reserve analysis.
    • Software Projects: Use function point analysis or story points (in Agile).

    By selecting the appropriate estimation technique(s), project managers can improve the accuracy of their estimates and set realistic expectations for stakeholders.

    What is Project Scheduling & Explain Briefly

    Project scheduling is a critical aspect of project management that involves planning, organizing, and managing tasks and resources to ensure the project is completed on time. Below is a step-by-step explanation of how to create and manage a project schedule:


    Step 1: Define Project Scope and Objectives

    • Understand the project goals: Clearly define what the project aims to achieve.
    • Identify deliverables: List all the outputs or outcomes the project will produce.
    • Set boundaries: Determine what is included and excluded from the project scope.

    Step 2: Break Down the Work (Work Breakdown Structure – WBS)

    • Decompose the project: Divide the project into smaller, manageable tasks or work packages.
    • Hierarchical structure: Organize tasks into levels (e.g., phases, deliverables, sub-tasks).
    • Ensure completeness: Make sure all tasks are accounted for to avoid missing critical work.

    Step 3: Define Task Dependencies

    • Identify relationships: Determine the order in which tasks must be completed.
    • Types of dependencies:
      • Finish-to-Start (FS): Task B cannot start until Task A is finished.
      • Start-to-Start (SS): Task B cannot start until Task A starts.
      • Finish-to-Finish (FF): Task B cannot finish until Task A finishes.
      • Start-to-Finish (SF): Task B cannot finish until Task A starts (rare).
    • Use a network diagram: Visualize task dependencies to understand the flow of work.

    Step 4: Estimate Task Durations

    • Gather input: Consult team members or experts to estimate how long each task will take.
    • Consider resources: Account for the availability of resources (e.g., people, equipment).
    • Use estimation techniques:
      • Expert judgment: Rely on experienced team members.
      • Analogous estimating: Use data from similar past projects.
      • Parametric estimating: Use statistical relationships (e.g., cost per unit).
      • Three-point estimating: Calculate optimistic, pessimistic, and most likely durations.

    Step 5: Assign Resources

    • Identify resources: Determine the people, equipment, and materials needed for each task.
    • Allocate resources: Assign resources to tasks based on availability and skills.
    • Avoid over-allocation: Ensure resources are not overburdened by too many tasks.

    Step 6: Develop the Schedule

    • Choose a scheduling tool: Use tools like Gantt charts, Microsoft Project, or software like Asana, Trello, or Jira.
    • Input tasks, durations, and dependencies: Populate the tool with the information gathered.
    • Set milestones: Identify key points in the project timeline (e.g., project phases, deliverables).
    • Calculate critical path: Identify the longest sequence of dependent tasks that determine the project duration.

    Step 7: Review and Optimize the Schedule

    • Check for feasibility: Ensure the schedule is realistic and achievable.
    • Identify bottlenecks: Look for tasks that could delay the project.
    • Optimize resource allocation: Adjust resources to balance workloads.
    • Consider buffers: Add contingency time for high-risk tasks.

    Step 8: Baseline the Schedule

    • Finalize the schedule: Once approved, set the schedule as the baseline.
    • Document assumptions: Record any assumptions made during scheduling.
    • Communicate the schedule: Share the baseline schedule with stakeholders and team members.

    Step 9: Monitor and Control the Schedule

    • Track progress: Regularly compare actual progress to the baseline schedule.
    • Update the schedule: Adjust the schedule as needed to reflect changes or delays.
    • Manage changes: Use a change control process to handle scope or schedule changes.
    • Communicate updates: Keep stakeholders informed of any changes to the schedule.

    Step 10: Close the Project

    • Review the schedule: Analyze how well the schedule was followed and identify lessons learned.
    • Document variances: Record any deviations from the baseline schedule.
    • Archive the schedule: Store the final schedule for future reference.

    Key Tools and Techniques for Project Scheduling

    • Gantt Charts: Visual representation of tasks and timelines.
    • Critical Path Method (CPM): Identifies the longest path of dependent tasks.
    • Program Evaluation and Review Technique (PERT): Uses probabilistic time estimates.
    • Kanban Boards: Visual workflow management tool.
    • Resource Leveling: Balances resource allocation to avoid overloading.

    Multidimensional Data Cube or Model, (Roll-up, Drill-Down Slice Dice) Operation

    The Multidimensional data cube is a multi-dimensional array of data used for OLAP (Online Analytical Processing)

    A Multidimensional data cube allows data to be viewed in multiple dimensions.

    1. Roll-Up or Drill Up Operation

    Roll-up is an aggregation operation that summarizes data by climbing up a concept hierarchy or by dimension reduction. It’s like zooming out to see a broader view.

    Example: Sales data cube with dimensions: Location (City), Time (Month), and Product.

    A roll-up operation might aggregate sales data from the city level to the country level.

    Below Data Before Roll-Up:

    • City: Sales in New York, Los Angeles, Chicago
    • Month: January, February, March
    • Product: Laptops, Tablets, Phones

    Below Data After Roll-Up:

    • Country: Sales in USA
    • Quarter: Q1
    • Product: Laptops, Tablets, Phones

    2. Drill-Down Operation

    Drill-down is the reverse of roll-up. It provides more detailed data by descending a concept hierarchy or adding dimensions. It’s like zooming in to see finer details.

    Example: Using the same sales data cube, a drill-down operation might break down sales data from the country level to the city level.

    Below Data Before Drill-Down:

    • Country: Sales in USA
    • Quarter: Q1
    • Product: Laptops, Tablets, Phones

    Below Data After Drill-Down:

    • City: Sales in New York, Los Angeles, Chicago
    • Month: January, February, March
    • Product: Laptops, Tablets, Phones

    3. Slice Operation

    Slice selects a single dimension from the data cube, creating a sub-cube by fixing a value for one dimension.

    Selection on one dimension of the given cube, resulting in a sub cube.

    Example: If we want to analyze sales data for January only, we perform a slice operation on the Time dimension.

    Below Data Before Slice:

    • City: Sales in New York, Los Angeles, Chicago
    • Month: January, February, March
    • Product: Laptops, Tablets, Phones

    Below Data After Slice:

    • City: Sales in New York, Los Angeles, Chicago
    • Month: January
    • Product: Laptops, Tablets, Phones

    4. Dice Operation

    Dice selects two or more dimensions to create a sub-cube by fixing values for those dimensions.

    Selection on two or more dimension of the given cube, resulting in a sub cube.

    Example: If we want to analyze sales data for January and February in New York and Los Angeles, we perform a dice operation.

    Below Data Before Dice:

    • City: Sales in New York, Los Angeles, Chicago
    • Month: January, February, March
    • Product: Laptops, Tablets, Phones

    Below Data After Dice:

    • City: Sales in New York, Los Angeles
    • Month: January, February
    • Product: Laptops, Tablets, Phones

    Multidimensional Data Model & Data Cubes with Example

    A Multidimensional Data Model:: It is defined as a Data Model that allows data to be organized and viewed in multiple dimensions, such as time, item, branch, and location, enabling organizations to analyze relationships between different perspectives and entities efficiently.

    A multidimensional data model views data in the form of a data cube, which allows data to be modeled and viewed in multiple dimensions. The key components are:

    • Dimensions: These are the perspectives or entities concerning which an organization keeps records. For example, time, item, and location.
    • Facts / Measures: These are the numerical measures or quantities. For example, sales amount.

    Data Cube:: It is a multi-dimensional data structure. A data cube is organized by its dimensions (as Products, States, Date)

    A data cube allows data to be viewed in multiple dimensions.

    Example

    A Retail store that wants to analyze its sales data. The dimensions could be:

    • Time: Year, Quarter, Month
    • Item: Product Category, Product Name
    • Location: City, Store

    Dimensions:

    • Time: Q1, Q2, Q3, Q4
    • Item: Electronics, Clothing, Groceries
    • Location: New York, Los Angeles, Chicago

    How To Create Pivot Table & Pivot Chart

    The following things need to be followed

    Step [1] – Before Pivot Table Ensure Your Data Correct Format

    Ensure your data is structured correctly.

    • Format: Use a table or list format with clear headers in the first row.
    • No Blank Rows/Columns: Ensure there are no empty rows or columns within the dataset.
    • Consistent Data: Data should be consistent (e.g., dates in one column, numbers in another).

    Step [2] –

    [2.1]Select the Data: Highlight the entire dataset (including headers).

    [2.2] – Go to “Insert” Tab: Click on the “Insert” tab in Excel.

    [2.3] – Choose Pivot Table:

    • Click on “Pivot Table” in the Tables group.

    [2.4]- Select Pivot Table Location:

    • New Worksheet: Places the Pivot Table in a new sheet. or
    • Existing Worksheet: Allows you to specify the location.

    Note:: For best result always try to select New Worksheet

    [2.5] – Click “OK.”

    Step [3] – Build the Pivot Table

    Filters (Optional): Add a field to the Filters area to filter data dynamically.

    A blank Pivot Table field list appears.

    Drag and Drop Fields:

    Rows: Drag a categorical field (e.g., Physical store, Country Name) into the “Rows” area.

    Values: Drag a numerical field (e.g., List Price, Actual Price) into the “Values” area.

    Columns (Optional): Drag another field (e.g., Date) to see data across columns.

    Step [4] – Physical Store in Rows & List Price in Values, by default List Price display sum of list price corresponding to physical store.

    [4.1] – Grand Total = Sum of all Physical Store List Price

    [4.2] – Right Click any of (rows) Numeric value of (Sum of List Price)–>display

    • Sort
    • Summarize Values By
    • Show Values At

    [4.3] – Summarize Values By

    [a] – If Select Summarize Values By –> Count , result as

    [b] – If Select Summarize Values By –> Average , result as

    Once Select — Summarize Values By –> Average

    [c] – If Select Summarize Values By –> Max , result as

    Once Select — Summarize Values By –> Max

    [d] – If Select Summarize Values By –> Min , result as

    Once Select — Summarize Values By –> Min

    [4.4] – Show Values As

    –Once Select — Show Values As –> % of Grand Total

    [4.5] – Sort->Smallest To Largest or Sort->Largest To Smallest

    [a] Sort->Smallest To Largest result

    [b] Sort->Largest To Smallest result

    How To Install Magento 2 PWA studio frontend in Windows XAMPP

    Step [1] –To install Node.js, download it from https://nodejs.org/

    Step [2] – To install Yarn, you can use the following command after Node.js is installed

    npm install -g yarn

    Step [3] –Now Check version of Node & Yarn

     node -v  (For node version checker)

    yarn -v (For yarn version checker)

    Above command indicate Node & Yarn has been installed properly

    Step [4] – Clone PWA Studio

    Open a terminal and navigate to your Magento root directory

    Clone the PWA Studio repository

    Step [5] – Installation of PWA Studio Dependencies:

    Once Clone clone of PWA Studio repository done

    Go To cd pwd-studio & run below yarn command

    yarn install
    

    Step [6] –

    Step [7] –

    Step [8] –

    Step [9] –

    Step [10] –

    Step [11] –

    Step [12] –

    Magento 2 Cloud Console Command Installation Steps in WSL Windows

    Follow below Cloud Console Command steps to login in WSL Windows

    Step [1] – Update Package Lists: Ensure your package lists are up to date

    sudo apt update

    Step [2] – Install Required Dependencies: Install PHP and other necessary dependencies:

    sudo apt install php-cli php-curl php-zip unzip curl

    Step [3] – Download and Install magento-cloud CLI: Use the following command to download and install the magento-cloud CLI

    curl -sS https://accounts.magento.cloud/cli/installer | php

    Step [4] – Add magento-cloud CLI to the PATH: Add the magento-cloud CLI to your PATH by editing your .bashrc or .zshrc file

    echo 'export PATH="$HOME/.magento-cloud/bin:$PATH"' >> ~/.bashrc
    source ~/.bashrc

    Step [5] – Verify The Magent Cloud: Run the following command to check if the installation was successful or check magento cloud version

    magento-cloud --version

    Step [6] – Verify The List of Available Commands: To verify that the magento-cloud command is available, you can view list of available commands

    magento-cloud list

    Step [7] – magento-cloud login, once this command run below output URL

    http://127.0.0.1:5000

    If this URL normally does not work, follow below steps to API Token Authentication command to login inside Adobe Commerce Console.

    Step [7.1] – Generate API Token in Adobe Commerce Console.

    Step [7.2] – Run below command API Token Authentication command to login

    magento-cloud-cli auth:api-token-login

    Step [7.3] – Once above command run asking for token/password , need to put below token (Already Generated API Token in Adobe Commerce Console) & successfully login Magento cloud CLI & ready to selection different integration

    EFcMEi-K6p5Mq9poSkrvqX4gWNBP9ValEG3krC2eTyc , This Already Generated API Token in Adobe Commerce Console)

    Step [7.4] – To verify either inside Adobe Commerce Cloud login successfully

    magento--cloud version

    Step [7.5] – How To Check  Lists the environments in the current project 

    magento-cloud environment:list

    Step [7.8] – How To Check, Lists variables in the current environment 

    magento-cloud variables

    How To Fetch Files or Repo From Private Repository packagist.com or repo.packagist.com

    Packagist hosts a vast collection of PHP packages, from well-known libraries to smaller community-contributed ones. This repository includes libraries for tasks like authentication, database handling, routing, validation, and much more.

    To configure files or repo from rom Private Repository packagist.com https://packagist.com follow below steps.

    Step [1] –Login in rom Private Repository packagist.com by using your Butbucket / Github / GitLab

    Run on root directory of your Magento 2 / Adobe Commerce

    composer install

    Step [2] – One logged inside, private repository https://packagist.com/

    Go To Setup Authentication >> Composer Config Command

    on the root directory of your Magento Clone Files run below command

    composer config --global --auth http-basic.repo.packagist.com "Your Name" packagist_uut_kt4yti5vqgkuebbx0iyzlhdmf3amp6owr2ojlsxzu8vfeasn17cnjwgr

    This command will create auth.json with username & password setup of packagist.com(repo.packagist.com) & fetch all stored packages in your local

    Step [3] – Once step2 done check auth.json created with proper values from repo.packagist.com

    Step [4] – Run composer install again

    composer install 

    Now all packages from Private Repository (packagist.com) or repo.packagist.com will be downloaded properly.

    How To Install / Uninstall PHP 8.1, MYSQL, NGINX & Composer in Windows 10/11 WSL Ubuntu

    Step [1] – Installation NGINX

    sudo apt install
    sudo apt install nginx
    sudo service nginx start

    Step [2] – Install php 8.1

    sudo apt install php8.1 libapache2-mod-php8.1 php8.1-common php8.1-gmp php8.1-curl php8.1-soap php8.1-bcmath php8.1-intl php8.1-mbstring php8.1-xmlrpc php8.1-mysql php8.1-gd php8.1-xml php8.1-cli php8.1-zip

    If php 8.1 not started

    run below command

          sudo add-apt-repository ppa:ondrej/php
          sudo apt update
          sudo apt install php8.1-fpm
    
    Finally it will restart as below
    sudo systemctl start php8.1-fpm
    

    Step [3] – Run command to check php.ini path

    php --ini | grep "Loaded Configuration File"

    Step [4] – Below Settings need to modify in php.ini

    max_execution_time = 5000 
    
    max_input_time = 5000 
    
    memory_limit = -1
    
    post_max_size = 900M 
    
    upload_max_filesize = 900

    Below extension need to enable

    extension=intl
    extension=curl
    extension=soap
    extension=sockets
    extension=sodium
    extension=xsl
    extension=zip
    extension=gd

    restart nginx & php8.1-fpm

    sudo systemctl restart nginx
    sudo systemctl restart php8.1-fpm

    Step [5] – Install MySQL 8 and Create a Database

    [5.1] Install Mysql Server

     sudo apt install mysql-server

    [5.2] Start mysql service

    sudo systemctl start mysql

    [5.3] Enable mysql service

    
    sudo systemctl enable mysql

    [5.4] Go inside mysql

    sudo mysql -u root -p

    where username = root & password = root123

    [5.4] – Mysql Secure Installation

    here change password & new password as below

    mysql username = root

    mysql password = Noida123!@#

    [5.5] – Create custom database with username / password for newly created database magento246p1

    Username = magento246p1

    Password= TYfd1@#23asD

    Database name = magento246p1

    create USER 'magento246p1'@'localhost' IDENTIFIED  by 'TYfd1@#23asD';
    
    GRANT ALL ON magento246p1.* TO 'magento246p1'@'localhost';
    
    flush privileges;
    

    Finally your database magento246p1 is ready for use

    Step [6] – Composer Installation

    sudo curl -sS https://getcomposer.org/installer -o composer-setup.php
    sudo php composer-setup.php –install-dir=/usr/local/bin –filename=composer

    To Check either composer working fine

    Step [7] – Remove composer-setup.php

    Once installed composer, It is file composer-setup.php created, we do not need this file, need to remove

    Step [8] – Elastic Search Installation

    sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.deb

    Note:: this command will take smore time, please be patience !

    sudo wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-amd64.deb.sha512

    shasum -a 512 -c elasticsearch-8.3.2-amd64.deb.sha512
    sudo dpkg -i elasticsearch-8.3.2-amd64.deb

    Once Below command run & display as ok — Elastic Search packaged installed.

    shasum -a 512 -c elasticsearch-8.3.2-amd64.deb.sha512

    Step [9] – Elasticsearch Start command

     sudo systemctl daemon-reload
     sudo systemctl enable elasticsearch.service
     sudo systemctl start elasticsearch.service
     sudo systemctl restart elasticsearch

    To check status of Installed Elasticsearch

    sudo systemctl status elasticsearch

    If the service is active (running), it should look like this:

    Step [9] – Install below PHP essential pkg for Magento 2.4.x

    sudo apt update
    sudo apt install php8.1-curl
    
    
    
    sudo apt update
    sudo apt install php8.1-intl
    
    
    sudo apt update
    sudo apt install php8.1-soap
    
    sudo apt update
    sudo apt install php8.1-sodium
    
    
    sudo apt update
    sudo apt install php8.1-xml
    
    
    sudo apt update
    sudo apt install php8.1-zip
    
    sudo apt update
    sudo apt install php8.1-gd
    
    

    Once Installed run

    sudo systemctl restart nginx
    sudo systemctl restart php8.1-fpm

    PHP command check all installed module

    php -m

    Step [10] – Now run Magento2.4.6 composer repository

    composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition 2.4.6

    Step [11] – Run below command to install magento 2.4.6

    php bin/magento setup:install --base-url="http://localhost/magento246/2.4.6/" --db-host="localhost" --db-name="magento246p1" --db-user="magento246p1" --db-password="TYfd1@#23asD" --admin-firstname="admin" --admin-lastname="admin" --admin-email="admin@admin.com" --admin-user="admin" --admin-password="admin123" --language="en_US" --currency="INR" --timezone="America/Chicago" --use-rewrites="1" --backend-frontname="admin"

    During installation If Elasticsearch issue / error

    Elasticsearch issue / error Solution:

    Open the Elasticsearch configuration file and make necessary adjustments:

    sudo nano /etc/elasticsearch/elasticsearch.yml

    Disable security features for simplicity:

    xpack.security.enabled: false

    Restart Elasticsearch to apply changes:

    sudo systemctl restart elasticsearch

    To verify Elasticsearch working fine

    http://localhost:9200/

    Step [12] – Once Elasticsearch issue resolved, run again

    php bin/magento setup:install –base-url=”http://localhost/magento246/2.4.6/” –db-host=”localhost” –db-name=”magento246p1″ –db-user=”magento246p1″ –db-password=”TYfd1@#23asD” –admin-firstname=”admin” –admin-lastname=”admin” –admin-email=”admin@admin.com” –admin-user=”admin” –admin-password=”admin123″ –language=”en_US” –currency=”INR” –timezone=”America/Chicago” –use-rewrites=”1″ –backend-frontname=”admin”

    If Message displaying as below, indicates, Magento 2 Installation has been successfully installed.

    [SUCCESS]: Magento installation complete.
    [SUCCESS]: Magento Admin URI: /admin

    Run below CLI Command

    php bin/magento deploy:mode:set developer
    php bin/magento setup:upgrade
    php bin/magento setup:static-content:deploy -f
    php bin/magento indexer:reindex
    php bin/magento cache:clean
    php bin/magento cache:flush

    Finally Magento 2.4.6 Community Edition / Open Source has been installed

    Step [13]- Once Installed , correct file permission

    sudo chown -R www-data:www-data /var/www/html/magento246/2.4.6
    sudo find /var/www/html/magento246/2.4.6 -type f -exec chmod 644 {} \;
    sudo find /var/www/html/magento246/2.4.6 -type d -exec chmod 755 {} \;
    
    
    
    sudo chown -R www-data:www-data /var/www/html/magento246/2.4.6/pub/static
    sudo chown -R www-data:www-data /var/www/html/magento246/2.4.6/var
    sudo chmod -R 755 /var/www/html/magento246/2.4.6/pub/static
    sudo chmod -R 755 /var/www/html/magento246/2.4.6/var

    Once your Machine (Windows WLS 2) opened run below command to start services

    sudo systemctl start nginx
    sudo systemctl start php8.1-fpm
    
    sudo service mysql start
    sudo systemctl status mysql
    sudo systemctl restart mysql
    
     sudo systemctl daemon-reload
     sudo systemctl enable elasticsearch.service
     sudo systemctl start elasticsearch.service
    https://magento.stackexchange.com/questions/219762/magento-2-css-and-js-not-working-after-install