Kotlin / Kotlin/dataframe

Move Writerside Korro samples out of `:core` and migrate them to `SampleHelper`

Open
#898 6 comments 0 reactions 1 assignee Claimed by @AndreiKingsley View on GitHub
examples infrastructure
Dominant language
Kotlin
Stars
1.1k
Forks
83
Avg merge
4d 12h
Merged PRs (30d)
30

Description

### Problem

Some code samples inserted into Writerside documentation via Korro are still located in `:core`.

This is undesirable because `:core` should contain library code and tests, not Writerside documentation samples. Documentation samples also currently use older infrastructure such as `DFExplainer`, which makes them harder to maintain and may require internal access.

### Expected

Use `:samples` as the unified source for Writerside samples and generated documentation examples.

### Scope

- Remove from `:core` all code samples inserted into Writerside sources using Korro
- Move/rewrite those samples in `:samples`
- Deprecate `DFExplainer` in favor of `SampleHelper`
- Rewrite existing relevant samples with `SampleHelper`
- Keep `:core` tests focused on library tests, not Writerside samples
- KDoc-specific samples may be handled separately later

### Acceptance criteria

- No Writerside/Korro documentation samples remain in `:core`
- `:samples` is the unified source for Writerside samples
- Existing Writerside sample generation still works
- Kandy plot / DataFrame iframe samples continue to be handled from `:samples`
- Existing `DFExplainer` usages are migrated to `SampleHelper` where applicable
- Any remaining `:core` samples are explicitly limited to tests or future KDoc-specific needs

### Motivation

Documentation samples should be maintained as real user-facing examples, not as internal `:core` test code.

Moving them to `:samples` reduces coupling to internals, makes Korro-based documentation easier to maintain, and helps keep examples reliable before 1.0.

Initial comment from @Jolanrensen
```
Code samples for the documentation website reside in [core/.../test/.../samples/api](./core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/samples/api),
and [tests/.../samples/api](./tests/src/test/kotlin/org/jetbrains/kotlinx/dataframe/samples/api)
and they are copied over to Markdown files in [docs/StardustDocs/topics](./docs/StardustDocs/topics)
by [Korro](https://github.com/devcrocod/korro).
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.