-
Notifications
You must be signed in to change notification settings - Fork 73
Fluent sample #56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Fluent sample #56
Conversation
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
…gation 🎉 Comprehensive Power Apps Code Apps learning template ✨ Features: - Complete Vite + React 18.2.0 setup with Power Apps SDK - Full dark/light theme system with persistent state - Professional Fluent UI v9 navigation with enhanced readability - Responsive layout supporting all device sizes - Mock data examples for Office 365, SQL, and Custom API connectors 🎨 UI/UX Improvements: - Enhanced navigation with filled icons for active states - Proper Fluent UI design tokens throughout - Improved contrast and readability in both themes - Standardized page headers with consistent typography - Professional hover effects and visual feedback 🔧 Technical Excellence: - TypeScript strict mode compliance - Clean component architecture with separation of concerns - Reusable PageHeader component for consistency - Theme context with localStorage persistence - Comprehensive mock data for realistic examples 📚 Developer Experience: - Clear code structure for easy extension - Inline documentation and best practices - Ready-to-use patterns for real connector integration - Complete implementation plan and documentation This template serves as a production-ready foundation for developers to learn Power Apps Code Apps patterns and build their own projects.
- Implemented Office365Page with user directory, calendar events, and email sections - Added SqlPage with tabbed interface for projects, tasks, and employees - Created CustomApiPage with interactive API tester and asset management - All pages now use comprehensive mock data instead of placeholder content - Added search functionality, pagination, and proper data visualization - Fixed pagination hook interface issues and component integration - Enhanced user experience with badges, status indicators, and responsive design All connector example pages are now fully functional with realistic mock data.
- Changed browser title from 'Vite + React + TS' to 'Power Apps Code Sample' - Copied Power Apps logo from HelloWorld sample as favicon - Updated index.html to use PowerApps_scalable.svg instead of vite.svg - Removed old Vite logo file The browser tab now properly displays the Power Apps branding.
- Replaced AppGenericRegular icon with actual PowerApps_scalable.svg file - Navigation now uses the same Power Apps logo as browser favicon - Applied consistent logo styling (20px x 20px) in both mobile and desktop navigation - Ensures brand consistency throughout the application The navigation logo now matches the browser tab favicon perfectly.
…h functionality - Restructure Layout.tsx header with CSS Grid for better hamburger menu and title positioning - Fix dark mode theme toggle centering in header - Update HomePage.tsx with improved navigation and clickable connector cards - Increase Office365Page search box width from 400px to 600px for better usability - Maintain responsive design and proper z-index layering throughout
- Change 'Connector Examples' to 'Examples' for simpler, cleaner labeling - Update subtitle to emphasize Power Apps SDK integration and Power Platform environment connection - Improve messaging about replacing mock data with real data sources
…and type safety - Split ThemeContext into separate files for better React Fast Refresh compliance: - ThemeContext.ts: exports context and types only - ThemeContext.tsx: exports ThemeProvider component only - useTheme.ts: exports hook only - Move ThemedApp to separate component file to fix main.tsx Fast Refresh issue - Fix TypeScript 'any' type errors in customApiData.ts with proper type definitions: - MockApiError details: Record<string, string | number | boolean> - API method parameters: Omit<MockAsset, 'id' | 'lastUpdated'> and Partial<MockAsset> - Update imports across all affected files - Export queryClient from main.tsx for component separation All ESLint and TypeScript compilation errors resolved (0 errors)
- Add comprehensive Office 365 connector example with user directory functionality - Implement realistic mock data matching live Office 365 User interface - Add user search, profile display, and photo loading patterns - Include detailed TODO comments for easy conversion to live data - Provide GitHub Copilot-optimized code patterns for AI-assisted development - Add comprehensive developer guidance in copilot-instructions.md Features: - User directory search with debounced input - Rich user profile cards with comprehensive contact information - Current user profile display with detailed organizational data - Avatar support with fallback for missing photos - Responsive design with mobile-friendly layouts - Clear mock-to-live data conversion path with side-by-side examples This template serves as a complete static sample for learning Power Apps Code Apps patterns while providing a clear upgrade path to live Office 365 integration.
- Replace hardcoded background colors with Fluent UI design tokens - Fix App.tsx root background to use tokens.colorNeutralBackground1 - Add proper background colors to PageHeader component - Fix Card and loading spinner backgrounds in Office365Page - Remove conflicting global CSS that interfered with theme system - Update Layout.tsx with proper theming support - Ensure consistent theming across light and dark modes
- Add useCallback to loadPhotosForUsers function - Include loadPhotosForUsers in useEffect dependencies - Import useCallback from React
- Set verbatimModuleSyntax to false in both tsconfig.app.json and tsconfig.node.json - Maintains compatibility while allowing more flexible import/export syntax - Build and compilation verified to work correctly
Code Splitting: - Add lazy loading for Office365Page, SqlPage, and CustomApiPage - Implement Suspense with loading spinner fallback - Split vendor libraries into separate chunks (React, Router, Fluent UI) Bundle Improvements: - Reduce initial bundle from 641KB to 46KB (87% smaller) - Enable progressive loading of pages on demand - Better caching with separate vendor chunks UI Cleanup: - Remove User ID from profile card for cleaner display - Keep only Account Status in bottom section
- Add informational card below Demo Mode badge for immediate visibility - Include link to data connection guide in GitHub documentation - Use 'Connector' terminology instead of 'API' for Power Platform consistency - Improve visual hierarchy with emojis and proper spacing - Provide both immediate guidance (Copilot) and comprehensive resources (docs)
- Remove statistics cards from SQL page for cleaner layout - Add 5 sample project records with realistic data structure - Remove unnecessary mock data imports and conversions - Update navigation menu description to 'Project management with DataGrid' - Clean up Office 365 page to use inline User interface - Remove external model dependencies for self-contained components ✨ Both pages now ready for Power Apps SDK integration with clear TODO markers
- Wrap static projects array in useMemo to prevent recreation on every render - Fixes ESLint react-hooks/exhaustive-deps warning - Improves performance by avoiding unnecessary re-renders of dependent hooks ✅ All linting and compilation checks now pass cleanly
Major changes: - Converted SqlPage from real SQL integration back to template mode with static data - Updated HomePage to describe SQL example as a learning template - Added comprehensive sample data generation functionality - Implemented professional table layout with proper column display - Added server-side pagination simulation (10 records per page) - Fixed search input focus issues with debounced search - Added proper TypeScript types and ESLint compliance - Cleaned up copilot instructions and cursor rules - Added Power Platform configuration files for SQL integration - Created database schema and service files for future real data migration Template features: - 📋 Static data mode for learning SQL connector patterns - 🔍 Debounced search with proper focus management - 📄 Server-side pagination simulation - �� Professional table layout with tooltips and badges - 🛠️ Sample data generation for testing - 🔄 Clear conversion path to real SQL database integration - ✅ Full TypeScript compliance and ESLint validation The template is now ready for developers to practice SQL connector integration patterns.
- Replace live Asset Management API integration with static mock data - Update CustomApiPage to use template mode with mock assets - Simplify data structure to match Power Platform custom connector model - Add developer-friendly template instructions and migration guidance - Update HomePage card and menu descriptions to reflect template nature - Maintain DataGrid table structure and error handling patterns - Add clear comments and examples for easy real connector integration - Keep professional UI ready for production use
…equirements document for FluentSample project; update README to reflect available Office 365 APIs.
…requisites in README
…e App integration, enhancing clarity and migration guidance
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.
This pull request introduces a new comprehensive sample template,
FluentSample, for Power Apps Code Apps. It includes significant updates to documentation, project structure, and development guidelines, aimed at providing a robust starting point for developers. Key changes include the addition of detailed documentation, mock data, and examples for Office 365, SQL, and custom connectors, as well as improvements to navigation and UI design.New Sample Template: FluentSample
Documentation Enhancements:
README.mdforFluentSample, detailing setup, prerequisites, and usage of the template. It includes step-by-step guides for connecting to real data sources like Office 365 and SQL.requirements.mdoutlining project features, technical requirements, and success criteria. It provides detailed descriptions of integration patterns and migration paths from mock data to live connectors.Project Setup:
.gitignorefor managing logs, build artifacts, and editor-specific files..cursor/rules/powersdkcli.mdcand.cursor/rules/powersdkcli_backup.mdcfor development context instructions.Documentation Updates
README.mdto include references to the newFluentSampleand reorganized the "Samples" and "How to" sections for better clarity.These changes provide a strong foundation for developers to quickly build and integrate Power Apps Code Apps using modern UI patterns and real-world data connectors.