Show HN: NextMin – Generate REST APIs and Admin Panels from JSON Schemas

2 hours ago 1

Try it live — zero configPlayground now available

NextMin turns your JSON schema into a production‑ready REST API and a beautiful Admin Panel. Model your data, set permissions, and get CRUD, auth, file uploads, and live updates out of the box.

Deploy in hours, not weeks. Start by editing a schema in the browser and see changes reflected instantly in the Admin.

nextmin-react

A plug‑and‑play React admin with auth pages, lists, forms, and live updates

Read the React docs →

Quick links

Get started in 60 seconds

# 1) Install the server toolkit npm i @airoom/nextmin-node # 2) Install the React admin (optional, for dashboards) npm i @airoom/nextmin-react
  1. Start your nextmin-node server and open your database Settings table to copy the generated API key
  2. Set NEXT_PUBLIC_NEXTMIN_API_URL and NEXT_PUBLIC_NEXTMIN_API_KEY in your React app
  3. Add <NextMinProvider> and render <AdminApp /> in your admin routes

That’s it — you have auth, CRUD pages, file uploads, and a live‑updating admin on top of your schema.

Next.js: works out of the box

  • Fully compatible with App Router(latest version of the next js)
  • Create an admin route and render <AdminApp />
  • Configure NEXT_PUBLIC_NEXTMIN_API_URL and NEXT_PUBLIC_NEXTMIN_API_KEY in your Next.js app
// App Router // app/admin/page.tsx import { AdminApp, NextMinProvider } from '@airoom/nextmin-react'; export default function AdminPage() { return ( <NextMinProvider> <AdminApp /> </NextMinProvider> ); }

What’s inside: nextmin-node

  • Express router via createNextMinRouter() with schema‑driven CRUD
  • Auth routes, policies, read masks, write restrictions
  • Pluggable file storage (local/S3), MongoDB adapter with index sync

What’s inside: nextmin-react

  • Provider, Router, and ready‑made pages (Auth, Dashboard, List, Create/Edit, Profile, Settings)
  • Components for forms, tables, file uploads, relations, phone/password inputs

Ready to dive in? Start with the package you need: nextmin-node or nextmin-react.

Read Entire Article