Glossary
Technical terms and concepts used in Elite Events project.
A
Admin
A user with elevated privileges who can access the admin panel (/admin/*) to manage products, categories, orders, and view analytics.
API (Application Programming Interface)
A set of endpoints that allow communication between the frontend and backend. Elite Events uses RESTful APIs.
API Route
Next.js server-side endpoint defined in src/app/api/. Handles HTTP requests (GET, POST, PUT, DELETE).
App Router
Next.js 14+ routing system using the app/ directory structure with React Server Components.
Authentication (Auth)
Process of verifying user identity. Elite Events uses NextAuth.js for session-based authentication.
Authorization
Process of determining what resources a user can access based on their role (ADMIN vs CUSTOMER).
B
bcryptjs
JavaScript library for hashing passwords. Elite Events uses 10 salt rounds for password encryption.
BullMQ
Task queue library for handling background jobs (planned for Plan 6).
C
Cart
Temporary storage of products a user intends to purchase. Stored in database for authenticated users.
Category
Organizational grouping of products. Elite Events supports hierarchical categories (parent-child relationships).
CI/CD (Continuous Integration/Continuous Deployment)
Automated testing and deployment pipeline. Elite Events uses GitHub Actions.
Client Component
React component that runs in the browser. Marked with 'use client' directive.
CRUD
Create, Read, Update, Delete - the four basic database operations.
CSRF (Cross-Site Request Forgery)
Security vulnerability protected by NextAuth.js with CSRF tokens.
CSS Modules
Scoped CSS files that prevent style conflicts. Files end with .module.css.
D
Database Migration
Version-controlled changes to database schema managed by Prisma.
Database Seeding
Populating database with initial or demo data. Elite Events seeds 90 products and demo users.
E
Environment Variables
Configuration values stored in .env file (never committed to version control).
ESLint
JavaScript linting tool that enforces code quality standards.
F
Form Validation
Checking user input for correctness. Elite Events uses Zod schemas for validation.
G
GitHub Actions
CI/CD platform that runs automated tests on every push and PR.
H
Hashing
One-way encryption of passwords. Cannot be reversed - only compared.
HTTP Methods
- GET: Retrieve data
- POST: Create new resource
- PUT/PATCH: Update existing resource
- DELETE: Remove resource
I
Inventory
Stock tracking system with quantity management and movement history.
ISR (Incremental Static Regeneration)
Next.js feature for updating static pages without full rebuild.
J
Jest
JavaScript testing framework used for unit and integration tests.
JWT (JSON Web Token)
Encoded token used for session management in NextAuth.js.
L
Layout Component
Shared UI wrapper (Header, Footer) that persists across pages.
M
Middleware
Next.js function that runs before request completion. Used for route protection.
Migration
Prisma database schema change tracked in version control.
Mock Service Worker (MSW)
Library for mocking HTTP requests in tests.
MVP (Minimum Viable Product)
First production-ready version with core features. Elite Events v1.0.0.
MySQL
Relational database system used by Elite Events.
N
NextAuth.js
Authentication library for Next.js applications. Handles sessions, JWT, and OAuth.
Next.js
React framework with server-side rendering, routing, and API routes.
Node.js
JavaScript runtime environment for running server-side code.
O
ORM (Object-Relational Mapping)
Database abstraction layer. Elite Events uses Prisma ORM.
Order
Customer purchase record including products, quantities, pricing, and status.
P
Pagination
Splitting large result sets into pages (e.g., 20 products per page).
Persistent Cart
Cart data saved to database (vs. in-memory) so it survives page refreshes and logouts.
Prisma
Modern ORM for Node.js with type-safe database access and migrations.
Product
Item available for rent. Contains title, price, description, category, images, etc.
Protected Route
Page or API endpoint requiring authentication or specific role to access.
R
Rate Limiting
Restricting number of requests a user can make to prevent abuse.
React
JavaScript library for building user interfaces with component-based architecture.
React Testing Library
Library for testing React components by simulating user interactions.
Redux
State management library. Elite Events uses Redux Toolkit for cart and wishlist state.
RESTful API
API design pattern using HTTP methods and resource-based URLs.
Review
User-submitted product rating (1-5 stars) and optional text comment.
Role-Based Access Control (RBAC)
Security model where permissions are based on user role (ADMIN or CUSTOMER).
S
Salt Rounds
Number of iterations for password hashing. Higher = more secure but slower. Elite Events uses 10.
Schema
Database structure definition. Defined in prisma/schema.prisma.
Seed Data
Initial database content for development/testing. Run with npx prisma db seed.
Server Component
React component that runs on the server. Default in Next.js App Router.
Session
Authenticated user's login state maintained across requests.
Sharp
Node.js image processing library for resizing, cropping, and format conversion.
SKU (Stock Keeping Unit)
Unique identifier for inventory tracking (e.g., "SKU-000001").
SQL Injection
Security vulnerability prevented by using Prisma's parameterized queries.
SSR (Server-Side Rendering)
Rendering pages on the server before sending to browser. Next.js default.
Static Site Generation (SSG)
Pre-rendering pages at build time for better performance.
Stock
Available quantity of a product for rent.
Stripe
Payment processing platform for handling credit card transactions.
T
Tailwind CSS
Utility-first CSS framework for rapid UI development.
Type Safety
TypeScript feature ensuring variables match expected types at compile time.
TypeScript
Typed superset of JavaScript providing compile-time type checking.
U
Unit Test
Test for a single function or component in isolation.
User
Person with account in the system. Can be ADMIN or CUSTOMER role.
V
Validation Schema
Zod schema defining expected data structure and constraints.
Vercel
Hosting platform optimized for Next.js applications.
W
WebP
Modern image format with better compression than JPEG/PNG.
Wishlist
Saved products a user wants to purchase later.
X
XSS (Cross-Site Scripting)
Security vulnerability prevented by proper input sanitization and React's automatic escaping.
Z
Zod
TypeScript-first schema validation library used for form and API validation.
Acronyms Quick Reference
| Acronym | Full Term |
|---|---|
| API | Application Programming Interface |
| CRUD | Create, Read, Update, Delete |
| CSRF | Cross-Site Request Forgery |
| CI/CD | Continuous Integration/Continuous Deployment |
| HTTP | Hypertext Transfer Protocol |
| ISR | Incremental Static Regeneration |
| JWT | JSON Web Token |
| MSW | Mock Service Worker |
| MVP | Minimum Viable Product |
| ORM | Object-Relational Mapping |
| RBAC | Role-Based Access Control |
| REST | Representational State Transfer |
| SKU | Stock Keeping Unit |
| SQL | Structured Query Language |
| SSG | Static Site Generation |
| SSR | Server-Side Rendering |
| UI | User Interface |
| UX | User Experience |
| XSS | Cross-Site Scripting |
Common File Extensions
| Extension | Description |
|---|---|
.ts | TypeScript file |
.tsx | TypeScript file with JSX (React) |
.js | JavaScript file |
.jsx | JavaScript file with JSX |
.css | Cascading Style Sheets |
.module.css | CSS Module (scoped styles) |
.json | JSON data file |
.md | Markdown documentation |
.env | Environment variables |
.prisma | Prisma schema file |
Next.js Conventions
File-based Routing
app/page.tsx→/(homepage)app/shop/page.tsx→/shopapp/shop/[id]/page.tsx→/shop/123(dynamic route)app/api/products/route.ts→/api/products(API endpoint)
Special Files
layout.tsx- Shared layout wrapperloading.tsx- Loading UIerror.tsx- Error boundarynot-found.tsx- 404 pageroute.ts- API route handler
Database Terms
Primary Key
Unique identifier for database record (usually id).
Foreign Key
Reference to another table's primary key (e.g., categoryId references categories.id).
Relation
Connection between tables (one-to-many, many-to-many, etc.).
Index
Database optimization for faster queries on specific columns.
Transaction
Group of database operations that succeed or fail together.
Testing Terms
Test Coverage
Percentage of code executed by tests.
Mock
Fake implementation of a function/module for testing.
Assertion
Statement verifying expected test outcome (e.g., expect(value).toBe(10)).
Test Suite
Group of related tests (describe block).
Test Case
Individual test (it or test block).
See Also
- Development Guide - Technical details
- API Reference - API documentation
- Contributing Guide - Code standards
- Troubleshooting - Common issues
Note: This glossary is maintained alongside the codebase. Please update when introducing new terms or technologies.