nop-nodejs-backend

Generates NestJS and Prisma prototype backends with fixed POST-only API conventions.

693|100|Updated Aug 18, 2022
One-click install
npx skills add https://github.com/entropy-cloud/nop-entropy --skill nop-nodejs-backend
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: nop-nodejs-backend
Source: https://github.com/entropy-cloud/nop-entropy/tree/main/.opencode/skills/nop-nodejs-backend
Command: npx skills add https://github.com/entropy-cloud/nop-entropy --skill nop-nodejs-backend

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Teams need to build demonstrable Node.js backend prototypes quickly while keeping API style consistent with an existing product and keeping business logic clear enough for later AI-assisted migration to a Java framework.

Core Features & Use Cases

  • Fixed API Conventions: All endpoints use HTTP POST with JSON body parameters, unified response format ({ status, data }), and PageBean pagination, eliminating ambiguity in AI-generated code.
  • Prisma + SQLite Data Layer: Model-driven schema with camelCase code fields mapped to snake_case database columns via @map, UUID string primary keys, and prisma db push for rapid prototyping.
  • Layered Module Template: Standard Controller → Service → Prisma structure with a minimal delivery checklist (module, controller, service, DTOs, e2e test) for each new business module.
  • Use Case: Ask the AI to scaffold a users module with create/get/page endpoints; it produces NestJS controllers, DTOs with class-validator rules, a Prisma model, and e2e tests that follow the exact conventions.

Quick Start

Ask the AI to create a new NestJS business module with CRUD and paginated list endpoints following the nop-nodejs-backend conventions.

Frequently Asked Questions about nop-nodejs-backend

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a NestJS prototype backend with Prisma and SQLite?

Use a fixed layering of Controller, Service, and PrismaService with modules under src/modules. Define models in schema.prisma with SQLite as the provider, and run prisma db push during development to sync tables without migrations.

How to map camelCase TypeScript fields to snake_case database columns in Prisma?

Use the @map attribute on each model field and @@map on the model to set snake_case column and table names. Code then accesses properties like user.fullName while the database stores full_name, with Prisma handling the mapping automatically.

Why use POST-only APIs instead of RESTful endpoints in a prototype?

POST-only endpoints with all parameters in the JSON body reduce ambiguity for AI-generated code and match the existing product's interface style. This convention also simplifies later migration analysis since request shapes stay uniform across all operations.

Can I migrate a Prisma SQLite prototype to PostgreSQL later?

Yes, change the datasource provider and connection string in schema.prisma while keeping the @map field mappings. The snake_case column naming already follows production database conventions, and UUID string keys remain stable at the API layer.

What are the limitations of this prototype backend approach?

It explicitly targets demos, not production: no high-concurrency handling, complex transactions, internationalization, or multi-tenant support. It also avoids extra abstraction layers like repositories or domain services to keep business logic easy for AI to read and migrate.