Skip to content
Melih Can Demir edited this page Dec 15, 2024 · 2 revisions

Welcome to React Project Automator Wiki πŸ‘‹

Home

Welcome to the React Project Automator wiki! Here you'll find comprehensive documentation about using and contributing to the project.

Navigation 🧭

Getting Started

Features

Advanced Usage

Development

Troubleshooting


Individual Pages Content

Installation Guide

# Installation Guide πŸ“₯

## Prerequisites
- Python 3.8 or higher
- Node.js and npm
- Git
- PyQt5

## Installation Steps

### Windows
1. Download the latest release from GitHub
2. Run the installer
3. Launch from Start Menu

### macOS
1. Using Homebrew:
```brew install react-project-automator```

### Linux
1. Using apt:
```bash
sudo apt-get update
sudo apt-get install react-project-automator

Manual Installation

  1. Clone the repository
  2. Install dependencies
  3. Run the application

Verification

To verify installation:

  1. Open terminal
  2. Run rpa --version

Common Issues

  • Permission errors
  • Missing dependencies
  • Path issues

### Quick Start
```markdown
# Quick Start Guide πŸš€

## Creating Your First Project

1. Launch the Application
   - Open React Project Automator
   - Select "New Project"

2. Configure Project
   - Enter project name
   - Choose template
   - Select features

3. Choose Location
   - Select project directory
   - Verify permissions

4. Create Project
   - Click "Create Project"
   - Wait for completion

## Basic Operations

### Managing Dependencies
1. Open Dependencies tab
2. Search packages
3. Click Add/Remove

### Using Git Integration
1. Initialize repository
2. Make first commit
3. Push to remote

## Next Steps
- Explore advanced features
- Check documentation
- Join community

Architecture Overview

# Architecture Overview πŸ—οΈ

## High-Level Architecture

### Core Components
1. UI Layer
   - Main Window
   - Dialogs
   - Forms

2. Business Logic
   - Project Manager
   - Git Manager
   - Dependency Manager

3. System Integration
   - npm/npx
   - Git
   - Terminal

## Design Patterns

### MVC Pattern
- Models: Project configuration, settings
- Views: Qt UI components
- Controllers: Event handlers, managers

### Observer Pattern
- Terminal output
- Progress updates
- Status changes

## Data Flow
1. User Input
2. Validation
3. Processing
4. System Integration
5. Feedback

## Class Structure
```python
ModernReactAutomator
β”œβ”€β”€ ProjectManager
β”œβ”€β”€ GitIntegration
β”œβ”€β”€ DependencyManager
└── TerminalOutput

Common Issues

# Common Issues and Solutions πŸ”§

## Installation Issues

### Error: PyQt5 not found
Solution:
```bash
pip install PyQt5

Error: npm not in PATH

Solution:

  1. Install Node.js
  2. Add to system PATH
  3. Restart application

Project Creation Issues

Error: Permission Denied

Solutions:

  1. Run as administrator
  2. Check directory permissions
  3. Verify user access

Error: Port in Use

Solutions:

  1. Check running processes
  2. Kill conflicting process
  3. Change port

Git Integration Issues

Error: Git not initialized

Solution:

  1. Verify Git installation
  2. Initialize repository
  3. Check permissions

Performance Issues

Slow Project Creation

Solutions:

  1. Check internet connection
  2. Clear npm cache
  3. Update dependencies

### Configuration Options
```markdown
# Configuration Options βš™οΈ

## Project Settings

### Basic Configuration
```json
{
  "name": "my-react-app",
  "template": "react",
  "typescript": true,
  "styling": "tailwind"
}

Advanced Options

{
  "port": 3000,
  "packageManager": "npm",
  "git": true,
  "testing": true
}

Theme Configuration

Light Theme

{
  "theme": "light",
  "colors": {
    "primary": "#2563eb",
    "background": "#ffffff"
  }
}

Dark Theme

{
  "theme": "dark",
  "colors": {
    "primary": "#3b82f6",
    "background": "#1f2937"
  }
}

Feature Flags

{
  "enableGit": true,
  "enableTesting": true,
  "enableCI": true
}

### Terminal Usage
```markdown
# Terminal Usage πŸ’»

## Basic Commands

### Project Creation
```bash
rpa create my-app --template react

Git Operations

rpa git init
rpa git commit -m "message"
rpa git push

Dependency Management

rpa add package-name
rpa remove package-name

Advanced Features

Custom Scripts

rpa run custom-script

Configuration Export

rpa config export

Tips & Tricks

  1. Use keyboard shortcuts
  2. Search terminal history
  3. Clear output regularly