Modern portfolio website built with React, TypeScript, and Tailwind CSS, featuring a clean design and smooth animations.
- ⚡️ Blazing fast with Vite
 - 🎨 Styled with Tailwind CSS
 - 🛠 TypeScript for type safety
 - 🧪 Comprehensive test coverage with Jest
 - 🧹 Code quality with ESLint and Prettier
 - 🐶 Husky pre-commit hooks
 - 📝 Conventional commits with Commitizen
 - 🤖 Automated releases with semantic-release
 
- Frontend Framework: React 19
 - Language: TypeScript
 - Styling: Tailwind CSS
 - Build Tool: Vite
 - Testing: Jest, React Testing Library
 - Linting: ESLint
 - Code Formatting: Prettier
 - Git Hooks: Husky
 - Commit Standard: Conventional Commits
 - UI Components: Radix UI, shadcn/ui
 - Icons: Lucide React
 
- Node.js 18+
 - npm or yarn
 
- 
Clone the repository:
git clone https://github.com/ericmaicon/ericmaicon.git cd ericmaicon - 
Install dependencies:
npm install
 
npm run dev- Start development servernpm run build- Build for productionnpm run test- Run testsnpm run test:coverage- Run tests with coveragenpm run lint- Run ESLintnpm run format- Format code with Prettiernpm run commit- Interactive commit using Commitizen
This project uses Jest and React Testing Library for testing. To run tests:
# Run all tests
npm test
# Run tests with coverage
npm run test:coverageESLint is used for code linting. Run the linter with:
npm run lintThis project uses Husky for Git hooks. The following hooks are configured:
- pre-commit: Runs linting and tests on staged files
 - commit-msg: Validates commit message format
 
This project uses Conventional Commits specification. Use the following format for commit messages:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
Example:
feat: add user authentication
description of changes
Closes #123
feat: A new featurefix: A bug fixdocs: Documentation only changesstyle: Changes that do not affect the meaning of the code (white-space, formatting, etc.)refactor: A code change that neither fixes a bug nor adds a featureperf: A code change that improves performancetest: Adding missing tests or correcting existing testsbuild: Changes that affect the build system or external dependenciesci: Changes to CI configuration files and scriptschore: Other changes that don't modify src or test files
This project uses semantic-release for automated version management and package publishing. The following commit message conventions determine the version bump:
fix: patch release (1.0.0 -> 1.0.1)feat: minor release (1.0.0 -> 1.1.0)BREAKING CHANGE: major release (1.0.0 -> 2.0.0)
MIT © Eric Maicon
  Made with ❤️ using modern web technologies