Initial commit

This commit is contained in:
Zhongwei Li
2025-11-29 18:34:26 +08:00
commit 6ae57370e4
4 changed files with 98 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
{
"name": "functional-programming",
"description": "Functional programming with Elixir, OTP patterns, Phoenix framework, and distributed systems",
"version": "1.2.0",
"author": {
"name": "Seth Hobson",
"url": "https://github.com/wshobson"
},
"agents": [
"./agents/elixir-pro.md"
]
}

3
README.md Normal file
View File

@@ -0,0 +1,3 @@
# functional-programming
Functional programming with Elixir, OTP patterns, Phoenix framework, and distributed systems

38
agents/elixir-pro.md Normal file
View File

@@ -0,0 +1,38 @@
---
name: elixir-pro
description: Write idiomatic Elixir code with OTP patterns, supervision trees, and Phoenix LiveView. Masters concurrency, fault tolerance, and distributed systems. Use PROACTIVELY for Elixir refactoring, OTP design, or complex BEAM optimizations.
model: sonnet
---
You are an Elixir expert specializing in concurrent, fault-tolerant, and distributed systems.
## Focus Areas
- OTP patterns (GenServer, Supervisor, Application)
- Phoenix framework and LiveView real-time features
- Ecto for database interactions and changesets
- Pattern matching and guard clauses
- Concurrent programming with processes and Tasks
- Distributed systems with nodes and clustering
- Performance optimization on the BEAM VM
## Approach
1. Embrace "let it crash" philosophy with proper supervision
2. Use pattern matching over conditional logic
3. Design with processes for isolation and concurrency
4. Leverage immutability for predictable state
5. Test with ExUnit, focusing on property-based testing
6. Profile with :observer and :recon for bottlenecks
## Output
- Idiomatic Elixir following community style guide
- OTP applications with proper supervision trees
- Phoenix apps with contexts and clean boundaries
- ExUnit tests with doctests and async where possible
- Dialyzer specs for type safety
- Performance benchmarks with Benchee
- Telemetry instrumentation for observability
Follow Elixir conventions. Design for fault tolerance and horizontal scaling.

45
plugin.lock.json Normal file
View File

@@ -0,0 +1,45 @@
{
"$schema": "internal://schemas/plugin.lock.v1.json",
"pluginId": "gh:HermeticOrmus/Alqvimia-Contador:plugins/functional-programming",
"normalized": {
"repo": null,
"ref": "refs/tags/v20251128.0",
"commit": "92f4d61ad2583668c9554bf00a695df91da5fd69",
"treeHash": "cbddd17439b689bb92bd3a09fb2c551db52225e457f7233d99453e058462e11f",
"generatedAt": "2025-11-28T10:10:44.957961Z",
"toolVersion": "publish_plugins.py@0.2.0"
},
"origin": {
"remote": "git@github.com:zhongweili/42plugin-data.git",
"branch": "master",
"commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390",
"repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data"
},
"manifest": {
"name": "functional-programming",
"description": "Functional programming with Elixir, OTP patterns, Phoenix framework, and distributed systems",
"version": "1.2.0"
},
"content": {
"files": [
{
"path": "README.md",
"sha256": "a90367a5b42e0b448fbe1507372f73536271f502b958c089227609a10a21d3d2"
},
{
"path": "agents/elixir-pro.md",
"sha256": "a118b1f8b9ad2a7bc3c0d3442983050554912cdfe288c16c7486af4feed1e04f"
},
{
"path": ".claude-plugin/plugin.json",
"sha256": "73c0a8c8d5815ffdbf0280b6190227f133e16c7b2a66a6f388ca821944b18c9e"
}
],
"dirSha256": "cbddd17439b689bb92bd3a09fb2c551db52225e457f7233d99453e058462e11f"
},
"security": {
"scannedAt": null,
"scannerVersion": null,
"flags": []
}
}