Skip to content

AlekseyBykov/patchcraft-web

Repository files navigation

PatchCraft Web

PatchCraft Web is a monorepository containing backend microservices (Java), a frontend application (React / Vite), and supporting tools.

The project is designed to automate release workflows, including patch generation, notifications, and integrations with Jira, Nexus, and email services.

Requirements

Backend

  • Java 21+
  • Gradle Wrapper (./gradlew)

Frontend

  • Node.js 18+
  • npm or yarn

Backend: Build

From the repository root:

./gradlew clean build

This will compile and run tests for all backend modules.

Backend: Run Services

Each service can be started independently using bootRun.

Gateway

./gradlew :backend:gateway:bootRun

Notification Service

./gradlew :backend:notification-service:bootRun

Patch Service

./gradlew :backend:patch-service:bootRun

Jira Service

./gradlew :backend:jira-service:bootRun

Mail Service

./gradlew :backend:mail-service:bootRun

Nexus Service

./gradlew :backend:nexus-service:bootRun

Typically, gateway and notification-service are started first, with others launched as needed.

Frontend: Run

Navigate to the frontend directory:

cd frontend

Install dependencies:

npm install

Start development server:

npm run dev

Default URL:

http://localhost:5173

The frontend proxies API requests to the backend (typically localhost:8080).

Configuration

Some services require additional configuration:

  • SMTP settings (mail-service)
  • Jira credentials (jira-service)
  • Nexus credentials (nexus-service)

Configuration can be provided via:

  • application.yml
  • environment variables

Naming Conventions

  • State: createXState
  • API: xApi
  • Actions: xAction
  • Page: buildX / sendX
  • Panel: onX

About

Full-stack microservice system for automated patch generation, notifications, and integrations (Java + Spring Boot + React).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors