feat: Add CI/CD pipeline and code quality improvements

- Add GitHub Actions workflow for automated CI/CD
- Configure Node.js 18.x and 20.x matrix testing
- Add TypeScript type checking step
- Add ESLint code quality checks with enhanced rules
- Add Prettier formatting verification
- Add production build validation
- Upload build artifacts for deployment
- Set up automated testing on push/PR
- Replace console.log with environment-aware logger
- Add pre-commit hooks for code quality
- Exclude archive folder from linting

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
hansoo
2025-07-12 15:27:54 +09:00
parent 6a208d6b06
commit 9851627ff1
411 changed files with 14458 additions and 8680 deletions

View File

@@ -1,7 +1,6 @@
import React from 'react';
import { ChevronLeft, ChevronRight } from 'lucide-react';
import { useIsMobile } from '@/hooks/use-mobile';
import React from "react";
import { ChevronLeft, ChevronRight } from "lucide-react";
import { useIsMobile } from "@/hooks/use-mobile";
interface PeriodSelectorProps {
selectedPeriod: string;
@@ -12,27 +11,21 @@ interface PeriodSelectorProps {
const PeriodSelector: React.FC<PeriodSelectorProps> = ({
selectedPeriod,
onPrevPeriod,
onNextPeriod
onNextPeriod,
}) => {
const isMobile = useIsMobile();
return (
<div className="flex items-center justify-between mb-6 w-full">
<button
className="neuro-flat p-2 rounded-full"
onClick={onPrevPeriod}
>
<button className="neuro-flat p-2 rounded-full" onClick={onPrevPeriod}>
<ChevronLeft size={20} />
</button>
<div className="flex items-center">
<span className="font-medium text-lg">{selectedPeriod}</span>
</div>
<button
className="neuro-flat p-2 rounded-full"
onClick={onNextPeriod}
>
<button className="neuro-flat p-2 rounded-full" onClick={onNextPeriod}>
<ChevronRight size={20} />
</button>
</div>