A comprehensive React application for intellectual property law resources, AI assistance, and legal consultation built with modern web technologies.
- React 18.3.1 - Modern React library with hooks and concurrent features
- TypeScript 5.5.3 - Static type checking for enhanced development experience
- React Router DOM 7.7.1 - Client-side routing for single-page application navigation
- Vite 5.4.2 - Lightning-fast build tool with Hot Module Replacement (HMR)
- @vitejs/plugin-react 4.3.1 - Official Vite plugin for React support
- ES2020 - Modern JavaScript features and syntax
- Tailwind CSS 3.4.1 - Utility-first CSS framework for rapid UI development
- PostCSS 8.4.35 - CSS post-processor for advanced styling capabilities
- Autoprefixer 10.4.18 - Automatically adds vendor prefixes for cross-browser compatibility
- Lucide React 0.344.0 - Beautiful & consistent icon library with 1000+ icons
- ESLint 9.9.1 - Comprehensive JavaScript/TypeScript linter
- @typescript-eslint/eslint-plugin 8.3.0 - TypeScript-specific ESLint rules
- @typescript-eslint/parser 8.3.0 - TypeScript parser for ESLint
- eslint-plugin-react-hooks 5.1.0 - ESLint rules for React Hooks
- eslint-plugin-react-refresh 0.4.9 - ESLint plugin for React Fast Refresh
- typescript-eslint 8.3.0 - Unified TypeScript ESLint configuration
- @types/react 18.3.3 - TypeScript definitions for React
- @types/react-dom 18.3.0 - TypeScript definitions for React DOM
- Multilingual Support - English, Sinhala (เทเทเถเทเถฝ), and Tamil (เฎคเฎฎเฎฟเฎดเฏ) languages
- Responsive Design - Mobile-first approach with Tailwind CSS
- IP Law Platform - Specialized for Sri Lankan intellectual property law
- AI Assistant Integration - Chatbot functionality for legal queries
- Lawyer Consultation - Professional legal consultation booking
- Community Forum - Discussion platform for legal topics
- Statute Database - Comprehensive IP law statute search
- User Dashboards - Separate interfaces for students and lawyers
- Node.js (version 16 or higher)
- npm or yarn package manager
- Git for version control
-
Clone the repository:
git clone https://github.com/SandaruHW/LexHUB.git cd LexHUB/lexhub-frontend -
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open your browser and navigate to:
http://localhost:3000
The development server includes:
- ๐ฅ Hot Module Replacement (HMR)
- ๐ง TypeScript type checking
- ๐ฏ ESLint integration
- ๐ฑ Mobile-responsive testing
-
Build the project:
npm run build
-
Preview the production build:
npm run preview
Run ESLint to check for code quality issues:
npm run lintTypeScript type checking:
npx tsc --noEmitlexhub-frontend/
โโโ public/
โ โโโ vite.svg
โโโ src/
โ โโโ components/ # Reusable UI components
โ โ โโโ Chatbot.tsx # AI chatbot interface
โ โ โโโ ChatbotWidget.tsx # Floating chatbot widget
โ โ โโโ Dashboard.tsx # Dashboard layout component
โ โ โโโ Header.tsx # Navigation header with language selector
โ โ โโโ LawyerConsultation.tsx # Lawyer consultation booking
โ โ โโโ Sidebar.tsx # Navigation sidebar
โ โ โโโ StatuteSearch.tsx # Statute search functionality
โ โโโ contexts/ # React Context providers
โ โ โโโ LanguageContext.tsx # Multilingual support context
โ โโโ pages/ # Application pages
โ โ โโโ AboutPage.tsx # About us page
โ โ โโโ AuthPage.tsx # Authentication page
โ โ โโโ ChatbotPage.tsx # AI assistant page
โ โ โโโ ConsultationPage.tsx # Lawyer consultation page
โ โ โโโ ForumPage.tsx # Community forum
โ โ โโโ HomePage.tsx # Landing page
โ โ โโโ LawyerDashboard.tsx # Lawyer dashboard
โ โ โโโ StatutePage.tsx # Statute database page
โ โ โโโ StudentDashboard.tsx # Student dashboard
โ โโโ App.tsx # Main application component with routing
โ โโโ index.css # Global styles and Tailwind imports
โ โโโ main.tsx # Application entry point
โโโ .gitignore # Git ignore rules
โโโ eslint.config.js # ESLint configuration
โโโ index.html # HTML template
โโโ package.json # Project dependencies and scripts
โโโ postcss.config.js # PostCSS configuration
โโโ tailwind.config.js # Tailwind CSS configuration
โโโ tsconfig.json # TypeScript configuration
โโโ vite.config.ts # Vite build tool configuration
- โก Lightning Fast Development - Vite's HMR for instant updates
- ๐จ Modern Styling - Tailwind CSS utility-first approach
- ๐ง Type Safety - Full TypeScript integration with strict mode
- ๐ Code Quality - ESLint + TypeScript ESLint for consistent code
- ๐๏ธ Optimized Builds - Production-ready builds with code splitting
- ๐ Multilingual Support - English, Sinhala, and Tamil language options
- ๐ค AI Legal Assistant - Intelligent chatbot for IP law queries
- โ๏ธ Statute Database - Comprehensive Sri Lankan IP law statutes
- ๐ฅ Community Forum - Discussion platform for legal topics
- ๐จโ๐ผ Lawyer Consultation - Professional legal consultation booking
- ๐ Educational Resources - Resources for students and professionals
- ๏ฟฝ Responsive Design - Mobile-first design for all devices
- ๐งญ Intuitive Navigation - User-friendly interface with clear routing
- ๏ฟฝ Students - Educational resources and learning materials
- ๐จโ๐ผ Lawyers - Professional tools and consultation management
- ๐ค General Public - Access to legal information and assistance
| Command | Description |
|---|---|
npm run dev |
Start development server with HMR |
npm run build |
Build optimized production bundle |
npm run preview |
Preview production build locally |
npm run lint |
Run ESLint for code quality checks |
The application uses Vite's environment configuration:
- Development:
http://localhost:3000 - Build Output:
dist/directory - TypeScript: Strict mode enabled
- ESLint: React + TypeScript rules
The built application can be deployed to any static hosting service:
- Vercel (Recommended for Next.js/React apps)
- Netlify
- GitHub Pages
- AWS S3 + CloudFront
- Firebase Hosting
Build command: npm run build
Output directory: dist/
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Run linting:
npm run lint - Ensure TypeScript compiles:
npx tsc --noEmit - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Submit a pull request
This project is proprietary and confidential. All rights reserved.
Built with โค๏ธ for Sri Lankan IP Law Community