Skip to content
Yaroslav Sarchuk edited this page Aug 29, 2025 · 4 revisions

Atomic Plugin Wiki

Welcome to the Atomic Plugin documentation for JetBrains Rider!

πŸŽ‰ Latest Release: v0.1.6

Plugin Settings & Enhanced Notifications:

  • βš™οΈ Complete Settings UI - Access from File β†’ Settings β†’ Tools β†’ Atomic Plugin
  • 🎚️ Visual Debounce Slider - Configure auto-generation delay with real-time preview
  • πŸ“Š Smart Notifications - Dynamic status based on auto-generation settings
  • πŸ”— Quick Settings Link - Jump to settings when auto-generation is disabled
  • πŸ“š Built-in References - Keyboard shortcuts and example files in settings panel

View full changelog β†’

πŸ“š Documentation

Getting Started

Reference

Advanced Topics

Help & Support

πŸš€ Quick Links

πŸ’‘ What is Atomic Plugin?

Atomic Plugin is a code generation tool for the Atomic Framework - a reactive procedural game framework for C# and Unity. The plugin generates extension methods for Atomic Framework entities from simple .atomic configuration files.

About Atomic Framework

The Atomic Framework revolutionizes game development by:

  • Using Entity-State-Behaviour pattern to separate data from logic
  • Implementing reactive properties for real-time state changes
  • Promoting procedural programming with static methods
  • Enabling modular composition of game entities

Key Benefits

  • 🎯 Type Safety: Full IntelliSense and compile-time checking
  • ⚑ Performance: Generated code with aggressive inlining options
  • πŸ”§ Maintainability: Single source of truth for your entity API
  • πŸš€ Productivity: Automatic regeneration on file changes
  • 🎨 IDE Integration: Full language support with syntax highlighting

πŸ“– Plugin Features

Feature Description
Custom DSL .atomic files with full IDE support
Auto-completion Smart completion for types and namespaces
Find Usages Track where generated methods are used
Refactoring Rename with automatic updates
Validation Real-time error detection
Code Folding Collapse sections for better navigation

🎯 Use Cases

Perfect for:

  • Game development with Atomic Framework
  • Unity projects using entity systems
  • High-performance C# applications
  • Code generation for repetitive patterns

πŸ“ Example

namespace: Game.Components
className: EntityExtensions
entityType: IEntity

tags:
  - Player
  - Enemy

values:
  - Health: int
  - Position: Vector3

Generates methods like:

entity.SetHealth(100);
entity.AddPlayerTag();
if (entity.HasPosition()) { ... }

🀝 Contributing

We welcome contributions! See our Contributing Guide for details.

πŸ“„ License

This project is licensed under the MIT License.


Version: 0.1.6 | Author: Iaroslav Sarchuk | Compatibility: Rider 2025.1+

Navigation

πŸ“š Documentation

πŸ“– Reference

❓ Help

πŸ”— Links

Clone this wiki locally