DEV Community

Cover image for 🚀 Introducing NextSolution V2: ASP.NET API + Next.js + Expo Starter Template
Prince Owusu
Prince Owusu

Posted on

🚀 Introducing NextSolution V2: ASP.NET API + Next.js + Expo Starter Template

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:

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
Enter fullscreen mode Exit fullscreen mode

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
Enter fullscreen mode Exit fullscreen mode
  • --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
Enter fullscreen mode Exit fullscreen mode

Restore the project dependencies:

dotnet restore
Enter fullscreen mode Exit fullscreen mode

Open the solution file in Visual Studio:

start YourProjectName.sln
Enter fullscreen mode Exit fullscreen mode
  • 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:

  1. Install a Web Browser

    Choose and install any modern browser of your choice (e.g., Google Chrome, Firefox, Microsoft Edge).

  2. 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:

Tools, Frameworks & Libraries:

Architecture & Design:

Happy Coding! 🎉
I hope you find NextSolution V2 valuable and it helps accelerate your full-stack development workflow. Whether you're building powerful APIs, responsive web interfaces, or mobile applications, this template provides a solid foundation to start. Feel free to explore, experiment, and build amazing apps with ASP.NET, Next.js, and Expo.
If you have any questions, suggestions, or feedback, don't hesitate to reach out or open an issue on GitHub. Your input is invaluable for the continuous improvement of this project!
Thank you for your support, and happy developing! 🚀

Top comments (0)