Skip to content

Latest commit

 

History

History
125 lines (81 loc) · 3.65 KB

File metadata and controls

125 lines (81 loc) · 3.65 KB

Contributing

Thank you for your interest in Actionbase. Any form of participation—using the project, asking questions, reporting issues, improving documentation, or contributing code—is appreciated.

Getting started

New to open source? Look for issues labeled good first issue.

Development setup

Prerequisites

  • Java 17+
  • IntelliJ IDEA (Community or Ultimate)

Setup

git clone https://github.com/kakao/actionbase.git
cd actionbase

Open in IntelliJ: File > Open → select project root.

IntelliJ will auto-import Gradle. Wait for indexing to complete.

Build

./gradlew build

Or in IntelliJ: Gradle panel > actionbase > Tasks > build > build

Format

Run before committing:

./gradlew spotlessApply

This formats Kotlin/Java code according to project style.

Run

./gradlew :server:bootRun

Server starts at http://localhost:8080.

Test

# All tests
./gradlew test

# Specific module
./gradlew :core:test
./gradlew :engine:test
./gradlew :server:test

Testing

One rule for now: if your test is data-driven, use @ObjectSource. Other test shapes are left open. See TESTING.md.

PR workflow

Fork kakao/actionbase on GitHub, then set up remotes:

git remote rename origin upstream
git remote add origin https://github.com/YOUR_USERNAME/actionbase.git
  1. Create branch: git checkout -b feature/your-feature
  2. Make changes
  3. Format: ./gradlew spotlessApply
  4. Test: ./gradlew test
  5. Commit: git commit -m "feat(scope): description"
  6. Push & create PR

AI-Assisted Pull Requests

AI-assisted pull requests are welcome, provided that you:

  • Note in the PR description if the changes were largely written by AI.
  • Name the AI tool and model that produced them (e.g., Claude Code, Cursor, Codex, ChatGPT).
  • Understand the changes — be ready to discuss any line.
  • Write the PR description and reply to reviewers in your own voice. Do not paste AI-generated text into review threads.
  • Read through the diff yourself before opening the PR.
  • Run a code-review pass with your AI tool (e.g., /review in Claude Code or Codex CLI) before submitting.
  • Follow the conventions in CODING_STYLE.md and the test rules in TESTING.md.

Inspired by SlateDB's contribution policy — thanks to the SlateDB team for codifying these norms.

How we collaborate

We collaborate through GitHub:

  • Issues: Bug reports, feature requests, and concrete improvements
  • Pull Requests: Code and documentation changes

For questions, ideas, or feedback, open an issue.

Pull requests are reviewed collaboratively and merged by Maintainers.

When submitting a pull request, please sign the CLA (Contributor Licensing Agreement) for Individual. If you need a Contributor Licensing Agreement for Corporate, please contact us.

Security

Report security vulnerabilities through GitHub Security Advisories instead of opening a public issue.

Community standards

All contributors are expected to follow the Code of Conduct.

For project roles, see Governance.