Open
Conversation
- Add Mermaid diagram (architecture.mmd) documenting the YugaStore Java microservices architecture including API Gateway, Products, Cart, Checkout, and Login services - Add transcripts directory with workshop transcript 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Created bootstrap.sh in the root folder. The script: 1. Builds the application with `mvn -DskipTests package` 2. Initializes YugabyteDB - creates CQL schema and loads sample data 3. Creates YSQL tables for PostgreSQL 4. Starts all microservices in background: - Eureka Service Discovery (port 8761) - API Gateway (port 8081) - Products (port 8082) - Checkout (port 8086) - Cart (port 8083) - React UI (port 8080) Logging features: - All output goes to bootstrap.log - Each command logs: timestamp, command, directory, and status - On failure: logs exit code with human-readable description - Error output is captured and logged - Individual service logs go to *.out files 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Move bootstrap.sh from root to scripts/ directory - Fix Maven build failure by adding -Dexec.skip=true flag to skip Docker image builds when running in native YugabyteDB mode - Add comprehensive BATS test suite (65 tests) covering: - Help/usage flags (-h, --help) - Argument parsing and error handling - Script structure and required functions - Prerequisite checks (java, mvn, python3, cqlsh, psql) - Exit code mapping - YugabyteDB docker and native installation modes - Microservice startup configuration - Port configuration for all services - Add scripts/tests/README.md with BATS installation and usage guide - Update main README.md with: - Quick start section using bootstrap script - Table of prerequisites requiring manual intervention - Bootstrap script options documentation - Instructions to stop services 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add prominent FRONTEND URL section at end of bootstrap output - Implement OSC 8 escape sequence for clickable hyperlinks in supported terminals (iTerm2, VS Code, modern Linux terminals) - Add 4 new BATS tests for frontend URL display functionality: - Verifies FRONTEND URL section exists - Verifies printf is used for URL output - Verifies OSC 8 escape sequence for hyperlink - Verifies "click to open" hint text - Update test README with new test count (65 -> 69) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add .specify/ directory with Speckit configuration - Add .cursor/ directory with AI coding assistant rules - Configure project context and development guidelines for AI assistants
- Fix BASE_DIR calculation to use project root instead of scripts/ directory, resolving Maven build failures when running from scripts/ - Add check_java_version() function to verify Java 17+ is installed - Enhance install_java() with platform-specific installation steps: - macOS: Homebrew with symlink to JavaVirtualMachines - Linux: apt-get, dnf/yum, pacman with JAVA_HOME setup - Windows: Chocolatey or winget with fallback instructions - Fix cqlsh version warning by preferring ycqlsh over cqlsh - Set CQLSH_NO_BUNDLED=1 to avoid Python 3.12+ incompatibility with bundled six 1.12.0 library - Add CQLSH_CMD variable for dynamic CQL shell selection - Expand test suite from 69 to 83 tests covering: - Java 17 installation on all platforms - JAVA_HOME and symlink creation - ycqlsh preference and CQLSH_NO_BUNDLED setting - Update tests README with accurate test counts 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Create comprehensive OpenAPI 3.0.3 specifications documenting all REST APIs in the Yugastore e-commerce platform: - cart-microservice.yaml: Shopping cart operations (add, remove, get products, clear cart) on port 8083 - products-microservice.yaml: Product catalog with pagination and category filtering on port 8082 - checkout-microservice.yaml: Order processing with inventory validation on port 8086 - login-microservice.yaml: User authentication and registration endpoints on port 8085 - api-gateway.yaml: Aggregated API routing all requests through port 8081 - react-ui-bff.yaml: Backend-for-Frontend API consumed by the React UI on port 8080 Each specification includes: - Complete endpoint documentation with parameters and responses - Schema definitions for domain objects (ProductMetadata, CartContents, CheckoutStatus, Order, ProductRanking, etc.) - Example values for testing - Tags for grouping related operations Also includes README.md with: - Service overview table with ports and descriptions - ASCII architecture diagram showing service relationships - Instructions for viewing specs in Swagger UI or Redoc - Complete API endpoints summary - Validation commands 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add comprehensive unit test suites for all 6 microservices based on OpenAPI specifications. Tests use Python unittest with mock to validate API contracts without requiring running services. Test suites included: - api-gateway-tests (24 tests): Product catalog, cart, checkout endpoints - cart-microservice-tests (16 tests): Add/remove/clear cart operations - checkout-microservice-tests (11 tests): Order processing and status - login-microservice-tests (16 tests): Registration and authentication - products-microservice-tests (19 tests): Product details and categories - react-ui-bff-tests (27 tests): BFF endpoints for React frontend Also includes: - run_all_tests.sh: Test runner script with venv management - requirements.txt for each service with pytest dependencies Total: 113 tests covering all API endpoints 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add Speckit configuration and Cursor AI rules
Add Python parity tests for all microservices
Add OpenAPI/Swagger specifications for all microservices
- Establish core architectural principles (cloud-native, microservices, API stability) - Define functional requirements (catalog, cart, checkout, authentication) - Set non-functional requirements (performance, scalability, reliability targets) - Document system architecture principles for all components - Specify SDLC workflow with AI-enabled, spec-driven development - Establish quality gates, observability, and security standards - Define documentation framework and governance requirements Version 1.0 ratified on 2025-12-08
- Created docs/inputs/business-requirements.md with functional and non-functional requirements - Removed Purpose/Scope, Functional Requirements, and Non-Functional Requirements sections from constitution - Renumbered remaining sections for consistency - Constitution now focuses on engineering principles, architecture, and governance
Add comprehensive constitution for cloud-native e-commerce platform
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.