Skip to content

AI-Assisted Development

Playlite was developed using an AI-assisted development process, where artificial intelligence tools were used as support during the creation of the project.

The use of AI aimed to speed up development, explore implementation alternatives, and make it easier to learn new technologies, without replacing critical analysis, tests, or human decisions.

Principles of Use

AI tools were used according to a few clear principles:

  • AI as a support tool, not an autonomous agent
  • All final architecture and implementation decisions are human decisions
  • Generated code was reviewed, tested, adjusted, and manually integrated
  • The author takes full responsibility for the final code

No prompt logs or response logs were kept, because AI use was continuous, iterative, and exploratory throughout the whole development process.

Tools Used

The main AI tools used in the project were:

  • Gemini 3 Pro
    Used mainly for initial code generation, low-fidelity prototyping, and idea exploration in Rust and React.

  • Claude Sonnet
    Used as an auxiliary tool for code generation and analysis, including Python scripts for the collaborative filtering system.

  • ChatGPT
    Used mainly to support documentation, analyze technical suggestions, and evaluate architecture alternatives.

  • GitHub Copilot (RustRover)
    Used as an IDE-integrated tool for autocomplete, small fixes, code formatting, and static analysis.

Limits of AI Use

AI tools were not responsible for:

  • running or validating builds
  • testing the code
  • integrating components between Rust, Tauri, and React
  • validating business rules
  • making final architecture decisions

These steps were done manually.

Learning and Responsibility

The use of AI in Playlite was part of an active learning process, especially in:

  • Rust (ownership, lifetimes, async, module organization)
  • Integration between React frontend and Rust backend via Tauri
  • Local-first architecture and persistence with SQLite
  • Modeling and applying recommendation systems

The goal was not only to produce working code, but to deeply understand how the entire system works.