Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
39 changes: 39 additions & 0 deletions BookStore-Angular-MongoDb/Acme.BookStore.abpmdl
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"template": "app",
"imports": {
"Volo.Abp.LeptonXLiteTheme": {
"version": "5.4.1",
"isInstalled": true
},
"Volo.Abp.Account": {
"version": "10.4.1",
"isInstalled": true
},
"Volo.Abp.OpenIddict": {
"version": "10.4.1",
"isInstalled": true
},
"Volo.Abp.Identity": {
"version": "10.4.1",
"isInstalled": true
},
"Volo.Abp.TenantManagement": {
"version": "10.4.1",
"isInstalled": true
},
"Volo.Abp.PermissionManagement": {
"version": "10.4.1",
"isInstalled": true
},
"Volo.Abp.FeatureManagement": {
"version": "10.4.1",
"isInstalled": true
}
},
"folders": {
"items": {
"aspnet-core": {},
"angular": {}
}
}
}
25 changes: 25 additions & 0 deletions BookStore-Angular-MongoDb/Acme.BookStore.abpsln
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"id": "44a4f3ef-d1cb-4a90-a1e1-11d520b61010",
"template": "app",
"versions": {
"AbpFramework": "10.4.1",
"AbpStudio": "2.2.1",
"TargetDotnetFramework": "net10.0",
"LeptonX": "5.4.1"
},
"modules": {
"Acme.BookStore": {
"path": "Acme.BookStore.abpmdl"
}
},
"runProfiles": {
"Default": {
"path": "etc/abp-studio/run-profiles/Default.abprun.json"
}
},
"options": {
"httpRequests": {
"ignoredUrls": []
}
}
}
56 changes: 53 additions & 3 deletions BookStore-Angular-MongoDb/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,55 @@
# Web Application Development Tutorial
# BookStore Angular + MongoDB

This is an example project for the Web Application Development Tutorial documentation. See the documentation:
This sample implements the ABP Book Store tutorial with an Angular UI and MongoDB persistence. The backend is under `aspnet-core/`; the Angular application is under `angular/`.

**https://abp.io/docs/latest/Tutorials/Part-1?UI=NG&DB=Mongo**
Tutorial: https://abp.io/docs/latest/tutorials/book-store?UI=NG&DB=Mongo

## Prerequisites

- .NET 10.0 SDK
- ABP CLI 10.4.x
- Node.js 22 or later
- MongoDB

## Initial Tasks

This project includes ABP Studio metadata and initial tasks under `etc/`.

- `Initialize Solution` runs `abp install-libs` in `aspnet-core/`, runs `npm install` in `angular/`, and runs `Acme.BookStore.DbMigrator` to seed MongoDB.
- `Migrate Database` runs `Acme.BookStore.DbMigrator` to seed/update MongoDB data.

In ABP Studio, open `Acme.BookStore.abpsln`, select the `Default` run profile, and run `Initialize Solution` before the first launch.

## Run the Application

After the initial task completes, start these applications from ABP Studio:

- `Acme.BookStore.HttpApi.Host` at `https://localhost:44367`
- `Acme.BookStore.Angular` at `http://localhost:4200`

Manual run commands:

```powershell
cd aspnet-core/src/Acme.BookStore.HttpApi.Host
dotnet run
```

In a second terminal:

```powershell
cd angular
.\start.ps1
```

## Manual Setup

If you are not using ABP Studio, run these commands from the project root:

```powershell
cd aspnet-core
abp install-libs
cd ../angular
npm install
cd ../aspnet-core/src/Acme.BookStore.DbMigrator
dotnet run
```
5 changes: 5 additions & 0 deletions BookStore-Angular-MongoDb/angular/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@

This is a startup project based on the ABP framework. For more information, visit <a href="https://abp.io/" target="_blank">abp.io</a>

## Prerequisites

- Node.js 22 or later
- ABP CLI 10.4.x

## Development server

Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.
Expand Down
73 changes: 39 additions & 34 deletions BookStore-Angular-MongoDb/angular/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,53 +12,58 @@
},
"private": true,
"dependencies": {
"@abp/ng.account": "~10.0.0",
"@abp/ng.components": "~10.0.0",
"@abp/ng.core": "~10.0.0",
"@abp/ng.oauth": "~10.0.0",
"@abp/ng.identity": "~10.0.0",
"@abp/ng.setting-management": "~10.0.0",
"@abp/ng.tenant-management": "~10.0.0",
"@abp/ng.theme.shared": "~10.0.0",
"@abp/ng.theme.lepton-x": "~5.0.0",
"@angular/animations": "~20.0.0",
"@angular/common": "~20.0.0",
"@angular/compiler": "~20.0.0",
"@angular/core": "~20.0.0",
"@angular/forms": "~20.0.0",
"@angular/localize": "~20.0.0",
"@angular/platform-browser": "~20.0.0",
"@angular/platform-browser-dynamic": "~20.0.0",
"@angular/router": "~20.0.0",
"@abp/ng.account": "~10.4.1",
"@abp/ng.components": "~10.4.1",
"@abp/ng.core": "~10.4.1",
"@abp/ng.oauth": "~10.4.1",
"@abp/ng.identity": "~10.4.1",
"@abp/ng.setting-management": "~10.4.1",
"@abp/ng.tenant-management": "~10.4.1",
"@abp/ng.theme.shared": "~10.4.1",
"@abp/ng.theme.lepton-x": "~5.4.1",
"@angular/animations": "~21.2.0",
"@angular/common": "~21.2.0",
"@angular/compiler": "~21.2.0",
"@angular/core": "~21.2.0",
"@angular/forms": "~21.2.0",
"@angular/localize": "~21.2.0",
"@angular/platform-browser": "~21.2.0",
"@angular/platform-browser-dynamic": "~21.2.0",
"@angular/router": "~21.2.0",
"bootstrap-icons": "~1.8.3",
"rxjs": "~7.8.0",
"tslib": "^2.1.0",
"zone.js": "~0.15.0"
"zone.js": "~0.15.0",
"@abp/ng.account.core": "~10.4.1",
"@angular/aria": "~21.2.0",
"@angular/cdk": "~21.2.0"
},
"devDependencies": {
"@abp/ng.schematics": "~10.0.0",
"@angular-devkit/build-angular": "~20.0.0",
"@angular-eslint/builder": "~20.0.0",
"@angular-eslint/eslint-plugin": "~20.0.0",
"@angular-eslint/eslint-plugin-template": "~20.0.0",
"@angular-eslint/schematics": "~20.0.0",
"@angular-eslint/template-parser": "~20.0.0",
"@angular/build": "~20.0.0",
"@angular/cli": "~20.0.0",
"@angular/compiler-cli": "~20.0.0",
"@angular/language-service": "~20.0.0",
"@abp/ng.schematics": "~10.4.1",
"@angular-devkit/build-angular": "~21.2.0",
"@angular-eslint/builder": "~21.1.0",
"@angular-eslint/eslint-plugin": "~21.1.0",
"@angular-eslint/eslint-plugin-template": "~21.1.0",
"@angular-eslint/schematics": "~21.1.0",
"@angular-eslint/template-parser": "~21.1.0",
"@angular/build": "~21.2.0",
"@angular/cli": "~21.2.0",
"@angular/compiler-cli": "~21.2.0",
"@angular/language-service": "~21.2.0",
"@types/jasmine": "~3.6.0",
"@types/node": "~20.0.0",
"@typescript-eslint/eslint-plugin": "^5.36.2",
"@typescript-eslint/parser": "^5.36.2",
"@typescript-eslint/eslint-plugin": "^8.0.0",
"@typescript-eslint/parser": "^8.0.0",
"eslint": "^8.23.0",
"jasmine-core": "~4.0.0",
"karma": "~6.3.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage": "~2.1.0",
"karma-jasmine": "~4.0.0",
"karma-jasmine-html-reporter": "^1.7.0",
"ng-packagr": "~20.0.0",
"typescript": "~5.8.0"
"ng-packagr": "~21.2.5",
"typescript": "~5.9.0",
"@typescript-eslint/utils": "^8.0.0",
"@typescript-eslint/types": "^8.0.0"
}
}
4 changes: 2 additions & 2 deletions BookStore-Angular-MongoDb/angular/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"moduleResolution": "node",
"moduleResolution": "bundler",
"importHelpers": true,
"target": "ES2022",
"module": "es2020",
"module": "ES2022",
"lib": [
"es2018",
"dom"
Expand Down
Loading