# Self-hosted Asset Management System with Snipe-IT on Windows

1. Download XAMPP Download
2. Download Snipe-IT Download
3. Download Microsoft Visual C++ Download
4. Download Composer Download
5. Install Microsoft Visual C++
6. Right click the downloaded XAMPP .zip file > Extract All...
7. Right click the downloaded Snipe-IT .zip file > Extract All...
8. Rename the extracted folder snipe-it
9. Cut the snipe-it folder inside the XAMPP directory
10. Copy the extracted XAMPP directory to a safe location to run from, C:\Program Files for example
11. Run XAMPP/setup_xampp.bat to update the configuration files with the new server location
12. Navigate to XAMPP/php and edit php.ini
13. Find the following line and remove the ; to uncomment them

    extension=ldap

14. Save the changes to php.ini
15. Navigate to XAMPP/apache/conf and edit httpd.conf
16. Paste the following configuration at the bottom of the file, update the folder paths as needed

    Alias /snipe-it "C:/Program Files/xampp/snipe-it/public/"
    <Directory "C:/Program Files/xampp/snipe-it/public">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
    </Directory>

17. Save the changes to httpd.conf
18. Install Composer
19. Navigate to the XAMPP/snipe-it folder > Right click in the white space > Open PowerShell window here...
20. Run the following command to download dependencies
    # create a copy of the sample .env file
    cp .\.env.example .\.env
    # install dependencies with composer
    composer i --no-dev --prefer-source
    # generate app key, type yes to confirm generating a new key
    php artisan key:generate
    # edit .env in notepad
    notepad .\.env
21. Modifying the following key/value pairs in .env as needed

    APP_ENV=production
    APP_DEBUG=false
    APP_KEY=SomethingSecure
    APP_URL=http://debian/snipe_it
    APP_TIMEZONE='America/New_York'
    APP_LOCALE=en
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_DATABASE=snipe_it
    DB_USERNAME=snipe_it_rw
    DB_PASSWORD=$nip3-IT!
    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.i12bretro.local
    MAIL_PORT=25
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    MAIL_FROM_ADDR=snipe-it@i12bretro.local
    MAIL_FROM_NAME='Snipe-IT'
    MAIL_REPLYTO_ADDR=snipe-it@i12bretro.local
    MAIL_REPLYTO_NAME='Snipe-IT'
    MAIL_AUTO_EMBED_METHOD='attachment'

22. Save the changes to .env
23. Run XAMPP/xampp-control.exe
24. Click the Start button next to Apache and MySQL
25. Navigate to XAMPP/mysql/bin
26. Hold the SHIFT key and right click in the white space > Open PowerShell window here...
27. Type the following in the PowerShell window to setup the Snipe-IT database
    .\mysql -u root
    CREATE DATABASE snipe_it;
    GRANT ALL ON snipe_it.* to 'snipe_it_rw'@'localhost' IDENTIFIED BY '$nip3-IT!';
    FLUSH PRIVILEGES;
    EXIT;
    exit
28. Open a web browser and navigate to http://DNSorIP/snipe-it
29. Review the Pre-Flight Checks summary > Click the Next: Create Database Tables button
30. Once the database tables are created, Click the Next: Create User button
31. Create a user by inputting a site name, first name, last name, email address, username and password > Click the Next: Save User button
32. Welcome to Snipe-IT