{"id":26871558,"url":"https://github.com/rob-bl8ke/prototype-celeb-dating","last_synced_at":"2026-06-29T16:31:10.932Z","repository":{"id":247035700,"uuid":"822650078","full_name":"rob-bl8ke/prototype-celeb-dating","owner":"rob-bl8ke","description":"Explores the upgrade to Angular 18 as well as the newer features of Angular 18","archived":false,"fork":false,"pushed_at":"2024-12-04T19:30:34.000Z","size":213,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-27T19:32:20.504Z","etag":null,"topics":["angular","dotnet-core","self-signed-certificate"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rob-bl8ke.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-01T14:43:35.000Z","updated_at":"2025-07-16T02:37:43.000Z","dependencies_parsed_at":"2025-03-31T07:20:02.072Z","dependency_job_id":"1426ef88-5b29-467f-9ec5-896e98afc019","html_url":"https://github.com/rob-bl8ke/prototype-celeb-dating","commit_stats":null,"previous_names":["rob-bl8ke/celeb-dating","rob-bl8ke/prototype-celeb-dating"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rob-bl8ke/prototype-celeb-dating","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-bl8ke%2Fprototype-celeb-dating","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-bl8ke%2Fprototype-celeb-dating/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-bl8ke%2Fprototype-celeb-dating/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-bl8ke%2Fprototype-celeb-dating/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rob-bl8ke","download_url":"https://codeload.github.com/rob-bl8ke/prototype-celeb-dating/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-bl8ke%2Fprototype-celeb-dating/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34935259,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","dotnet-core","self-signed-certificate"],"created_at":"2025-03-31T07:20:03.270Z","updated_at":"2026-06-29T16:31:10.893Z","avatar_url":"https://github.com/rob-bl8ke.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# .NET Web API\n\n- Use `Developer: Reload Window` to solve 99% of your problems in VS Code.\n- To see what changes you've made to your VS Code Settings, open Settings and look for the \"Open Settings (JSON)\" button. This will show you all the global settings that you've made to VS Code.\n\n```\ndotnet run\n```\n\n- Check Swagger: `http://localhost:5151/swagger/index.html`.\n- [Learn more about configuring Swagger/OpenAPI](https://aka.ms/aspnetcore/swashbuckle)\n\n### Windows Security (Defender) blocking the executable.\n```\nUnhandled exception: System.ComponentModel.Win32Exception (5): An error occurred trying to start process ... . Access is denied.\n```\n- Go to Windows Security -\u003e Virus and Threat protection settings -\u003e Exclusions and add your exe to the exclusion list.\n\n## Required Developement Software\n- `node.js`\n- [Postman]\n- [NVM for Windows](https://winget.run/pkg/CoreyButler/NVMforWindows)\n\n### VS Code Extensions\n\n- [C# DevKit](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit) - One of the cool things added by this extension other than C# support is the \"Solution Explorer\" window.\n- [Nuget Gallery](https://marketplace.visualstudio.com/items?itemName=patcx.vscode-nuget-gallery) - It will create a new tab in your terminal window \"NUGET\". Use this window to manage packages.\n\nUse `dotnet new list` to see a list of project templates you can use to create .NET projects.\n\n```\ndotnet new sln\ndotnet new webapi -n API\ndotnet sln add API/API.csproj\n```\n\n## Development Commands\n\n```\ndotnet watch\n```\n`dotnet watch` enables hot reload (unless you've disable the feature in your `launchSettings.json`). Doesn't always work correctly. To run the API Server you'll use `dotnet watch --no-hot-reload`. To update the database after making changes you'll use `dotnet ef database update`. To run Angular you'll use use `ng serve`.\n\nTo disable hot reload you can try going to `Properties/launchSettings.json` and add the following piece of JSON. However this currently doesn't seem to work.\n\n```json\n{\n  \"profiles\": {\n    \"api\": {\n\t\t...\n      \"hotReloadEnabled\": false,\n\t\t...\n    }\n  }\n}\n```\n\nSo the option is just using `--no-hot-reload`.\n\n### .NET Core SDK\n\nUse `dotnet --info` to get information for your current SDK version and its build information as well as some information about your system. Other .NET SDK installations are also shown.\n\nUse `dotnet sdk check` to check the current support status, version status, and patch information for your installed .NET SDKs.\n\nIf you do have multiple versions of .NET installed and you wish to use a specific version that isn't the latest version you can specify this in a `global.json` file. You can generate this file using `dotnet new globaljson` in your project folder.\n\nIt creates a file like:\n\n```json\n{\n  \"sdk\": {\n    \"version\": \"7.0.101\"\n  }\n}\n```\n\n### Self-signed Certificate\n\n.NET should install a self-signed certificate when the SDK is installed so that it's trusted by the browser but if you're getting certificate problems try running:\n\n```\ndotnet dev-certs https --clean\ndotnet dev-certs https --trust\n```\nYou'll need to run the above commands as an administrator.\n\n## Installing Entity Framework and SQLite\n\nEnsure to install the following two packages:\n\n- `Microsoft.EntityFrameworkCore.Sqlite`\n- `Microsoft.EntityFrameworkCore.Design` - Code-first.\n\n### When using code-first EF is used for...\nPerforming database operations such as querying, change tracking, saving, concurrency (default is optimistic concurrency), transactions, caching, built-in conventions, and database schema migrations.\n\n### SQLite Extension\nInstall the SQLite extension by `alexcvzz` to view your database. You'll open the command palatte with CTRL+SHIFT+P... And choose the option to open a database. Your database will show up in the list if you've already done a `dotnet ef database update` and you'll be able to access it in your explore pane. Look for SQLite Explorer.\n\nTake a look at `appsettings.Development.json` to see how the connection string is added.\n\nOpen the SQLite explorer by using the `CTRL+SHIFT+P` shortcut. Pick our database. You'll see a pane appear under your explorer pane in VS Code.\n- Righ click on a table to view, query, etc.\n\n#### Important information regarding `appsettings` files\n\nThese files SHOULD NOT be saved to source control (especially the production settings) as they can contain sensitive information such as database connection strings. In this case its fine as the only database used is created locally.\n\n### Data Migrations\n\n- [`dotnet-ef` on `nuget`](https://www.nuget.org/packages/dotnet-ef/)\n- Use `dotnet tool install --global dotnet-ef --version` in order to install `dotnet-ef`. You'd normally want to install this globally unless you need a specific version for a specific project.\n- Use `dotnet tool list` to get the listing of tools. This will display the `dotnet-ef` version if one is installed. Use `dotnet tool list -g` to see the global tool list. `dotnet tool list --local` to list all locally installed tools.\n```\ndotnet tool install --global dotnet-ef --version 8.0.6\ndotnet ef migrations -h\ndotnet ef migrations add InitialCreate -o Data/Migrations\n```\nIf you get the following error (which you've done twice in a row now):\n\n```\nSQLite Error 1: 'no such table: __EFMigrationsHistory'.\n```\nTake a good look at where you've added the `ConnectionStrings` property. Twice you've added it under \"Logging\" in `appsettings.Development.json`.\n```\n\"ConnectionStrings\": {\n  \"DefaultConnection\": \"Data source=datingapp.db\"\n}\n```\nFor whatever reason, you may wish to use a specific version of dotnet-ef for a project (perhaps you’re learning something on Udemy). You can set up a manifest file for your solution. Take a look at [this article](https://learn.microsoft.com/en-us/dotnet/core/tools/local-tools-how-to-use). When you create a new tool manifest it will create a file here: .config\\dotnet-tools.json and add your version to it.\n\nThe commands that you can use are also listed on the [official nuget](https://www.nuget.org/packages/dotnet-ef/) dotnet-ef site.\n\n### Updating the database\n\nBefore running the `dotnet-ef database update` it will be useful to make sure your solutions builds with a `dotnet build`.\n\n\n\n# Angular\n\n```\nng new client\n```\n```\n? Which stylesheet format would you like to use? CSS             [ https://developer.mozilla.org/docs/Web/CSS                     ]\n? Do you want to enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering)? (y/N) N\n```\n```\n? Which stylesheet format would you like to use? CSS             [ https://developer.mozilla.org/docs/Web/CSS                     ]\n? Do you want to enable Server-Side Rendering (SSR) and Static Site Generation (SSG/Prerendering)? No\n```\n\n```\ncd client\nng serve\n```\n\n## Standalone Components\n\nFrom Angular 16, the default is to use stand-alone components instead of the old modular style where one would declare all components inside an app module (`app.module.ts`).\n\n# Recommended VS Code Settings\n\n## Brackets\nYou should ensure the setting \"Editor \u003e Bracket Pair Colorization:Enabled\" is set. Also \"Editor \u003e Guides: Bracket Pairs\" should be set to true. Also set \"Editor: Auto Closing Brackets\" to always and \"Auto Closing Quotes\" to always.\n\n# References\n\n- [`DatingApp`](https://github.com/trycatchlearn/datingapp) and [here on Udemy](https://www.udemy.com/course/build-an-app-with-aspnet-core-and-angular-from-scratch)\n  - also take note of the [legacy code for Angular 16](https://github.com/TryCatchLearn/DatingApp-DotNet7Angular16)\n\n# VS Code Extensions\n\n- [Angular Language Service](https://marketplace.visualstudio.com/items?itemName=Angular.ng-template)\n- [C# DevKit](https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.csdevkit)\n- [C# Extensions](https://marketplace.visualstudio.com/items?itemName=kreativ-software.csharpextensions)\n- [GitHub Pull Requests and Issues](https://marketplace.visualstudio.com/items?itemName=GitHub.vscode-pull-request-github)\n- [Material Icon Theme](https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme)\n- [Nuget Gallery](https://marketplace.visualstudio.com/items?itemName=patcx.vscode-nuget-gallery)\n- [Prettier - Code formatter](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)\n- [SQLite](https://marketplace.visualstudio.com/items?itemName=alexcvzz.vscode-sqlite)\n\n\n### Angular Links\n\n- [Angular Compatibility Guide](https://angular.dev/reference/versions) - Angular, Node, TypeScript and RxJs compatibility sets.\n- [Angular versioning and releases](https://angular.dev/reference/releases)\n- [npm Semantic Versioning](https://docs.npmjs.com/about-semantic-versioning) - How it works and what the carats and squigglies mean.\n\n### Node Packages\n- [ng-gallery](https://www.npmjs.com/package/ng-gallery)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frob-bl8ke%2Fprototype-celeb-dating","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frob-bl8ke%2Fprototype-celeb-dating","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frob-bl8ke%2Fprototype-celeb-dating/lists"}