Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .vscode/extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"bierner.markdown-mermaid",
"bierner.github-markdown-preview",
"github.copilot-chat",
"mermaidchart.vscode-mermaid-chart",
"ms-vscode.copilot-mermaid-diagram",
"ms-vscode.vscode-websearchforcopilot"
]
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Developers today agree that AI code assistant tools are useful for easy, repeata
- C#
- Java (Spring-boot)
- Python
- Typescript
- Typescript (Angular - ready, React - coming soon)

### Software

Expand Down
1 change: 0 additions & 1 deletion goals/java/1-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ This framework integrates several powerful MCP (Model Context Protocol) tools to
- **Context7 MCP**: Provides live documentation and code snippet retrieval for authoritative technical references
- **Memory MCP**: Delivers persistent project memory, decision tracking, and knowledge graph capabilities
- **Sequential Thinking MCP**: Assists the LLM with ordering tasks, and breaking down complex ideas
- **Microsoft.Learn MCP**: Give your LLM access to the entire Microsoft Learn knowledgebase!

Together, they transform GitHub Copilot into an intelligent development assistant that remembers project context, tracks architectural decisions, and maintains comprehensive project knowledge across sessions.

Expand Down
33 changes: 29 additions & 4 deletions goals/java/2-requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## 🎯 Challenge Overview

Your mission is to **design and document a new feature** for the PetClinic reference application. This challenge will teach you how to write comprehensive feature requirements that integrate seamlessly with the ConPort workflow and architectural patterns we've created.
Your mission is to **design and document a new feature** for the PetClinic reference application. This challenge will teach you how to write comprehensive feature requirements that integrate seamlessly with the Spec-Driven workflow and architectural patterns we've created.

## 📋 What You'll Learn

Expand All @@ -17,20 +17,45 @@ Your mission is to **design and document a new feature** for the PetClinic refer
Before you begin, familiarize yourself with the existing PetClinic architecture by reviewing:

- **AI Generated documentation**: `docs/*.md` - Project and Architecture documentation created by GitHub Copilot
- **Current Services**: Identity, Catalog, Basket, Ordering, Webhooks, Mobile.BFF
- **Technology Stack**: .NET 9, Aspire, PostgreSQL, Redis, RabbitMQ, Blazor
- **Areas**: Models, Owner, Vet, and System namespaces, along with the resources folder templates
- **Technology Stack**: Java 17, Spring Boot 3.5, Maven build. Thymeleaf View. Spring Data JPA with H2 database. Caffeine for caching. JUnit 5, and Spring Boot Test for unit testing.

## 🎲 Feature Ideas (Choose One or Create Your Own)

### 💡 **Beginner Level**
- **Pet Profile**: Add the ability to upload a photo for a customer's pet
- **Pet Age Calculator**: Take the birthday of the pet, and calculate the age of the pet on the profile view. Show intelligent age, such as "1 year", "3 months", "1 year, 6 months", etc.
- **Visit Notes Enhancement**: Add rich text description field for visit notes with character counter
- **Owner Email Field**: Add optional email field to owner contact information with validation
- **Pet Weight Tracking**: Add weight field to pet profile with optional unit selection (lbs/kg)
- **Visit Cost Display**: Add read-only cost field to visits for billing reference
- **Vet Availability Status**: Add "Available/Busy" status indicator on vet list page
- **Search Enhancement**: Add search by phone number on the find owners page

### 🔥 **Intermediate Level**
- **Veterinarian Schedule**: Veterinarian appointment schedule view
- **Loyalty Program**: Points-based rewards system with tier benefits
- **Pet Medical History**: Comprehensive medical records with vaccination tracking and medication history
- **Appointment Reminders**: Email reminder system for upcoming visits (24h, 1 week advance)
- **Bulk Visit Operations**: Select multiple visits for batch operations (reschedule, cancel)
- **Owner Dashboard**: Personalized dashboard showing pet health summaries and upcoming appointments
- **Vet Specialization Search**: Filter and search veterinarians by their specialties
- **Pet Care Instructions**: Post-visit care instructions with downloadable PDF generation
- **Advanced Reporting**: Generate clinic reports (visit trends, revenue, popular services)
- **Online Appointment Booking**: Public-facing booking system with available time slots
- **Pet Boarding Services**: Track boarding stays with check-in/check-out and special care notes
- **Emergency Contact System**: Multiple emergency contacts per owner with relationship types
- **Treatment Plan Templates**: Reusable treatment protocols for common conditions


### 🚀 **Advanced Level**
- **Real-time Notifications**: Notify the customer using SMS when their next appointment is!
- **Real-time Notifications**: Notify the customer using SMS when their next appointment is. Use Azure Communication Services to send yourself a SMS message when your appointment is less than 24 hours away.
- **Microservice Architecture**: Split application into separate services (owners, appointments, billing) with API gateway
- **Advanced Analytics Dashboard**: Business intelligence with charts, trends, and predictive analytics using Chart.js
- **Multi-Tenant Clinic System**: Support multiple independent clinics with data isolation and custom branding
- **Mobile App Integration**: REST API backend to support iOS/Android mobile applications
- **AI-Powered Health Insights**: Integration with veterinary AI services for health recommendations and alerts
- **Inventory Management**: Track medical supplies, medications, and equipment with low-stock alerts

### 🎨 **Your Own Idea**
Create something unique that fits the veterinarian domain and showcases modern software engineering practices.
Expand Down
2 changes: 1 addition & 1 deletion goals/typescript/1-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ Together, they transform GitHub Copilot into an intelligent development assistan
## 📋 Prerequisites

- **Node.js 16+** (for MCP tools)
- **Node.js 14-16** for Angular App
- **IDE** with GitHub Copilot[^1]
- **Docker** is recommended, or you can use the devcontainer.
- **Git** for version control

## 🛠️ Installation & Setup
Expand Down
22 changes: 16 additions & 6 deletions goals/typescript/2-requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,22 +18,32 @@ Before you begin, familiarize yourself with the existing ngLibrary architecture

- **AI Generated documentation**: `docs/*.md` - Project and Architecture documentation created by GitHub Copilot
- **Current Modules**: App, Books, Cart, Checkout, Layouts, Core
- **Technology Stack**: Typescript 4, Angular 11
- **Technology Stack**: Typescript 4, Angular 11, Node.js 14-16 compatible

## 🎲 Feature Ideas (Choose One or Create Your Own)

### 💡 **Beginner Level**
- **Book Reviews & Ratings**: Allow customers to review and rate books
- **Wishlist Management**: Save books for later checkout
- **Book Recommendations**: "Customers who read this book this also read..."
- **GoodReads Library Import**: Import a list of books from a GoodReads export to update the list of available books.
- **Replace the OpenLibrary Data**: OpenLibrary.org has performance problems. Pull the images and use Azure Storage account (or local Azurite emulator) to server the book images instead.
- **Add Series to book model**: Add the Series name to the book model to support multiple books in a series.
- **Add book description to the book view**: Add the description of the book to the fly-out book view.


### 🔥 **Intermediate Level**
- **Inventory Management**: Real-time stock tracking with low-stock alerts
- **Update App to Angular 20**: Update the application and dependencies to Angular 20
- **Inventory Management**: Add a "Library admin" page to add / remove books from inventory.
- **Advanced Search**: Faceted search with filters, sorting, and autocomplete
- **Loyalty Program**: Points-based rewards system with tier benefits
- **User Profile**: Allow users to sign up, using OAuth 2.0 integration. Track book check-outs against user profile.
- **Integrate Hardcover API**: https://docs.hardcover.app/api/getting-started/ pull reviews, featured books, track user checkouts.
- **Add Author model**: Create author model and refactor app to seperate Author in it's own data model
- **Add Genre model**: Create Genre model and refactor app to seperate Genre in it's own data model

### 🚀 **Advanced Level**
- **Migrate app to React 18+**: Convert the app to a React v18 app instead
- **Real-time Notifications**: WebSocket-based book availability updates
- **Native Mobile app**: Use Capacitor or a similar project to build a PWA mobile app to access the library.
- **Book Reviews & Ratings**: Allow customers to review and rate books
- **Book Recommendations**: "Customers who read this book this also read..." using AI to find similar books from the library. Have the AI generate a reason as to why they might like to read this book.

### 🎨 **Your Own Idea**
Create something unique that fits the library management domain and showcases modern software engineering practices.
Expand Down