Skip to content

Latest commit

 

History

History
29 lines (28 loc) · 6.01 KB

tech-stack.md

File metadata and controls

29 lines (28 loc) · 6.01 KB

Definitive Tech Stack Selections

Category Technology Version / Details Description / Purpose Justification (User Input + Architectural Alignment)
Languages TypeScript ~5.x (e.g., 5.3.3) Primary language for both backend API and frontend UI logic. User familiarity, type safety, single language across the stack for PoC efficiency.
Runtime Node.js ~20.x or ~22.x (e.g., 20.11.0 LTS) Server-side and development environment for full stack. Required for TypeScript and Next.js.
Frameworks Next.js (React framework) ~14.x (e.g., 14.1.0) Full-stack framework for API routes and frontend UI. User familiarity, rapid development, integrated API/frontend, strong React ecosystem, good for PoC deployment.
Databases (PoC) SQLite Latest stable (via sqlite3 Node.js package, e.g., 5.1.7) Simple, file-based persistence for PoC data (User Profiles, loaded Static NFL Data). Data access via Provider Model. Rapid setup for hackathon, user preference for persistence, Provider Model supports future DB swap.
UI Libraries & Styling Tailwind CSS with DaisyUI Latest stable versions (e.g., Tailwind 3.4.1, DaisyUI 4.7.2) Styling Next.js (React) frontend, achieving modern "pop" aesthetic. User preference, Tailwind for utility-first, DaisyUI for pre-built Tailwind components to speed up UI dev.
Cloud Platform (PoC) Netlify N/A (Current platform) Hosting the Next.js web application for hackathon demo. User preference, easy Next.js deployment, CI/CD from Git, generous free tier.
Cloud Services (PoC) Managed by Netlify N/A Serverless functions for API, asset hosting, CDN. Simplifies PoC infrastructure management.
Infrastructure (IaC PoC) Not Applicable / Managed by Netlify N/A Netlify abstracts IaC for PoC scale. Focus on application development for hackathon.
Testing (PoC) Jest with React Testing Library Latest stable versions (e.g., Jest 29.7.0, RTL 14.0.0) Unit/Component tests for React components, utilities. User preference, common in Next.js/React ecosystem.
Playwright Latest stable version (e.g., 1.41.0) E2E tests for 1-2 critical "happy path" demo flows. User preference, provides some automated confidence in core demo flows. Scope very limited for PoC.
(Methodology Note) Pragmatic TDD approach TDD for select critical backend logic; test-after for most UI/features. Balances rigor with hackathon speed.
CI/CD (PoC) Managed by Netlify via Git integration N/A Automate build and deployment from Git. Efficient for PoC, standard Netlify feature.
Authentication & Security bcrypt ^6.0.0 Password hashing for secure user authentication Industry standard for password hashing, provides secure salt and hash generation
jsonwebtoken ^9.0.2 JWT token generation and validation for sessions Stateless authentication, secure session management
class-validator ^0.14.2 Input validation for API endpoints Type-safe validation with decorators, prevents injection attacks
class-transformer ^0.5.1 Data transformation for API DTOs Works with class-validator for robust input handling
uuid ^11.1.0 Unique identifier generation Secure token generation for email verification and other unique IDs
Email Services Resend ^4.5.1 Transactional Email Service (verification, password reset) User preference; reliable email delivery for PoC. Chosen over Nodemailer for potential scalability/features.
Frontend State & Forms Zustand ^5.0.5 Frontend state management for authentication Lightweight alternative to Redux, perfect for PoC authentication state
react-hook-form ^7.57.0 Form handling and validation Performant forms with minimal re-renders, excellent TypeScript support
Development Tools @faker-js/faker ^9.8.0 (dev) Generate realistic test data for PoC Creates plausible NFL player and game data for development and testing
ts-node ^10.9.2 (dev) TypeScript execution for scripts Enables running TypeScript scripts directly for data generation
tsx 4.19.4 (dev) Fast TypeScript execution Used for database seeding scripts
AI Integration Google Gemini AI with Official SDK @google/generative-ai (planned) Core AI intelligence for Copilot features User's explicit choice, powerful LLM for rapid AI feature dev for PoC
Utilities Day.js (optional) Latest stable Date/time manipulation if native JS insufficient Lightweight and fast if needed