{"id":22278667,"url":"https://github.com/rsm-hcd/andculturecode.dotnetreact.boilerplate","last_synced_at":"2025-08-12T13:07:10.748Z","repository":{"id":37074408,"uuid":"271578338","full_name":"rsm-hcd/AndcultureCode.DotnetReact.Boilerplate","owner":"rsm-hcd","description":"Common configuration of applications built with a Dotnet Core backend and React frontend","archived":false,"fork":false,"pushed_at":"2023-03-03T17:10:38.000Z","size":6867,"stargazers_count":6,"open_issues_count":50,"forks_count":13,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-07-28T18:46:56.882Z","etag":null,"topics":["api","boilerplate","csharp","dotnet-core","hacktoberfest","react","reactjs","typescript","web-application"],"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/rsm-hcd.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}},"created_at":"2020-06-11T15:13:35.000Z","updated_at":"2023-11-27T12:49:52.000Z","dependencies_parsed_at":"2023-02-15T03:31:58.483Z","dependency_job_id":null,"html_url":"https://github.com/rsm-hcd/AndcultureCode.DotnetReact.Boilerplate","commit_stats":null,"previous_names":["rsm-hcd/andculturecode.dotnetreact.boilerplate"],"tags_count":6,"template":true,"template_full_name":null,"purl":"pkg:github/rsm-hcd/AndcultureCode.DotnetReact.Boilerplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rsm-hcd%2FAndcultureCode.DotnetReact.Boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rsm-hcd%2FAndcultureCode.DotnetReact.Boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rsm-hcd%2FAndcultureCode.DotnetReact.Boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rsm-hcd%2FAndcultureCode.DotnetReact.Boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rsm-hcd","download_url":"https://codeload.github.com/rsm-hcd/AndcultureCode.DotnetReact.Boilerplate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rsm-hcd%2FAndcultureCode.DotnetReact.Boilerplate/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270065441,"owners_count":24520946,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-12T02:00:09.011Z","response_time":80,"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":["api","boilerplate","csharp","dotnet-core","hacktoberfest","react","reactjs","typescript","web-application"],"created_at":"2024-12-03T15:15:26.638Z","updated_at":"2025-08-12T13:07:10.726Z","avatar_url":"https://github.com/rsm-hcd.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AndcultureCode.DotnetReact.Boilerplate\n![build status](https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/actions/workflows/build.yaml/badge.svg)[![codecov](https://codecov.io/gh/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/branch/main/graph/badge.svg)](https://codecov.io/gh/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate)\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-4-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\nCode name: Gravity Boots (GB)\n\n---\n\n## Getting Started\n\n### Technologies\n\n-   Dotnet Core 6.0\n-   Node 8.16\n-   NPM 6\n-   React 16.13\n-   SQL Server 2017+\n-   TypeScript 3.8\n\n### Development Setup\n\n#### 1. Databases\n\n##### SqlServer 2017 (Pending approval: could be PostgreSQL)\n\n1. Install [Microsoft SQL Server 2017](https://www.microsoft.com/en-us/sql-server/sql-server-downloads)\n\n2. Create the following database\n\n    - Development: `GravityBootsApi` (See [appsettings.json](./dotnet/api/Presentation/Web/appsettings.json) for details.)\n\n3. Configure user.\n    - Get credentials from the `appsettings.json` file listed above.\n    - Right click on Security, then select New \u003e Login\n        - Add login name\n        - Select SQL Server authentication\n            - Add password\n            - Deselect Enforce password policy and Enforce password expiration\n    - Select Server Roles from Select a Page\n        - Local development: Select all\n    - Select User Mapping from Select a Page\n        - For both the development and test databases:\n            - Local development: Select all role memberships\n\n#### 2. Backend: Dotnet Core CSharp\n\nInstall [Dotnet Core 3.1 SDK \u0026 Runtime](https://dotnet.microsoft.com/download/dotnet-core/3.1)\n\n#### 3. Frontend: React TypeScript\n\nInstall [NodeJS 8.16 / NPM 6](https://nodejs.org/dist/latest-v8.x/node-v8.16.1-x64.msi)\n\n#### 4. CLI\n\nThere is a central `and-cli` used to manage builds, tests, deployments, etc... for the various aspects of the project.\n\nInstall the `and-cli` tooling found at [AndcultureCode.Cli](https://github.com/AndcultureCode/AndcultureCode.Cli)\n\nBelow are a few basics to get you started, but there are many more commands and options for managing this and other projects found in the `and-cli`.\n\n-   `and-cli dotnet --restore` - restore the dotnet solution\n-   `and-cli dotnet` - running backend project\n-   `and-cli dotnet-test --by-project` - running backend automated tests\n-   `and-cli dotnet -- --cli test db migrate` - migrate the test database (Clean and Restore the project before running. Done with: `and-cli dotnet -cRb`)\n-   `and-cli migration --add MigrationName` - generates an EF Core database migration based on code-first changes\n-   `and-cli migration --run MigrationName` - runs (or reverts to) a specified EF Core database migration\n-   `and-cli webpack` - running frontend\n-   `and-cli webpack-test` - running frontend tests\n-   `and-cli webpack --restore` - restore npm dependencies for frontend\n-   `npm run all-tests` - runs all of the test suites (backend, functional, frontend) and runs a storybook build (run from the root of the repo)\n-   `cd frontend \u0026\u0026 npm run cypress:open` - run functional test suite interactively\n-   `cd frontend \u0026\u0026 npm run cypress:open:working` - run functional test suite interactively against working\n-   `cd frontend \u0026\u0026 npm run cypress:run` - run functional test suite headlessly\n-   `cd frontend \u0026\u0026 npm run cypress:run:working` - run functional test suite headlessly\n-   `cd frontend \u0026\u0026 npm run test:debug` - starts web socket connection for easy editor independent interactive debugging https://create-react-app.dev/docs/debugging-tests/\n\n## 5. Getting Started\n\nRestore the dotnet packages (first time only)\n\n    and-cli dotnet --restore\n\nRestore the NPM node modules (first time only)\n\n    and-cli webpack --restore\n\nStart the dotnet server\n\n    and-cli dotnet\n\nStart the webpack server\n\n    and-cli webpack\n\nOpen your browser and navigate to:\n\n    https://localhost:5001\n\n## Documentation\n\n### Engineering Documentation\n\n_Engineering Documentation_ covers the codebase (i.e. patterns, style, and best practices), software development, building, and deploying the project.\n\n-   [Architecture](./documentation/onion-architecture.md)\n-   [Background Jobs: Hangfire](./documentation/hangfire.md)\n-   [Caching](./documentation/caching.md)\n-   [Code Conventions](./documentation/code-conventions.md)\n-   [Entities](./documentation/entities.md)\n-   [Frontend Architecture](./documentation/frontend-architecture.md)\n-   [Git Workflow](./documentation/git-workflow.md)\n-   [Hangfire](./documentation/hangfire.md)\n-   [Shared Background Job Engine](./documentation/job-engine.md)\n-   [Storybook / KOP](./documentation/storybook.md)\n-   [Swagger Documentation](./documentation/caching.md)\n\n### External Resources\n\n_External Resources_ cover requirements, high level architecture, design, and project management for the project.\n\n-   [API Documentation](https://localhost:5001/api/docs)\n-   [JIRA](https://andculture.atlassian.net/jira/software/projects/GB/boards/301)\n\n### Adding Documentation\n\n-   Here is our [documentation style guide and template](./documentation/documentation-style-guide-and-template.md) to get started.\n-   Documentation should be written with Markdown and should have the `.md` extension. Bitbucket has a [Markdown Syntax Guide](https://confluence.atlassian.com/bitbucketserver/markdown-syntax-guide-776639995.html) for reference.\n-   For information on writing docs, go to [Write the Docs](https://www.writethedocs.org/).\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://winton.me\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/48424?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eWinton DeShong\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=wintondeshong\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=wintondeshong\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"#maintenance-wintondeshong\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/pulls?q=is%3Apr+reviewed-by%3Awintondeshong\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/brandongregoryscott\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/11774799?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eBrandon Scott\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=brandongregoryscott\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=brandongregoryscott\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/pulls?q=is%3Apr+reviewed-by%3Abrandongregoryscott\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"http://resume.dylanjustice.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/22502365?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDylan Justice\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=dylanjustice\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=dylanjustice\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/pulls?q=is%3Apr+reviewed-by%3Adylanjustice\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/Stefanie899\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/37462028?v=4?s=100\" width=\"100px;\" alt=\"\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eStefanie Leitch\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=Stefanie899\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/pulls?q=is%3Apr+reviewed-by%3AStefanie899\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/AndcultureCode/AndcultureCode.DotnetReact.Boilerplate/commits?author=Stefanie899\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frsm-hcd%2Fandculturecode.dotnetreact.boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frsm-hcd%2Fandculturecode.dotnetreact.boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frsm-hcd%2Fandculturecode.dotnetreact.boilerplate/lists"}