Today we are talking about setting up your development environment so that you are prepped in working with Clarity eCommerce Framework and other Clarity development actions.
The first thing we're gonna do is start from scratch. What I am showing here is a virtual machine that we've set up with a blank Windows 10 install before any updates have been run. We're going to go through the full gamut.
With the first round of things to setup or install, the first thing you need to think about are what kinds of things do I need to install? What do we need to configure in Windows in order to be prepped and ready for development? Some of the stuff we know we're gonna need to install are things like the different browsers like Chrome and Firefox and making sure Internet Explorer is enabled in addition to Edge.
In some cases you may want to install other browsers if you're doing front end development such as Safari. However, in most of those cases you're probably gonna want to use BrowserStack instead which is a website that will create a virtual machine with just a particular version of Mac or Linux or Windows and whatever version of browser you need it to load up for compatibility purposes. So that's where you'll be doing a lot of that there but if it's faster and easier for you and you know that you're up applying it appropriately, you're welcome to install those things locally (just not to the servers).
There is the IDE software like Visual Studio and Visual Studio Code, ReSharper, maybe you're installing WebStorm or PhpStorm, in order to work with those particular kinds of solutions. That's all specific to what you're doing. I'm going to run a lot of different installs here, of which some are not going to be required.
Since this is a raw Windows 10 install, I need to run the Windows Updates.
| Screenshot | Description |
|---|---|
| Go to the Start Menu and type "Check for updates". Sometimes it doesn't like to do that because the Windows* self-indexer hasn't finished running yet. | |
| If it doesn't come up, you can click the Start Pearl and choose the Settings gear on the left, then click on Update & Security. | |
| Now in the Updates screen, click Check for Updates or Install if it's already got them pre-loaded. Also go into the Advanced area and check Give me updates for other Microsoft products when I update Windows and Defer feature updates. |
While that is running, let's go over some configuration changes I normally use. You don't have to follow these but if you do, you'll be able to work more like how I do. Some of these changes won't really go into effect until after a reboot.
I normally make the following changes to the Windows Taskbar:
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|Screenshot |Description |
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|I remove icons I don't use from the bar, such as Cortana, TaskView and Edge or other programs I don't need there. |
| | |
| | |
| | |
|
| |
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|I go in and change the bar to only combine buttons when the bar is full as it's better for me to read the name when multiple windows are open than to have to mouse over it first |
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|On a Virtual Machine, I normally turn off all of the System Icons except the Clock but on local, I would keep the Network, Power and Volume icons as well. For tablets or touch screens, you may want to include Touch Keyboard. |
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|
|
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|In the start menu, I'm going to remove all the apps and things that I'm not going to use and then ones that I am going to use, I will change the size to small and organize them. I'll add the individual applications that we install after this at the same time towards the end.|
| | |
| | |
| | |
|
| |
+-------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
In Windows Server (Server builds only, not regular Windows 10), we will have to turn off IE Enhanced Advanced Security mode so that we can navigate to websites without having to add every domain we go to to a whitelist.
| Screenshot | Description |
|---|---|
| Open the Server Manager | |
| Click Local Server in the left side-bar and wait for the data to populate instead of saying "Unknown" everywhere | |
| You may need to scroll right to see the setting value, which is most likely "On" at this point | |
| Click the On and change both settings in the modal to Off, then click OK |
While you are here, you can change your time zone to the appropriate one. It normally defaults to Pacific (UTC-08:00).
Close the Server Manager.
Now I'm going to open the default browser (IE or Edge) and use it to go to Ninite where I can get a single install package that will install a bunch of programs for me instead of having to do them myself. Go to ninite.com and then check the following applications:
+-------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|Screenshot |Description |
+-------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|- Chrome\ |
| |- Firefox\ |
| |- 7-Zip\ |
| |- OneDrive\ |
| |- .NET 4.8\ |
| |- Silverlight\ |
| |- WinDirStat\ |
| |- FileZilla\ |
| |- Notepad++\ |
| |- WinMerge\ |
| |- Visual Studio Code\ |
| |- Any others you want to choose for your local |
+-------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|Now download the package and save it to the Downloads folder.\ |
| |\ |
| |Open File Explorer and navigate to the Downloads folder.\ |
| |\ |
|
|We can take care of a couple of settings while we are here:\ |
| |1. Right-click the whitespace under Network in the left side-bar and select Expand to current folder. This will let the side-bar follow you as you navigate folders.|
| |2. I normally also select Show all folders.\ |
| |3. I normally unpin all of the folders under Quick access.\ |
| |4. Change to List View.\ |
| |5. Click View > Options.\ |
| |6. Change Open File Explorer to This PC.\ |
| |7. Uncheck Show recently used files in Quick access and Show frequently used folders in Quick access.\ |
| |8. Click Apply.\ |
| |9. Switch to the View tab.\ |
| |10. Click Apply to Folders.\ |
| |11. Change Hidden files and folders radio toggle to Show....\ |
| |12. Uncheck Hide empty drives, Hide extensions for known file types.\ |
| |13. Check Launch folder windows in a separate process and Restore previous folder windows at logon.\ |
| |14. Click OK. |
+-------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|Close File Explorer and reopen it and navigate back to the Downloads folder. It probably looks like the screenshot to the left now. |
| | |
| |
|
+-------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
|Right-click the Ninite package and Run as Administr |
| | |
| |ator. Click Show details in the bottom left when the window comes up (there will be a prep window first). |
+-------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Next, we want to install and configure IIS. To do this, we have to go to Windows Features and turn it on with the settings we want. The end of this will require a reboot, so be careful not to trigger it unless the other installs from Ninite and Windows Update are at a stopping point.
| Screenshot | Description |
|---|---|
| For Windows 10 Look for Internet Information Web Services and when you check that with the spacebar, it automatically selected certain things but not others and we need to make some choices that are not the defaults. - Turn off FTP Server - Turn on Common HTTP Features - Turn on Health and Diagnostics - Turn on Security - Turn on WCF - Turn on HTTP Redirect - Turn on WebDAV - You can optionally include IIS 6 if you need a local mail server, but I don't recommend it as it's not worth doing. | |
| Right-click the Start Pearl and select Programs and Features then click Turn Windows Features on or off from the left side-bar. | |
| If the first screen you get is Before you begin, you can check Skip this page by default and then click Next. Choose Role-based or feature-based installation and click Next. Choose Select a server from the server pool and ensure that the local box is highlighted in the Server Pool box and click Next. Choose Web Server (IIS) from the list of Roles and click Next. | |
| f | Check the following Features if they are not checked: - .NET Framework 3.5 Features - Everything under .NET Framwork 4.6 Features except Message Queuing (MSMQ) activation - IIS Hostable Web Core - WebDAV Redirector Click Next. |
| Click Next again to see Role Services. Expand the entire tree so you can see it all at once and check the following options if not already checked: - Everything under Common HTTP Features - Everything under Health and Diagnostics - Everything under Performance - Everythung under Security - Everything under Application Development - IIS Management Scripts and Tools - Management Service - You can optionally include IIS 6 if you need a local mail server, but I don't recommend it as it's not worth doing. |
Click Next. Click Install. After continuing from this, it should download anything it needs from the internet and run the install.
Since we have configured several installs to run by now, we need to do a completion check here to ensure that they have all finished, including any reboots, until there are no further updates before continuing on to the next section.
Open Chrome
Sign In to Chrome
You should be given the opportunity to set Chrome as the Default Browser with a button but if you don't, you can set it using System > Default Apps
Load the plugins that you will need for development in Chrome, these are a few very helpful ones:
Push addons that you don't need to click off often to hide in the menu instead of the bar, I usually keep LastPass, uBlock and EditThisCookie out\

Whatever page you are on, open the Dev Tools in one of three ways:
Make the dev tools extra wide for now so we can manipulate settings, we can shrink it again after
In the top-right, thre is a vertical three dot menu where you can choose:





This contains development logins across many client domains to assist with getting logged in more quickly and easily\

node-v11.15.0-x64.msi from the above linkRedis-x64-3.2.100.msireceipts@clarity-ventures.com / qpzm9731 as the username and passwordReadMe.txt file
Restart the system to cement the recent changes and update PATH environment variables, this is important for the next steps.
npm install --global gulp-cli
Naming conventions: By convention, Clarity stores repositories in the "C:\Data\Projects{project acronym}" folder on the servers. You can arrange them on your local however you want, so long as you can recognize them without adding extensive time to your work day.
Local develop branch folders\

C:\CEF-Configsmklink /D "Link" "Target"cd "C:\Data\Projects\2019.3\_DEV\WEB9\Portals\_default\Skins\"mklink /D "Clarity-Admin" "C:\Data\Projects\2019.3\_DEV\CEF\08.Clarity.Ecommerce.UI.SKins\Clarity-Admin"Click "Add Application Pool..." 5 times and enter the following names:
Click "Add Website..."
In the "Connections" panel, right-click on the "Sites > DNN > DesktopModules > ClarityEcommerce" folder, then click "Add Application..."
In the "Connections" panel, right-click on the "Sites > DNN > DesktopModules > ClarityEcommerce" folder, then click "Add Application..."
In the "Connections" panel, right-click on the "Sites > DNN > DesktopModules > ClarityEcommerce" folder, then click "Add Application..."
In the "Connections" panel, right-click on the "Sites > DNN > DesktopModules > ClarityEcommerce" folder, then click "Add Application..."
In the "Connections" panel, right-click on the "Sites > DNN > DesktopModules > ClarityEcommerce" folder, then click "Add Virtual Directory..."
Right-click the "UI" virtual directory created above, then click "Add Virtual Directory..."
In the "Connections" panel, right-click on the "Sites > DNN > images" folder, then click "Add Virtual Directory..."
Update Windows hosts file
These instructions have been verified up to this point. From here there are general guide points but the exact step-by-step instructions have yet to be completed. There are multiple guides and videos which can walk you through this part.
npm_uber_install.bat to restore packagesClarity Application Setup Guide v2.4, stripped of duplicate steps
NT AUTHORITY\NETWORK SERVICE and a SQL Login named SQLLogin with password p4ssw0rd is added as a dbowner.CEF_20193_DEV\\fileshare.corp.claritymis.com\NASShare2\Data\Database\SQLB\DNN9_CEF_2019_2 and copy the latest .bak file in it's folder to your localOpen the CEF .sln file in VS Restore Nuget Packages
Open file explorer to C:\Data\Projects\2019.3\_DEV\CEF\08.Clarity.Ecommerce.UI
npm-uber-install.bat and run as administrator Open command promptcd C:\Data\Projects\2019.3\_DEV\CEF\08.Clarity.Ecommerce.UI or type cmd in the file path of this foldergulp build