This content originally appeared on DEV Community and was authored by Prince Owusu
NextSolution V2 is a robust starter template for building full-stack applications that combine an ASP.NET API, a Next.js (React) web app, and an Expo (React Native) mobile app. This is an all-in-one solution for developers looking to create powerful APIs with responsive web and mobile interfaces.
Motivation Behind NextSolution V2
The first version of NextSolution gained significant traction, with a steady increase in NuGet downloads and GitHub stars. This positive feedback inspired me to create V2, featuring an improved codebase and more organized patterns. I hope this updated version further enhances your development workflow. 🙌
👉 If this project helps you, please consider sponsoring me on GitHub to support its continued development. Thank you! 🙏
Expo App Demo
https://github.com/user-attachments/assets/e33f0f81-c978-48c2-9a82-1f90102e6b7b
Next App Demo
https://github.com/user-attachments/assets/5c7b1698-a583-4d05-914a-20deb0257dd0
Getting Started
Follow these steps to get your development environment up and running.
Prerequisites
Before you begin, ensure you have the following installed:
- Visual Studio 2022 or later
- Visual Studio Code (optional)
- .NET 8.0 SDK (latest version)
- Node.js v20 (latest version, only required if you are using Next.js or Expo)
Installation
To set up your project using the NuGet template, follow these steps:
1. Install the NuGet template:
Open your terminal or command prompt and run the following command to install the template:
dotnet new --install NextSolution.Template::2.0.0
Note: Check for the latest version of the template on NuGet to ensure you are using the most recent release.
2. Create a New Project Using the Template:
After installing the template, you can either continue using the terminal or command prompt, or switch to Visual Studio to create the new project:
- Using the terminal or command prompt:
Generate a new project by running the following command. Replace YourProjectName
with your desired project name:
dotnet new nextsln -o YourProjectName --include-expo --include-next --configure-ngrok
-
--include-expo
: Include Expo project in the solution (Ngrok is recommended for exposing APIs to your Expo app). -
--include-next
: Include Next.js project in the solution. -
--configure-ngrok
: Configure Ngrok tunneling (requires signing up at Ngrok to obtain your token and a custom domain).
Move into the newly created project directory:
cd YourProjectName
Restore the project dependencies:
dotnet restore
Open the solution file in Visual Studio:
start YourProjectName.sln
- Using Visual Studio:
Open Visual Studio, select "Create a new project," search for "Next Solution," select it, and follow the prompts to create your project.
Mobile Development Guide
Set up your mobile development environment by following these steps:
- Set Up Your Expo Development Environment
Follow the official Expo documentation to install all the necessary tools, configure your environment, and run your first Expo project.
- Use React Native Paper Components
Since we're using React Native Paper, you can refer to the following documentation to get started with its components and features: Getting started with React Native Paper
Web Development Guide
Set up your web development environment by following these steps:
Install a Web Browser
Choose and install any modern browser of your choice (e.g., Google Chrome, Firefox, Microsoft Edge).Use NextUI Components
Since we're using NextUI, you can refer to the following documentation to get started with its components and features: Getting started with NextUI
Tools, Frameworks & Libraries
This template was built using a variety of powerful frameworks and tools, including: .NET, Ngrok, JWT (JSON Web Tokens), Entity Framework, AutoMapper, FluentValidation, Flurl, Humanizer, libphonenumber-csharp, MailKit, OAuth, Serilog, Twilio, Swagger, React.js, React Native, React Navigation, Axios, Expo Dev, Lodash, NativeWind, React Hook Form, Zustand, Visual Studio Code, Visual Studio, Android Studio, Git, GitHub Copilot, Node.js, React Native Paper, NextUI
Acknowledgments
With gratitude, I acknowledge these libraries, tools, and documentation which played a crucial role in the creation of this template.
Documentation:
- React Official Site
- React Native Official Site
- YouTube: React Native for Beginners
- YouTube: Understanding React Native Performance
- W3Schools: TypeScript
Tools, Frameworks & Libraries:
- React Hook Form
- Tailwind CSS
- React Native Paper
- Expo with React Native
- GitHub: FluffySpoon.Ngrok
- GitHub: ASP.NET Core JWT Authentication
Architecture & Design:
- GitHub: Clean Architecture
- UXWing: Free Icons
- Best-README-Template
- Gist: .NET Project Structure
- GitHub: .NET Template Reference
- Gist: Conventional Commit Messages
- Gist: Git Commit Message Emoji
Get in Touch
- GitHub: prince272 | LinkedIn: Prince Owusu | Email: princeowusu.272@gmail.com ✉️ | WhatsApp: Chat with me | Telegram: princeowusu272 | Discord: prince.272 | Instagram: owusuyaw1234 | Stack Overflow: My profile | Twitter: @OwusuPrince272
This content originally appeared on DEV Community and was authored by Prince Owusu
Prince Owusu | Sciencx (2024-09-07T17:50:31+00:00) 🚀 Introducing NextSolution V2: ASP.NET API + Next.js + Expo Starter Template. Retrieved from https://www.scien.cx/2024/09/07/%f0%9f%9a%80-introducing-nextsolution-v2-asp-net-api-next-js-expo-starter-template/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.