- Add Gitea workflow for build and deploy - Add spec workflow configuration and templates - Update package lock file for dependencies
4.3 KiB
4.3 KiB
Technology Stack
Project Type
[Describe what kind of project this is: web application, CLI tool, desktop application, mobile app, library, API service, embedded system, game, etc.]
Core Technologies
Primary Language(s)
- Language: [e.g., Python 3.11, Go 1.21, TypeScript, Rust, C++]
- Runtime/Compiler: [if applicable]
- Language-specific tools: [package managers, build tools, etc.]
Key Dependencies/Libraries
[List the main libraries and frameworks your project depends on]
- [Library/Framework name]: [Purpose and version]
- [Library/Framework name]: [Purpose and version]
Application Architecture
[Describe how your application is structured - this could be MVC, event-driven, plugin-based, client-server, standalone, microservices, monolithic, etc.]
Data Storage (if applicable)
- Primary storage: [e.g., PostgreSQL, files, in-memory, cloud storage]
- Caching: [e.g., Redis, in-memory, disk cache]
- Data formats: [e.g., JSON, Protocol Buffers, XML, binary]
External Integrations (if applicable)
- APIs: [External services you integrate with]
- Protocols: [e.g., HTTP/REST, gRPC, WebSocket, TCP/IP]
- Authentication: [e.g., OAuth, API keys, certificates]
Monitoring & Dashboard Technologies (if applicable)
- Dashboard Framework: [e.g., React, Vue, vanilla JS, terminal UI]
- Real-time Communication: [e.g., WebSocket, Server-Sent Events, polling]
- Visualization Libraries: [e.g., Chart.js, D3, terminal graphs]
- State Management: [e.g., Redux, Vuex, file system as source of truth]
Development Environment
Build & Development Tools
- Build System: [e.g., Make, CMake, Gradle, npm scripts, cargo]
- Package Management: [e.g., pip, npm, cargo, go mod, apt, brew]
- Development workflow: [e.g., hot reload, watch mode, REPL]
Code Quality Tools
- Static Analysis: [Tools for code quality and correctness]
- Formatting: [Code style enforcement tools]
- Testing Framework: [Unit, integration, and/or end-to-end testing tools]
- Documentation: [Documentation generation tools]
Version Control & Collaboration
- VCS: [e.g., Git, Mercurial, SVN]
- Branching Strategy: [e.g., Git Flow, GitHub Flow, trunk-based]
- Code Review Process: [How code reviews are conducted]
Dashboard Development (if applicable)
- Live Reload: [e.g., Hot module replacement, file watchers]
- Port Management: [e.g., Dynamic allocation, configurable ports]
- Multi-Instance Support: [e.g., Running multiple dashboards simultaneously]
Deployment & Distribution (if applicable)
- Target Platform(s): [Where/how the project runs: cloud, on-premise, desktop, mobile, embedded]
- Distribution Method: [How users get your software: download, package manager, app store, SaaS]
- Installation Requirements: [Prerequisites, system requirements]
- Update Mechanism: [How updates are delivered]
Technical Requirements & Constraints
Performance Requirements
- [e.g., response time, throughput, memory usage, startup time]
- [Specific benchmarks or targets]
Compatibility Requirements
- Platform Support: [Operating systems, architectures, versions]
- Dependency Versions: [Minimum/maximum versions of dependencies]
- Standards Compliance: [Industry standards, protocols, specifications]
Security & Compliance
- Security Requirements: [Authentication, encryption, data protection]
- Compliance Standards: [GDPR, HIPAA, SOC2, etc. if applicable]
- Threat Model: [Key security considerations]
Scalability & Reliability
- Expected Load: [Users, requests, data volume]
- Availability Requirements: [Uptime targets, disaster recovery]
- Growth Projections: [How the system needs to scale]
Technical Decisions & Rationale
[Document key architectural and technology choices]
Decision Log
- [Technology/Pattern Choice]: [Why this was chosen, alternatives considered]
- [Architecture Decision]: [Rationale, trade-offs accepted]
- [Tool/Library Selection]: [Reasoning, evaluation criteria]
Known Limitations
[Document any technical debt, limitations, or areas for improvement]
- [Limitation 1]: [Impact and potential future solutions]
- [Limitation 2]: [Why it exists and when it might be addressed]