feat:(first commit)created repository and complete 0.1.0

This commit is contained in:
2026-01-30 14:18:32 +08:00
commit 5d4156e5e0
36 changed files with 8686 additions and 0 deletions

90
Cargo.toml Normal file
View File

@@ -0,0 +1,90 @@
[package]
name = "quicommit"
version = "0.1.0"
edition = "2024"
authors = ["Your Name <your.email@example.com>"]
description = "A powerful Git assistant tool with AI-powered commit/tag/changelog generation"
license = "MIT"
repository = "https://github.com/yourusername/quicommit"
keywords = ["git", "commit", "ai", "cli", "automation"]
categories = ["command-line-utilities", "development-tools"]
[[bin]]
name = "quicommit"
path = "src/main.rs"
[dependencies]
# CLI and argument parsing
clap = { version = "4.5", features = ["derive", "env", "wrap_help"] }
clap_complete = "4.5"
dialoguer = "0.11"
console = "0.15"
indicatif = "0.17"
# Configuration management
config = "0.14"
serde = { version = "1.0", features = ["derive"] }
toml = "0.8"
dirs = "5.0"
# Git operations
git2 = "0.18"
which = "6.0"
# HTTP client for LLM APIs
reqwest = { version = "0.12", features = ["json", "rustls-tls"], default-features = false }
tokio = { version = "1.35", features = ["full"] }
# Error handling
thiserror = "1.0"
anyhow = "1.0"
# Logging and tracing
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
# Utilities
chrono = { version = "0.4", features = ["serde"] }
regex = "1.10"
lazy_static = "1.4"
colored = "2.1"
handlebars = "5.1"
semver = "1.0"
walkdir = "2.4"
tempfile = "3.9"
sha2 = "0.10"
hex = "0.4"
textwrap = "0.16"
async-trait = "0.1"
serde_json = "1.0"
atty = "0.2"
# Encryption for sensitive data (SSH keys, GPG, etc.)
aes-gcm = "0.10"
argon2 = "0.5"
rand = "0.8"
base64 = "0.22"
# Interactive editor
edit = "0.1"
# Shell completion generation
shell-words = "1.1"
[dev-dependencies]
assert_cmd = "2.0"
predicates = "3.1"
tempfile = "3.9"
mockall = "0.12"
wiremock = "0.6"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = true
[profile.dev]
opt-level = 0
debug = true