Skip to content

Common configuration of applications built with a Dotnet Core backend and React frontend

Notifications You must be signed in to change notification settings

wintondeshong/AndcultureCode.DotnetReact.Boilerplate

 
 

Repository files navigation

AndcultureCode.DotnetReact.Boilerplate Build Status codecov

Code name: Gravity Boots (GB)


Getting Started

Technologies

  • Dotnet Core 3.1
  • Node 8.16
  • NPM 6
  • React 16.13
  • SQL Server 2017+
  • TypeScript 3.8

Development Setup

1. Databases

SqlServer 2017 (Pending approval: could be PostgreSQL)
  1. Install Microsoft SQL Server 2017

  2. Create the following databases

  3. Configure user.

    • Get credentials from the appsettings.json file listed above.
    • Right click on Security, then select New > Login
      • Add login name
      • Select SQL Server authentication
        • Add password
        • Deselect Enforce password policy and Enforce password expiration
    • Select Server Roles from Select a Page
      • Local development: Select all
    • Select User Mapping from Select a Page
      • For both the development and test databases:
        • Local development: Select all role memberships

2. Backend: Dotnet Core CSharp

Install Dotnet Core 3.1 SDK & Runtime

3. Frontend: React TypeScript

Install NodeJS 8.16 / NPM 6

4. CLI

There is a central and-cli used to manage builds, tests, deployments, etc... for the various aspects of the project.

Install the and-cli tooling found at AndcultureCode.Cli

Below 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.

  • and-cli dotnet --restore - restore the dotnet solution
  • and-cli dotnet - running backend project
  • and-cli dotnet-test --by-project - running backend automated tests
  • and-cli dotnet -- --cli test db migrate - migrate the test database (Clean and Restore the project before running. Done with: and-cli dotnet -cRb)
  • and-cli migration --add MigrationName - generates an EF Core database migration based on code-first changes
  • and-cli migration --run MigrationName - runs (or reverts to) a specified EF Core database migration
  • and-cli webpack - running frontend
  • and-cli webpack-test - running frontend tests
  • and-cli webpack --restore - restore npm dependencies for frontend
  • 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)
  • cd frontend && npm run cypress:open - run functional test suite interactively
  • cd frontend && npm run cypress:open:working - run functional test suite interactively against working
  • cd frontend && npm run cypress:run - run functional test suite headlessly
  • cd frontend && npm run cypress:run:working - run functional test suite headlessly
  • cd frontend && npm run test:debug - starts web socket connection for easy editor independent interactive debugging https://create-react-app.dev/docs/debugging-tests/

Documentation

Engineering Documentation

Engineering Documentation covers the codebase (i.e. patterns, style, and best practices), software development, building, and deploying the project.

External Resources

External Resources cover requirements, high level architecture, design, and project management for the project.

Adding Documentation

About

Common configuration of applications built with a Dotnet Core backend and React frontend

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 61.2%
  • TypeScript 34.3%
  • CSS 2.7%
  • Other 1.8%