Aspnet Core React Template

screenshot of Aspnet Core React Template
react
bootstrap

ASP.NET Core 3.1 / React SPA Template App

Overview

The ASP.NET Core / React SPA Template App is a template application using ASP.NET Core 3.1 for a REST/JSON API server and React for a web client. It utilizes various technologies such as PostgreSQL, Entity Framework Core, JSON Web Token (JWT) authorization, and Docker for development purposes. The app also includes features for testing and DevOps, making it a comprehensive solution for building web applications.

Features

  • ASP.NET Core 3.1 server for REST/JSON API
  • React 16 for web client
  • PostgreSQL 10 for database
  • Entity Framework Core with EF Migrations for managing database migrations
  • JSON Web Token (JWT) authorization for secure authentication
  • Docker used for setting up a PostgreSQL database and a MailCatcher server
  • Webpack for asset bundling and Hot Module Replacement (HMR)
  • CSS Modules for modular and scalable CSS styling
  • Fetch API for making REST requests
  • Testing with xUnit for .NET Core and Enzyme for React components
  • MailCatcher for simulating email delivery during development
  • Ansible playbook for provisioning a server, including Nginx reverse proxy, SSL via Let's Encrypt, and PostgreSQL backups to S3
  • Ansible playbook for deployment
react
React

React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components

bootstrap
Bootstrap

Bootstrap is the most popular CSS Framework for developing responsive and mobile-first websites.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.