Guide to using Cursor and ChatGPT / Claude prompts with ShipSafe.

Overview

ShipSafe is designed to work with AI-assisted development. This page covers:

  • Cursor Rules – how .cursorrules steers the agent
  • Product prompts – PRD and brand brainstorming
  • Development prompts – scaffolding, components, API routes

Also see the root cursor_prompts.md library in the repo.


Cursor Rules

What are Cursor Rules?

The .cursorrules file at the project root tells Cursor about ShipSafe architecture, folder rules, security, and naming. Cursor loads it automatically when you chat or edit.

Location

ShipSafe.st/
├── .cursorrules          ← Cursor AI configuration
├── cursor_prompts.md     ← Ready-to-use prompts library
├── src/
├── docs/
└── ...

How it works

  1. Automatic context – Cursor reads .cursorrules when you use AI features
  2. Code suggestions – follow ShipSafe conventions
  3. Architecture awareness – folder structure and patterns
  4. Security reminders – Zod, requireAuth, session cookies, CSRF

Using Cursor with ShipSafe

# Install Cursor from https://cursor.com
cd ShipSafe.st
cursor .

Useful asks:

  • "How do I create a new API route?"
  • "Create a new protected page"
  • "Move this logic into features/"

Customise rules

Extend .cursorrules for your product:

## Custom Rules for My Project

- Always use TypeScript strict mode
- Prefer server components
- Use DaisyUI components

Product prompts (ChatGPT / Claude)

Brand brainstorming

Prompt:

I'm building a SaaS product using the ShipSafe boilerplate. Help me brainstorm:

1. Product name ideas (memorable, brandable, domain-friendly)
2. Tagline options (short, value-focused)
3. Brand personality (3–5 adjectives)
4. Colour palette suggestions (2–3 primary colours)
5. Target audience description

Product concept: [Describe your product idea]

Constraints:
- Must fit a security-first SaaS brand
- Should differentiate from competitors
- Needs to appeal to [target market]

PRD generation

Prompt:

Generate a Product Requirements Document (PRD) for my SaaS product.

Use these sections (markdown headings, no ASCII boxes):

# [Product Name] – PRD
Version: 1.0
Owner: [Your Name]
Last Updated: [Date]
Status: Draft

## 1. Executive Summary
## 2. Problem Statement
## 3. Solution Overview
## 4. Target Users
## 5. Core Features (MVP)
For each feature: description, user story, acceptance criteria
## 6. Technical Requirements
- Built on ShipSafe (Next.js App Router, Firebase, Stripe, Resend)
- Security: 7-layer middleware stack
- Performance targets: [metrics]
## 7. Success Metrics

Product details:
[Describe your product idea in detail]

Feature specification

Prompt:

Write a detailed feature specification for [Feature Name] in my ShipSafe-based SaaS.

Include:
1. Feature overview and purpose
2. User stories (As a [role], I want [goal] so that [benefit])
3. Technical requirements
4. API endpoints needed
5. Firestore schema changes
6. UI/UX description
7. Acceptance criteria
8. Edge cases

Product context: [Brief description]
Stack: Next.js App Router, Firebase Auth, Firestore, Stripe, Resend

Cursor prompts for development

Project scaffolding

Prompt:

Using @PRD.md, scaffold a development plan for this project.

Include:
1. Phase breakdown (Foundation, Features, UI, Testing, Launch)
2. Dependencies between phases
3. Success criteria per phase
4. Estimated timeline
5. Risk mitigation

Follow ShipSafe architecture and patterns.

Prompt:

Based on @prd/prd.md, create a development plan following ShipSafe patterns:

1. Break features into phases
2. Identify dependencies
3. List required API routes
4. List required components
5. List required Firestore collections
6. Security considerations
7. Testing requirements

Format as markdown.

Component generation

Prompt:

Generate a [ComponentName] component for ShipSafe:

- Location: src/components/[category]/[ComponentName].tsx
- Props: [list props]
- Styling: DaisyUI + Tailwind, mobile-first
- Accessibility: ARIA labels, keyboard navigation
- Server or client: [specify]

Requirements:
[Describe functionality]

Reference existing ShipSafe components for patterns.

Example:

Generate a UserProfile component for ShipSafe:

- Location: src/components/ui/UserProfile.tsx
- Props: { userId: string, showEmail?: boolean, showSubscription?: boolean }
- Styling: DaisyUI + Tailwind, mobile-first
- Accessibility: ARIA labels, keyboard navigation
- Server component (fetch user data server-side)

Requirements:
- Avatar, name, optional email
- Subscription badge if showSubscription
- Link to account settings
- Firestore fetch with loading and error states

Styles

Prompt:

Generate Tailwind / DaisyUI classes for a "[Topic] SaaS" landing section.

Requirements:
- Topic: [describe section]
- Style: modern, professional, ShipSafe aesthetic
- DaisyUI theme colours
- Responsive, hover states
- Follow ShipSafe template patterns

Produce:
1. Hero section classes
2. Features grid classes
3. CTA section classes

API route

Prompt:

Create a new API route following ShipSafe patterns:

Route: /api/[endpoint]/route.ts
Method: [GET/POST/PUT/DELETE]
Authentication: Required
Rate limiting: Yes

Requirements:
- Zod validation
- requireAuth from @/lib/firebase/auth
- Business logic in features/
- Consistent { success, data?, error? } responses

Functionality:
[Describe what the endpoint should do]

Example:

Create POST /api/projects/route.ts following ShipSafe patterns.

Auth required. Zod body: { name: string, description?: string }.
Store under users/{userId}/projects/{projectId} in Firestore.
Return the created project. Handle Zod and auth errors correctly.

Firestore schema

Prompt:

Design a Firestore schema for [Feature Name] in ShipSafe.

Requirements:
- Path pattern: users/{userId}/[collection]/{docId}
- Security rules considerations
- Optimise for common queries
- Indexes needed

Feature: [Describe]
Collections: [List]
Relationships: [Describe]

Tests

Prompt:

Generate test cases for [Feature / Component / API Route] in ShipSafe.

Include:
1. Happy path
2. Error cases
3. Edge cases
4. Security tests
5. Performance notes

Feature: [Describe]

Workflow example

  1. Generate a PRD with the product prompt above
  2. In Cursor: scaffold a development plan from @PRD.md
  3. Generate components and API routes with the prompts above
  4. Review against .cursorrules (no React in features/, Zod on APIs, session cookies)
  5. Test before merge

Best practices

  1. Always say "follow ShipSafe patterns" or @.cursorrules
  2. Point Cursor at real files with @path
  3. Treat AI output as a draft: review security and structure
  4. Remind the model: Zod validation, server-side auth, webhook signature verification

Related documentation


Tip: Keep a project-local prompts.md for prompts you reuse often.