Skip to content

Latest commit

 

History

History
49 lines (42 loc) · 2.9 KB

File metadata and controls

49 lines (42 loc) · 2.9 KB

Gananayantra-Rusting (ગણનયંત્ર)

Overview

Gananayantra-Rusting is a high-performance, modular calculator engine built in Rust. It serves as a comprehensive suite for diverse industries, providing accurate and verifiable calculations through a clean CLI interface and a reusable library architecture.

Architecture (v1.1.0)

The project follows a Modular Industry-Based Structure. Each major industry has its own root module containing specific calculators as sub-modules.

Directory Structure

src/
├── main.rs                 # CLI Entry Point & Global Menu
├── calculators/            # Shared Utilities & Legacy Base
├── health/                 # BMI, BMR, Pregnancy, etc.
├── finance/                # Loan, Tax, Retirement, SEBI, Ads, E-Com
├── math/                   # Basic, Advanced, Stats, Geometry
├── auto/                   # Automotive Industry Tools
├── specialized/            # Science, Electronics, Building, CCTV
├── utility_lifestyle/      # Internet, Weather, Transport, Utility
├── energy/                 # Power Consumption, Electricity Cost
├── geo/                    # Earth Distance, Horizon Distance
├── water/                  # Pressure, Flow Rate
└── space/                  # Orbital, Satellite, Escape Velocity, Orbital Period

Naming & Quality Standards

  1. 蛇形命名 (snake_case): All functions and variables must use snake_case.
  2. Pure Logic: Logic functions must be pure, return Result<T, String>, and handle no I/O.
  3. CLI Separation: Input/Output handling must live in mod.rs or main.rs, never in the logic function.
  4. Validation: All inputs must be validated for physical/mathematical limits.
  5. Testing: Every calculator must have #[test] coverage for valid, boundary, and error cases.

Roadmap

  • Phase 1: Core Financial & Health Engines (v1.0.0)
  • Phase 2: Professional Tax & Compliance (v1.0.2)
  • Phase 3: Energy & Geo-Spatial Modules (v1.1.0)
  • Phase 4: Space & Astronomy Modules (v1.1.0)
  • Phase 5: Crate API Stabilization for Library Use

Release History

  • v1.1.1: Patch release fixing crates.io publishing indexing.
  • v1.1.0: Initial public stable release on crates.io. Refactored to library-first architecture with core industry modules (Finance, Energy, Geo, Space, Water).
  • v0.1.0: Initial preparation release (deprecated in favor of v1.1.0).

User Preferences

  • Replit-First: All development and testing happens directly in the Replit environment.
  • Minimal Dependencies: Use standard library features whenever possible.
  • Clean CLI: Maintain a structured, numbered menu system.
  • Attached Assets Policy: STRICT POLICY: Never add attached_assets or similar temporary instruction files to the project repository or GitHub. These files are for session processing only and must be deleted immediately after use.