docs: Expand README.md with project overview and links to detailed documentation.

This commit is contained in:
2025-09-03 11:05:59 -05:00
parent 6c82d0a302
commit 24d53b9d7d

View File

@@ -1,3 +1,61 @@
# sol-calc.com
sol-calc.com
## Overview
`sol-calc.com` is a cutting-edge web application designed to empower skilled professionals, such as electricians and electrical engineers, in the planning, design, and project management of ground mount solar installations. Our goal is to provide a robust, secure, and user-friendly platform that streamlines the entire workflow for solar professionals, from initial calculations to final reporting.
## Core Functionalities (Planned)
While the initial phase will focus on a "coming soon" brochureware site, the full vision for `sol-calc.com` includes:
* **Solar Array Sizing & Design:** Advanced tools for calculating optimal solar panel configurations, considering energy requirements, available space, and local solar irradiance data.
* **Inverter Compatibility:** Features to determine compatible inverters and string configurations for various solar setups.
* **Shading Analysis:** Sophisticated simulations to analyze shading impacts throughout the year, optimizing panel placement for maximum efficiency.
* **Bill of Materials (BOM) Generation:** Automated generation of comprehensive lists of required components for solar projects.
* **Financial Projections:** Tools to provide basic financial analysis, including ROI and payback period, for solar installations.
* **Reporting:** Generation of professional, client-ready reports and regulatory documents, including one-time purchasable PDF plans.
* **Project Management:** Integration with Dolibarr for comprehensive project tracking, task management, and deadline oversight.
## Technology Stack (Core Principles)
Adhering to the principles outlined in `CoreRequirements-SAAS.md`, `sol-calc.com` is built on a robust, secure, and performant technology stack:
* **Architecture:** Microservices-based, emphasizing clear boundaries and independent deployability.
* **Primary Languages:** Rust and Go for backend services, with C used sparingly for performance-critical components via FFI.
* **Database:** PostgreSQL for core `sol-calc.com` data. Dolibarr manages its own data, including customer, project, and document storage.
* **Inter-service Communication:** gRPC for high-performance, type-safe communication between microservices.
* **Authentication & Authorization:** Centralized authentication via Keycloak (managed by an external Central Provisioning Microservice), with strict, tiered access control enforced by the `sol-calc.com` application, especially for Dolibarr-managed features.
* **Payment Processing:** Hyperswitch as the payment orchestration layer, with Stripe as the initial payment processor.
* **Deployment:** Coolify for custom application deployment.
* **CI/CD:** Gitea Actions for event-driven workflows and Jenkins for scheduled tasks.
* **Observability:** A comprehensive self-hosted stack including OpenTelemetry, Prometheus, Grafana Loki, and SigNoz.
* **Development Environment:** Fully containerized using Docker/devcontainers for consistency and reproducibility.
## Getting Started (Conceptual)
To begin contributing or setting up a development environment:
1. **Clone the repository:** `git clone [repository-url]`
2. **Set up Docker/Devcontainer environment:** Utilize the provided `docker-compose.yml` to spin up all necessary microservices, databases (PostgreSQL, Dolibarr), Keycloak, and the full observability stack locally.
3. **Access Services:** Interact with individual services via `docker exec`.
Detailed setup instructions can be found in `DEV-SETUP.md`.
## Documentation
For in-depth information on various aspects of the project, please refer to the following documents:
* [`ARCHITECTURE.md`](./ARCHITECTURE.md): High-level system architecture and design principles.
* [`DEV-SETUP.md`](./DEV-SETUP.md): Detailed instructions for setting up the development environment.
* [`PROD-SETUP.md`](./PROD-SETUP.md): Overview of the production deployment strategy and infrastructure.
* [`SECURITY.md`](./SECURITY.md): Comprehensive security principles, compliance, and practices.
* [`TASKS.md`](./TASKS.md): Detailed microservice planning, data models, API design, testing strategy, and initial tasks.
* [`CoreRequirements-SAAS.md`](./CoreRequirements-SAAS.md): The authoritative source for core technical requirements and architectural decisions.
## License
This project is licensed under the GNU Affero General Public License v3.0. See the `LICENSE` file for details.
## Contact
For questions or support, please contact [your-email@example.com].