To get started locally, follow these instructions:
- Make sure that you have all Prerequisites installed
- Make fork from the latest platform source code from master branch
- Clone to your local computer using
git
git clone https://github.com/VirtoCommerce/vc-platform.git
To make a local build
- Open console
cd src/VirtoCommerce.Platform.Web
- Build
dotnet build -c Development
Or use Visual Studio
- Open VirtoCommerce.Platform.sln in Visual Studio
- Build Solution
!!! note While building the solution the first time from the Visual Studio, npm references should be installed and webpack should be built automatically. This would be done if Web project have this nuget package added - VirtoCommerce.BuildWebpack. It adds webpack build target to the project, which create frontend bundles on initial build._ In case of changing frontend part, explicit local build would be required to pack style/script bundles._
- Open console
cd src\VirtoCommerce.Platform.Web
- Install the dependencies
npm ci
- Build frontend application
npm run webpack:build
- Watch changes
npm run webpack:watch
- Open the appsettings.json file in a text editor
- In the ConnectionStrings section change VirtoCommerce node (provided user should have permission to create new database):
"ConnectionStrings": { "VirtoCommerce" : "Data Source={SQL Server URL};Initial Catalog={Database name};Persist Security Info=True;User ID={User name};Password={User password};MultipleActiveResultSets=True;Connect Timeout=30" },
- In the Assets section set public url for assets
Assets:FileSystem:PublicUrl
with url of your application, this step is needed in order for display images"Assets": { "Provider": "FileSystem", "FileSystem": { "RootPath": "~/assets", "PublicUrl": "http://localhost:10645/assets/" <-- Set your platform application url with port localhost:10645 }, },
- In the Content section set public url for content
Content:FileSystem:PublicUrl
with url of your application, this step is needed in order for configure CMS content storage"Content*": { "Provider": "FileSystem", "FileSystem": { "RootPath": "~/cms-content", "PublicUrl": "http://localhost:10645/cms-content/" <-- Set your platform application url with port localhost:10645 }, },
To run platform by dotnet CLI:
- Open console
cd src\VirtoCommerce.Platform.Web
- Run
dotnet run -c Development --no-launch-profile
!!! note
you can add --no-build
flag to speed the start, if you have compiled the solution already.
Or run from Visual Studio
- Open
VirtoCommerce.Platform.sln
- Set VirtoCommerce.Platform.Web as Startup Project
- Go to Debug > Start Debugging (or Press F5)
- Open
http://localhost:10645
in the browser - On the first request the application will create and initialize database. After that you should see the sign in page. Use the following credentials:
admin/store
to sign in
Note: Don't forget to change them after the first sign in.
- Install and run platform as described in steps above
- Open the module solution in Visual Studio and attach the debugger to the
VirtoCommerce.Platform.Web.exe
process
- Frontend supports debugging in Chrome.
- Open Chrome Developer Tools (Press F12)
- Open Sources tab
- Navigate to
{module-name}/./Script/
- Debug code
There is tests
folder with suites which can be run locally.
Some additional tips for developing in specific IDEs.
!!! note
If you have node-sass issues, run this command
console npm rebuild node-sass
Run to trust the .NET Core SDK HTTPS development certificate:
dotnet.exe dev-certs https --trust
Read more about enforcing HTTPS in ASP.NET Core.
Restart the Platform to load the new module assemblies into the Platform's application process Recommend to install WebPack Task Runner and run webpack tasks from Visual Studio.