MaculaCutis is an AI-powered web application for analyzing skin lesions to assist in the early detection and diagnosis of skin conditions, including potential skin cancers.
- Upload skin lesion images for AI analysis
- Receive classification results with confidence scores
- View region analysis with heatmaps highlighting areas of concern
- User-friendly interface with responsive design
- Secure authentication system
-
Frontend: React + TypeScript
- Shadcn UI components
- TanStack Query for data fetching
- React Hook Form for form management
- Tailwind CSS for styling
- Wouter for routing
-
Backend: Node.js + Express
- TypeScript for type safety
- Google Cloud Vertex AI integration
- Secure session management
- Rate limiting and request validation
-
AI/ML: Google Cloud AI Platform
- Custom-trained model for skin lesion classification
- Heatmap generation for region analysis
- Configurable endpoint management
-
Database: PostgreSQL with Drizzle ORM
- Type-safe database operations
- Efficient query optimization
- Secure data persistence
- Node.js (v18 or later)
- Python 3.11 or later
- Google Cloud Platform account with Vertex AI enabled
- Clone the repository
git clone https://github.com/yourusername/skin-lesion-analyzer.git
cd skin-lesion-analyzer
- Install dependencies
npm install
- Set up environment variables
Create a
.env
file in the root directory with:
DATABASE_URL=your_database_url
JWT_SECRET=your_jwt_secret
GOOGLE_CREDENTIALS=your_google_credentials
- Start the development server
npm run dev
The application follows a modern full-stack architecture:
- Frontend Layer: React components with TypeScript for type safety
- API Layer: Express routes with validation and error handling
- Service Layer: Business logic and AI model integration
- Data Layer: PostgreSQL with Drizzle ORM for type-safe queries
- HIPAA-compliant data handling
- Secure session management
- Input validation and sanitization
- Rate limiting on API endpoints
- Encrypted data transmission
- Follow TypeScript best practices
- Write unit tests for critical components
- Use Prettier for code formatting
- Follow conventional commit messages
We welcome contributions! Please read our Contributing Guidelines and Code of Conduct.
The application is configured for deployment on Replit, with automatic scaling and HTTPS enabled.
This project is licensed under the MIT License - see the LICENSE file for details.
MaculaCutis is a tool designed to assist medical professionals and should not be used as a replacement for professional medical advice. Always consult with a healthcare provider for proper diagnosis and treatment.