Skip to content

Latest commit

 

History

History
72 lines (54 loc) · 2 KB

README.md

File metadata and controls

72 lines (54 loc) · 2 KB

CurlsBot API

codecov

A TypeScript library for analyzing haircare product ingredients, powering CurlsBot. This API serves as the backend engine for ingredient analysis, providing detailed insights into haircare product compositions.

🚀 Technical Stack

  • Language: TypeScript
  • Build System: Vite
  • Testing Framework: Vitest with coverage reporting
  • Type Checking: TSC (TypeScript Compiler)
  • API Documentation: Microsoft API Extractor & TSDoc
  • Code Quality:
    • ESLint for code linting
    • Strict TypeScript configuration
    • Comprehensive test coverage
    • Knip for dependency analysis

🛠️ Architecture

The project is structured as a modern TypeScript library with:

  • Module-based architecture (ES Modules)
  • UMD and ES bundle outputs
  • Type definitions generation
  • Automated data bundling and validation
  • CLI tools for data management

🔍 Key Features

  • Ingredient analysis engine
  • Data validation and normalization tools
  • Automated database management
  • Export/import functionality for ingredients
  • Reference conversion utilities
  • Type-safe API design

🧪 Testing Philosophy

  • Comprehensive test suite including:
    • Unit tests
    • End-to-end (e2e) tests
    • Integration tests
  • Coverage reporting
  • Test UI for development
  • Automated validation pipelines

🔧 Development Tools

  • Data Management:
    • CSV parsing and generation
    • JSON schema validation
    • Automated data bundling
  • Code Quality:
    • TypeScript for type safety
    • ESLint for code style
    • Automated validation scripts
    • Dependency analysis

📦 Installation

npm install haircare-ingredients-analyzer

📄 License

MIT


This library serves as the engine for CurlsBot, a website that analyzes haircare products and provides recommendations.