| Crates.io | examine |
| lib.rs | examine |
| version | 0.2.0 |
| created_at | 2025-06-13 03:55:33.117319+00 |
| updated_at | 2025-06-13 04:22:15.869545+00 |
| description | Simple project detection and analysis - just pass a path and get project info |
| homepage | https://github.com/anistark/examine |
| repository | https://github.com/anistark/examine |
| max_upload_size | |
| id | 1711022 |
| size | 73,970 |
Simple project detection and analysis. Pass a path, get comprehensive project info.
Highly experimental at the moment!
[dependencies]
examine = "0.1.0"
use examine::examine;
let info = examine(".").unwrap();
println!("Language: {}", info.language);
println!("Version: {}", info.language_version.unwrap_or("Unknown".to_string()));
println!("Status: {}", info.language_status);
println!("Framework: {}", info.framework.unwrap_or("None".to_string()));
| Language | Project Detection | Version Detection | EOL Tracking | Frameworks Supported |
|---|---|---|---|---|
| ✅ | ✅ | ✅ | Axum, Actix Web, Rocket, Warp, Bevy, Clap | |
| ✅ | ✅ | ✅ | React, Vue, Angular, Svelte, Express, Next.js, Nuxt | |
| ✅ | ✅ | ✅ | Gin, Echo, Fiber, Gorilla Mux | |
| ✅ | ✅ | ✅ | Django, Flask, FastAPI | |
| ✅ | WIP | WIP | ||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO | |||
| ✅ | TODO |
🔍 Project Analysis
==================
📁 Path: ./my-web-service
📦 Name: my-web-service
💻 Language: Rust
📋 Version: 1.75.0
⚡ Status: ✅ Supported
🚀 Framework: Axum
Version: 0.7.0
Type: Web Framework
Popular: Yes
Alternatives: Actix Web, Warp, Rocket
✨ Summary: Rust + v1.75.0 + Axum v0.7.0
The CLI is only for testing the library and not intended as a distribution. Feel free to write your own CLI tool if you want one.
cargo run --example cli_tool analyze .
cargo run --example cli_tool analyze /path/to/project
ProjectInfo structpub struct ProjectInfo {
pub language: String,
pub language_version: Option<String>,
pub language_status: LanguageStatus,
pub framework: Option<String>,
pub framework_version: Option<String>,
pub framework_details: Option<FrameworkDetails>,
pub project_name: Option<String>,
pub project_path: String,
}
LanguageStatus enumpub enum LanguageStatus {
Supported,
EndingSoon { date: String },
EndOfLife { date: String },
Unknown,
}
Cargo.toml, package.json, etc.)Contributions welcome! Areas where help is needed:
MIT License - see LICENSE file for details.