iTranslated by AI

The content below is an AI-generated translation. This is an experimental feature, and may contain errors. View original article
🎉

2025 Tech Stack Selection for Web Apps: A Startup Engineer's Perspective

に公開
1

Nice to meet you, I'm _mino!

In this article, inspired by Muzaru Channel's recently released video "2025 Edition: Which Tech Stack to Choose for Web Apps?," I've summarized the technologies I'm glad I adopted this year and those that seem likely to trend from next year onwards based on current trends.

If you have any thoughts like "That technology is great!" or "This tech worked well for me!", I'd love to hear them in the comments!

🧩 Languages & Frameworks

TypeScript

A language that adds static typing to JavaScript, providing type safety and tool support during development.
https://www.typescriptlang.org/

⭐️ Selection Points
The combination with Next.js is a standard choice, and code completion and type checking significantly improve the development experience. However, caution is needed as improper type definitions in the early stages can lead to a proliferation of unnecessary type definitions.


Next.js

A feature-rich web application framework based on React.
https://nextjs.org/

⭐️ Selection Points
It is feature-rich and offers excellent performance, supporting various rendering methods such as SSR, SSG, and ISR. While the catch-up cost might seem high at first glance, the official documentation is thorough and easy to learn.

📝 Supplement
The v16 beta version is currently public, with major updates planned such as a stable version of Turbopack, the introduction of the React Compiler, and improvements around caching. (Personally, I prefer it over Remix.)
https://nextjs.org/blog/next-16-beta


Hono

An ultra-fast, lightweight web application framework using only Web Standard APIs.
https://hono.dev/

⭐️ Selection Points
Lightweight, fast, and TypeScript-first, providing a great development experience. It can also be integrated into Next.js API Routes. It excels in performance as a RESTful API and has excellent compatibility with edge runtimes like Cloudflare Workers.

📚 Style & UI Components

TailwindCSS

A utility-first CSS framework for building designs by writing classes directly in HTML.
https://tailwindcss.com/

⭐️ Selection Points
It pairs well with AI and feels intuitive to write. However, as it can become overly complex, it requires careful organization, such as using layers or components for global standardization.

📝 Supplement
Starting from v4, performance has improved with the integration of Lightning CSS. Additionally, the configuration file has become simpler, making it much more user-friendly.
https://tailwindcss.com/blog/tailwindcss-v4


ShadcnUI

A beautiful React component library that is customizable via copy-and-paste.
https://ui.shadcn.com/

⭐️ Selection Points
Built on Radix UI, it offers high extensibility. Since you only install the components you actually need, the bundle size can be kept very lightweight.


HeroUI

A fast, accessible, and customizable React UI library based on TailwindCSS.
https://www.heroui.com/

⭐️ Selection Points
With a large number of components and rich default designs, you can create modern-looking interfaces simply by using it as-is. Its high extensibility is also a key attraction.

📝 Supplement
Although currently in Alpha, v3 has been released and appears to show significant improvements in performance and functionality.
https://v3.heroui.com/

📌 Validation

Valibot

A TypeScript type-safe schema library that minimizes bundle size through modular design.
https://valibot.dev/

⭐️ Selection Points
It has a similar syntax to Zod, but the bundle size is significantly smaller. It also has excellent type inference, making it ideal for performance-oriented projects.

📍 State Management

Zustand

A state management library for React featuring minimal boilerplate, no providers required, and a hook-based API.
https://zustand-demo.pmnd.rs/

⭐️ Selection Points
It has a very simple implementation and is lightweight with a small bundle size. With a low learning curve and no need for complex configurations like Redux, it's perfect for state management in small-to-medium-sized projects.

🪪 Authentication

Clerk

A comprehensive user management platform providing authentication, user management, organization management, and billing features.
https://clerk.com/

⭐️ Selection Points
It offers rich UI components, allowing for rapid implementation of authentication features. The free tier is generous, and the organization management functionality is easy to use. Integration with Next.js and React is smooth.


Supabase Auth

An open-source authentication service integrated with Postgres, supporting JWT authentication, social login, and MFA.
https://supabase.com/docs/guides/auth

⭐️ Selection Points
It allows for building authentication features at a low cost and integrates seamlessly with Supabase Database. By combining it with RLS (Row-Level Security), access control at the database level can be easily implemented.

📊 Database

Supabase Database

An open-source database based on PostgreSQL that integrates RLS (Row-Level Security) and real-time features.
https://supabase.com/docs/guides/database/overview

⭐️ Selection Points
It allows for database setup at a low cost and is optimized with connection pooling features. It also excels in security due to RLS. Its branching functionality and ease of integration with other providers like Vercel make it ideal for small-to-medium-sized development.


PlanetScale

A MySQL-based serverless database platform providing branching features and autoscaling.
https://planetscale.com/

⭐️ Selection Points
The serverless architecture ensures high performance and easy scaling. Git-like branching allows for safe schema changes. However, since there is no free plan, the cost may not align with small-scale projects.

📝 Supplement
Support for PostgreSQL was officially released in September 2025, allowing a choice between MySQL and PostgreSQL. Performance is also being continuously improved.
https://planetscale.com/postgres

🔥 ORM

Drizzle ORM

A lightweight, fast TypeScript ORM supporting SQL-like syntax and PostgreSQL/MySQL/SQLite.
https://orm.drizzle.team/

⭐️ Selection Points
It's attractive for being TypeScript-first, allowing for SQL-like writing, and being lightweight. Additionally, the ecosystem is becoming more active, with an increasing number of connectable databases and the continuous addition of useful features such as Studio (a GUI database), seed functions, and cache functions.

✉️ Email Services & Notifications

Resend

A modern email API for developers that integrates with React Email to provide transactional and marketing email delivery.
https://resend.com/

⭐️ Selection Points
Low cost and simple setup. It has great compatibility with React Email, allowing you to create rich, component-based email templates.


Knock

A notification infrastructure platform that centrally manages notifications across multiple channels, including in-app, push, email, and SMS.
https://knock.app/

⭐️ Selection Points
The workflow engine allows for the construction of complex notification logic. It makes it easy to implement segmented delivery for Resend or in-app notifications, enabling centralized management of all notifications.

🪄 CMS (Headless CMS)

microCMS

A Japanese-made headless CMS that achieves content management and multi-channel delivery via API.
https://microcms.io/

⭐️ Selection Points
Since it's made in Japan, the interface is intuitive and easy to use, and system integration is simple. The abundance of Japanese documentation lowers the barrier to adoption. While the cost is slightly higher, the cost-performance ratio is good for small-scale projects.


Payload

A TypeScript-based open-source headless CMS that is highly customizable and integrable with Next.js.
https://payloadcms.com/

⭐️ Selection Points
Since it can be self-hosted, it prevents cost increases associated with scaling. It's highly extensible as it can be directly integrated into Next.js apps, and the combination of Payload × Cloudflare is excellent.

📝 Supplement
It feels like setup has become much easier now that it can be deployed to Cloudflare Workers with a single click. This enables fast CMS operations in edge environments.
https://blog.cloudflare.com/id-id/payload-cms-workers/

🌅 Image Management

Cloud Storage

Google's object storage service, providing high availability and scalability.
https://cloud.google.com/storage?hl=en

⭐️ Selection Points
When keeping everything within Google Cloud, it is convenient due to low latency over the internal network. However, be aware that egress (data transfer out) fees can lead to high costs for large-scale external distribution or CDN delivery.


Cloudflare R2

S3-compatible object storage characterized by zero egress fees.
https://www.cloudflare.com/developer-platform/products/r2/

⭐️ Selection Points
With completely free egress fees, it offers a massive cost advantage when data distribution volume is high. It is especially beneficial for use cases with heavy external access, such as CDN delivery, web/app image distribution, and video streaming. Its S3-compatible API allows existing tools to be used without modification.

⏰ Hosting

Vercel

A frontend-focused hosting platform provided by the creators of Next.js, featuring automatic deployment and edge delivery.
https://vercel.com/

⭐️ Selection Points
It has outstanding compatibility with Next.js, enabling easy deployment, and performance is optimized for Next.js. However, keep in mind that costs can escalate quickly.


Google Cloud Run

A container-based serverless platform providing automatic scaling and pay-as-you-go pricing.
https://cloud.google.com/run?hl=en

⭐️ Selection Points
Next.js deployment is straightforward using Docker containers. It is more cost-effective than Vercel and scales easily with traffic. Basic log collection is also built-in.

🧱 Bundler

Turbopack

An ultra-fast Rust-based bundler integrated into Next.js.
https://nextjs.org/docs/app/api-reference/turbopack

⭐️ Selection Points
As of writing (mid-October 2025), it is only available in development environments. As the default bundler for Next.js, it is faster than Webpack, improving the development experience.

📝 Supplement
It is scheduled to reach stability in Next.js v16 and beyond. (Personally, I'm excited about this!)
https://nextjs.org/blog/next-16-beta


Vite

A fast build tool that leverages native ESM during development, featuring HMR and Rollup-based production builds.
https://vite.dev/

⭐️ Selection Points
Excellent for SPA and library development, it's a strong choice even for React-only development without a large framework. The startup speed and fast HMR are its main highlights.

📝 Supplement
Since v7, Rolldown (a Rust-based bundler) has been introduced experimentally, and performance seems to have improved even further.
https://vite.dev/blog/announcing-vite7

🚧 Linter & Formatter

Biome

A fast Rust-based linter and formatter that aims to be an all-in-one alternative to ESLint + Prettier.
https://biomejs.dev/

⭐️ Selection Points
Extremely convenient as it allows managing ESLint + Prettier in a single file, and its performance is overwhelmingly fast. The configuration is simple, making the barrier to adoption very low.

📝 Supplement
Since v2, performance has further improved, and it feels like the addition of rules and type inference features has been strengthened.
https://biomejs.dev/ja/blog/biome-v2/

📝 Testing

Vitest

A fast Vite-native testing framework with Jest-compatible APIs and HMR support.
https://vitest.dev/

⭐️ Selection Points
Since it is Jest-compatible, test code can be written using almost the same syntax, and it offers excellent performance. Its integration with Vite allows for shared configuration files, improving the development experience.


bun test

Bun's built-in fast test runner, providing Jest-compatible APIs.
https://bun.sh/

⭐️ Selection Points
A performance-focused tool that is by far faster than any other testing library. Faster than Vitest, it also offers multi-functionality, acting as a package manager and runtime as well.

📝 Supplement
With the recent release of v1.3, many features were added and performance was improved. Beyond testing, it shows great promise as a runtime, bundler, and package manager.
https://bun.com/blog/bun-v1.3

🛎️ Monitoring, Analysis, and Tracking

PostHog

An open-source product analytics platform that integrates session replays, A/B testing, and feature flags.
https://posthog.com/

⭐️ Selection Points
With its rich feature set, it consolidates tracking, monitoring, and analytics into a single tool, replacing multiple other services while remaining low-cost and easy to set up. It is ideal for product improvement and user understanding. However, since there is almost no Japanese documentation, you will need to rely on translation tools.

📝 Supplement
The mission and philosophy of the PostHog organization are fantastic, leaning heavily into being user-first. The fact that their pricing is designed not to be a barrier to adoption is also a major attraction.
https://posthog.com/handbook/why-does-posthog-exist


Sentry

An error tracking and performance monitoring platform featuring real-time alerts and stack trace analysis.
https://sentry.io/welcome/

⭐️ Selection Points
It pairs well with error monitoring, tracking, and real-time alerts for medium-to-large scale services. It is perfect for cases where you want to maintain a rapid bug-fix cycle. It has many adoption cases and high reliability.

While the difficulty for production adoption or setup might be high, I've picked out some high-performance or trending technologies. I'm looking forward to them becoming more popular from next year onwards!

Rspack

A fast Rust-based bundler with Webpack-compatible APIs, providing code splitting, tree shaking, HMR, and more. The ecosystem, including Rstest (testing) and Rslint (linting), is also under development.
https://rspack.rs/

📝 Supplement
It offers excellent performance, many times faster than Vite or Webpack. Additionally, although still in the experimental stage, a community plugin for Next.js is also being developed.

↓ Benchmark

Oxlint

Part of the Oxc project, this is an ultra-fast Rust-based JavaScript linter.
https://oxc.rs/

📝 Supplement
Developed by void(0), it is claimed to be even faster than Biome. It utilizes tsgo and delegates processing to the official type checker.

Vercel Fluid Compute

A new computing model that enables synchronous processing within functions in a serverless environment, balancing cost reduction and high speed by reducing wait times.
https://vercel.com/fluid

📝 Supplement
A hybrid serverless function provided by Vercel that optimizes execution processes, including performance, memory efficiency, and cold start improvements.

ElectricSQL

A Postgres sync engine that syncs data via HTTP/JSON from Postgres, enabling the construction of local-first apps.
https://electric-sql.com/

📝 Supplement
By enabling bidirectional real-time synchronization between PostgreSQL and client-side SQLite, it allows for full offline operation and high-speed query execution with zero network latency.

👀 Conclusion

Thank you for reading until the end! ☺️
I hope this article helps you with your development process in some small way!

I also share my findings and insights on my personal blog regarding "tech selection" and "analysis/deep-dives into latest technologies." If you're interested, please feel free to check it out here!
https://techbuild.app/blog

Discussion

しむしむしむしむ

もうコードはAIが書く時代でしょ?人間は読めなくてもいいのさ。コードの設計書もいらない。AIと仕様をがっちり握れれば、何語で書こうがどんなスパゲッティだろうが動くなら中身はどうでもいいよね。だったら一番速い、CPUに直接命令を出すアセンブラでいいんじゃないかなと思い始めてる。

なんたってノーコードとかいう連中がはびこってるってことはコードはもう人類から離れていいのさ。