8000 GitHub - CripterHack/cv-generator: Simple CV Resume Generator using Harvard standard
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

CripterHack/cv-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CV Generator 📄✨

A modern, full-stack application for creating and managing professional CVs with both web and desktop interfaces.

Table of Contents

  1. Features
  2. System Requirements
  3. Quick Start
  4. Development Setup
  5. Project Structure
  6. Common Issues
  7. Contributing
  8. Documentation
  9. License

Features

  • Bilingual support (English and Spanish) 🌎
  • Real-time CV preview 👀
  • Multiple export formats:
    • HTML 🌐
    • PDF 📑
    • Markdown ⬇️
  • Save/load CV data (JSON) 💾
  • Customizable sections:
    • Personal Information 👤
    • Professional Experience 💼
    • Academic Experience 🎓
    • Skills 🛠️
    • Certificates 🏆
  • Profile photo support 🖼️

Technical Features

  • Modern tech stack:
    • Frontend: React + TypeScript + Material-UI
    • Backend: FastAPI + Python
    • Cache: Redis
    • Containers: Docker
  • Advanced functionality:
    • Multiple CV templates
    • Form validation
    • Multi-language (i18n)
    • Real-time preview

System Requirements

  • Python 3.11.5
  • Node.js 18+
  • Docker 20.10.0+
  • Docker Compose 2.0.0+
  • wkhtmltopdf 0.12.6+
  • 4GB RAM minimum
  • 10GB free disk space

Platform-Specific Setup

Windows Setup
# Install WSL2 if not installed
wsl --install

# Install Chocolatey (PowerShell as Admin)
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

# Install dependencies
choco install python nodejs docker-desktop wkhtmltopdf git
macOS Setup
# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install dependencies
brew install python@3.11 node docker wkhtmltopdf git
Linux Setup
# Update and install
sudo apt update
sudo apt install -y python3.11 nodejs docker.io docker-compose wkhtmltopdf git

Quick Start

  1. Clone and setup:

    git clone https://github.com/yourusername/cv-generator.git
    cd cv-generator
  2. Configure environment:

    cp web/backend/.env.example web/backend/.env
    cp web/frontend/.env.example web/frontend/.env
  3. Start development environment:

    chmod +x dev.sh  # Unix-like systems
    ./dev.sh start

Development Setup

Environment Configuration

# Backend (.env)
API_HOST=0.0.0.0
API_PORT=8000
DEBUG=True
REDIS_HOST=172.19.0.2
REDIS_PORT=6379

# Frontend (.env)
REACT_APP_API_URL=http://localhost:8000

Development Tools

  1. Code Quality

    • Linting: npm run lint
    • Formatting: npm run format
    • Type checking: npm run type-check
  2. Testing

    • Run tests: npm test
    • Coverage: npm run test:coverage
  3. Build and Analysis

    • Production build: npm run build
    • Bundle analysis: npm run analyze

Type System Setup

# Install core type definitions
npm install --save-dev @types/react @types/react-dom @types/node
npm install --save-dev @types/axios @types/i18next
npm install --save-dev @types/jest @types/testing-library__react

# Verify installations
npm ls | grep "@types"

Available Commands

Development Commands

  • npm start - Start development server
  • npm run dev - Start development server with hot reload
  • npm run build - Create production build
  • npm run build:prod - Create production build with production environment

Testing Commands

  • npm test - Run tests in watch mode
  • npm run test:coverage - Run tests with coverage report
  • npm run test:ci - Run tests in CI mode (single run)

Code Quality Commands

  • npm run lint - Check code style issues
  • npm run lint:fix - Fix code style issues automatically
  • npm run format - Format code with Prettier
  • npm run format:check - Check code formatting
  • npm run type-check - Check TypeScript types
  • npm run type-check:watch - Check TypeScript types in watch mode

Analysis Commands

  • npm run analyze - Analyze bundle size with source-map-explorer
  • npm run clean - Remove build directories and cache
  • npm run ci - Run all checks (types, lint, tests) - used in CI

Documentation Commands

  • npm run storybook - Start Storybook development server
  • npm run build-storybook - Build static Storybook documentation

Git Hooks

  • npm run prepare - Install husky git hooks
  • npm run precommit - Run pre-commit checks (automatically run by husky)

Examples

# Start development
npm run dev

# Run tests with coverage
npm run test:coverage

# Check and fix code style
npm run lint:fix
npm run format

# Prepare for production
npm run build:prod

# Run all checks before committing
npm run ci

Using DevContainers (Recommended)

Prerequisites

  1. Visual Studio Code
  2. "Dev Containers" extension in VS Code
  3. Docker Desktop (Windows/Mac) or Docker Engine (Linux)
  4. Git

Setup Steps

  1. Initial Setup

    # Clone the repository
    git clone https://github.com/yourusername/cv-generator.git
    cd cv-generator
    
    # Copy environment files
    cp web/backend/.env.example web/backend/.env
    cp web/frontend/.env.example web/frontend/.env
  2. Open in DevContainer

    • Open VS Code
    • Press F1 or Ctrl+Shift+P
    • Type "Dev Containers: Open Folder in Container"
    • Select the project folder
  3. Wait for Build

    • Container will build automatically
    • VS Code will reconnect to container
    • Extensions will install automatically
  4. Start Services

    # Grant execution permissions to dev script (if needed)
    chmod +x dev.sh
    
    # Start all services
    ./dev.sh start
  5. Verify Execution

Useful Development Commands

# Restart services
./dev.sh restart

# View logs
./dev.sh logs

# Stop services
./dev.sh stop

# Run tests
./dev.sh test

# Clean containers and cache
./dev.sh clean

Troubleshooting

Port Issues
# Check ports in use
sudo lsof -i :8000
sudo lsof -i :3000

# Kill processes if needed
sudo kill -9 <PID>
Docker Permission Issues
# Add user to docker group (Linux)
sudo usermod -aG docker $USER
newgrp docker
Node Modules Issues
# Inside the container
cd web/frontend
rm -rf node_modules package-lock.json
npm install
Dependency Updates
# Rebuild container
./dev.sh rebuild

Manual Setup (Alternative)

# Clone the repository
git clone https://github.com/yourusername/cv-generator.git
cd cv-generator

# Copy environment files
cp web/backend/.env.example web/backend/.env
cp web/frontend/.env.example web/frontend/.env

# Start development environment
chmod +x dev.sh
./dev.sh start

Project Structure

cv-generator/
├── web/
│   ├── frontend/          # React application
│   │   ├── src/
│   │   │   ├── components/
│   │   │   ├── services/
│   │   │   ├── i18n/
│   │   │   └── types/
│   │   └── public/
│   └── backend/          # FastAPI application
├── shared/              # Shared utilities
├── docker/             # Docker configuration
└── tests/              # Test suites

Common Issues

TypeScript/Linter Issues
  • Missing module declarations:
    rm -rf node_modules package-lock.json
    npm install
  • Type checking errors:
    npm run type-check
    npm run lint:fix
Docker Issues
  • Permission errors:
    sudo usermod -aG docker $USER  # Linux/macOS
  • Cache problems:
    docker system prune -a
    docker-compose build --no-cache
Development Server Issues
  • Hot reload not working:
    npm run dev
    # Or with Docker
    ./dev.sh restart

Contributing

  1. Fork and clone
  2. Create feature branch
  3. Make changes
  4. Run tests and linting
  5. Submit pull request

For detailed guidelines, see CONTRIBUTING.md

Documentation

  • API Documentation: /docs endpoint
  • Frontend Documentation: Generated with Storybook
  • Code Documentation: Inline documentation and type hints

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Simple CV Resume Generator using Harvard standard

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0