Warning: include(modules/m7/m7-subnav.php): Failed to open stream: No such file or directory in /var/www/webdesign/includes/dynamic-subnav.php on line 12
Warning: include(): Failed opening 'modules/m7/m7-subnav.php' for inclusion (include_path='.:/usr/share/php') in /var/www/webdesign/includes/dynamic-subnav.php on line 12
Phase 2: Final Capstone Project
Build your complete capstone project implementing all requirements from your Phase 1 proposal. This comprehensive Flask application must demonstrate mastery of all course concepts through a professional, fully-functional web application.
Phase 2 Objectives
- Implement complete application from Phase 1 proposal
- Create minimum 5 related database tables with proper constraints
- Build dynamic dropdowns and interactive Bootstrap modals
- Integrate external APIs (yfinance, weather, social media, etc.)
- Implement data visualizations with Chart.js or similar
- Deploy fully functional application to Heroku
- Submit GitHub repository and Heroku project name
Phase 2 Requirements
Database Design Implementation
Your application must implement the database schema from your Phase 1 proposal with professional-quality relationships and constraints.
- Minimum 5 Tables: At least 5 interconnected database tables
- Foreign Key Constraints: Proper relationships between tables with CASCADE options
- User Authentication Table: Secure user management with data ownership
- Raw SQL Queries: Use mysql.connector with complex JOIN operations
- Data Validation: Input validation and constraint enforcement
Interactive User Interface Requirements
Build sophisticated user interface elements that demonstrate advanced web development skills and professional design patterns.
- Dynamic Dropdowns: Populated from database with dependent selections
- Bootstrap Modals: For CRUD operations, confirmations, and forms
- Responsive Design: Mobile-friendly layouts using Bootstrap grid
- Interactive Forms: Complex forms with validation and error handling
- User Dashboard: Personalized interface based on user authentication
External API Integration
Integrate external APIs to demonstrate real-world application development and data manipulation skills.
- Financial APIs: yfinance for stock data, cryptocurrency APIs
- Weather Services: OpenWeatherMap or similar weather data
- Social Media APIs: Twitter, Reddit, or news feed integration
- Data APIs: Government data, sports statistics, or industry-specific APIs
- Real-time Updates: AJAX calls for dynamic content refreshing
Data Visualization and Analytics
Implement data visualization features using modern JavaScript libraries to present information effectively.
- Chart.js Integration: Interactive charts, graphs, and visualizations
- Dashboard Analytics: Summary statistics and key metrics
- Data Export: CSV or PDF export functionality
- Filtering and Search: Advanced data manipulation features
- Real-time Charts: Dynamic updates from API data
Deployment and Submission Requirements
Deploy your complete application to production environment and submit following standard course procedures.
- Heroku Deployment: Fully functional application with JawsDB MySQL
- GitHub Repository: Clean, well-documented codebase
- Database Setup: All tables created with proper relationships
- Environment Variables: Proper configuration for production
- Testing: All features working in production environment
- Documentation: Clear README with setup and usage instructions
Final Submission Instructions
Follow the same submission format used throughout the course for consistency.
- Push complete project to GitHub repository
- Share GitHub repository with bamarshall06
- Deploy to Heroku and share access with bryan.marshall@gcsu.edu
- Submit only Heroku project name on GeorgiaView
Summary
Phase 2 is your comprehensive capstone project that demonstrates mastery of all course concepts through a professional Flask application with complex database design, modern UI elements, API integration, data visualization, and production deployment.
Step-by-Step Demonstration
Live Demonstration
This demonstration will walk you through a complete implementation. The demo will include:
- Setup and preparation
- Step-by-step implementation
- Code explanations and best practices
- Testing and troubleshooting
- Final review and next steps