1
0
card/api-rs/Cargo.toml
syui e7948bf4cf
Add complete ai.card Rust implementation
- Implement complete Rust API server with axum framework
- Add database abstraction supporting PostgreSQL and SQLite
- Implement comprehensive gacha system with probability calculations
- Add JWT authentication with atproto DID integration
- Create card master data system with rarities (Normal, Rare, SuperRare, Kira, Unique)
- Implement draw history tracking and collection management
- Add API endpoints for authentication, card drawing, and collection viewing
- Include database migrations for both PostgreSQL and SQLite
- Maintain full compatibility with Python API implementation
- Add comprehensive documentation and development guide

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-07 17:43:10 +09:00

54 lines
1.3 KiB
TOML

[package]
name = "ai-card-api"
version = "0.1.0"
edition = "2021"
description = "ai.card API server - Rust implementation of autonomous card collection system"
authors = ["syui"]
[dependencies]
# Core Web Framework
axum = { version = "0.7", features = ["macros", "multipart"] }
tokio = { version = "1.0", features = ["full"] }
tower = { version = "0.4", features = ["full"] }
tower-http = { version = "0.5", features = ["cors", "trace"] }
# Database & ORM
sqlx = { version = "0.7", features = ["runtime-tokio-rustls", "postgres", "sqlite", "uuid", "chrono", "migrate"] }
uuid = { version = "1.0", features = ["v4", "serde"] }
# Serialization & Validation
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
validator = { version = "0.18", features = ["derive"] }
# Date/Time
chrono = { version = "0.4", features = ["serde"] }
# Authentication & Security
jsonwebtoken = "9.0"
bcrypt = "0.15"
# HTTP Client (for atproto integration)
reqwest = { version = "0.11", features = ["json"] }
# Configuration
config = "0.13"
dotenvy = "0.15"
# CLI
clap = { version = "4.0", features = ["derive"] }
# Random (for gacha system)
rand = "0.8"
# Error Handling
anyhow = "1.0"
thiserror = "1.0"
# Logging
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Development
serde_yaml = "0.9"
dirs = "5.0"