Skip to content

r2w34/PSA-Modern

Repository files navigation

PSA Modern - Parmanand Sports Academy Management System

A modern, full-stack sports academy management system built with React, TypeScript, Express, and modern UI/UX principles.

πŸš€ Features

Frontend (React + TypeScript + Vite)

  • Modern UI/UX: Clean, responsive design with light/dark theme system
  • Theme System: Dynamic theme switching with CSS variables and localStorage persistence
  • Modern Components: Elevated cards, gradient buttons, smooth animations
  • Dashboard: Real-time statistics, recent transactions, quick shortcuts
  • Responsive Design: Mobile-first approach with Tailwind CSS
  • TypeScript: Full type safety throughout the application

Backend (Express + TypeScript)

  • RESTful API: Clean API architecture with proper error handling
  • TypeScript: Type-safe server-side development
  • CORS Support: Cross-origin resource sharing enabled
  • Rate Limiting: API protection with rate limiting
  • Modular Structure: Organized routes, controllers, and middleware

Management Modules

  • Students: Student registration, profiles, and management
  • Fees: Fee collection, payment tracking, and financial reports
  • Attendance: Daily attendance tracking and reports
  • Sports: Sports categories and activity management
  • Batches: Batch creation, scheduling, and management
  • Coaches: Coach profiles, assignments, and performance
  • Communications: Messaging system and notifications
  • Reports: Comprehensive reporting and analytics

πŸ› οΈ Technology Stack

Frontend

  • React 18 - Modern React with hooks and context
  • TypeScript - Type safety and better development experience
  • Vite - Fast build tool and development server
  • Tailwind CSS - Utility-first CSS framework
  • Lucide React - Beautiful, customizable icons
  • CSS Variables - Dynamic theming system

Backend

  • Node.js - JavaScript runtime
  • Express.js - Web application framework
  • TypeScript - Type-safe server development
  • CORS - Cross-origin resource sharing
  • Helmet - Security middleware
  • Compression - Response compression

πŸ“¦ Installation

Prerequisites

  • Node.js (v18 or higher)
  • npm or yarn
  • Git

Clone Repository

git clone https://github.com/r2w34/PSA-Modern.git
cd PSA-Modern

Frontend Setup

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

# Preview production build
npm run preview

Backend Setup

# Navigate to server directory
cd server

# Install dependencies
npm install

# Start development server
npm run dev

# Build for production
npm run build

# Start production server
npm start

πŸš€ Deployment

Production Build

# Frontend
npm run build

# Backend
cd server && npm run build

Server Deployment

  1. Frontend: Serve the dist/ folder using any static file server
  2. Backend: Run the compiled JavaScript from server/dist/

Environment Variables

Create a .env file in the server directory:

PORT=8080
NODE_ENV=production

🎨 Theme System

The application features a sophisticated theme system:

Light Theme

  • Clean, bright interface
  • Professional color scheme
  • Optimized for daytime use

Dark Theme

  • Modern dark interface
  • Reduced eye strain
  • Perfect for low-light environments

Theme Features

  • CSS Variables: Dynamic color switching
  • localStorage: Theme preference persistence
  • Smooth Transitions: 300ms transitions between themes
  • System Integration: Respects user's system preferences

πŸ“± Responsive Design

  • Mobile First: Optimized for mobile devices
  • Tablet Support: Perfect tablet experience
  • Desktop: Full desktop functionality
  • Breakpoints: Tailwind CSS responsive breakpoints

πŸ”§ Development

Available Scripts

Frontend

  • npm run dev - Start development server
  • npm run build - Build for production
  • npm run preview - Preview production build
  • npm run lint - Run ESLint
  • npm run type-check - TypeScript type checking

Backend

  • npm run dev - Start development server with hot reload
  • npm run build - Compile TypeScript to JavaScript
  • npm start - Start production server
  • npm run lint - Run ESLint
  • npm run type-check - TypeScript type checking

Project Structure

PSA-Modern/
β”œβ”€β”€ src/                    # Frontend source code
β”‚   β”œβ”€β”€ components/         # React components
β”‚   β”œβ”€β”€ contexts/          # React contexts (Theme)
β”‚   β”œβ”€β”€ pages/             # Page components
β”‚   β”œβ”€β”€ services/          # API services
β”‚   └── styles/            # CSS styles
β”œβ”€β”€ server/                # Backend source code
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ controllers/   # Route controllers
β”‚   β”‚   β”œβ”€β”€ middleware/    # Express middleware
β”‚   β”‚   β”œβ”€β”€ models/        # Data models
β”‚   β”‚   β”œβ”€β”€ routes/        # API routes
β”‚   β”‚   └── utils/         # Utility functions
β”‚   └── dist/              # Compiled JavaScript
β”œβ”€β”€ dist/                  # Frontend production build
└── public/                # Static assets

🌟 Key Features

Dashboard

  • Statistics Cards: Total students, revenue, batches, fees
  • Recent Transactions: Latest fee payments and transactions
  • Quick Shortcuts: Fast access to all modules
  • Growth Metrics: Monthly growth indicators

Modern UI Components

  • Elevated Cards: Beautiful card designs with hover effects
  • Gradient Buttons: Modern button styles with gradients
  • Smooth Animations: CSS transitions and hover effects
  • Loading States: Elegant loading indicators

API Endpoints

  • GET /api/health - Health check
  • GET /api/dashboard/stats - Dashboard statistics
  • GET /api/dashboard/transactions - Recent transactions
  • GET /api/dashboard/shortcuts - Quick access shortcuts

πŸ”’ Security Features

  • CORS Protection: Configured cross-origin resource sharing
  • Helmet: Security headers middleware
  • Rate Limiting: API request rate limiting
  • Input Validation: Server-side input validation

πŸ“Š Performance

  • Optimized Bundle: Vite optimization for production
  • Code Splitting: Automatic code splitting
  • Tree Shaking: Unused code elimination
  • Compression: Gzip compression for responses

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • React Team - For the amazing React framework
  • Vite Team - For the lightning-fast build tool
  • Tailwind CSS - For the utility-first CSS framework
  • TypeScript Team - For type safety and better DX

πŸ“ž Support

For support, email support@psanashik.com or create an issue in this repository.


Built with ❀️ for Parmanand Sports Academy

About

Modern PSA Nashik Sports Academy Management System with React, TypeScript, and Express

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors