A full-stack job application tracking system built with React and ASP.NET Core. This portfolio project demonstrates modern web development practices with component-driven architecture, RESTful API design, and clean separation of concerns.
- β¨ Features
- π οΈ Tech Stack
- π§ .NET Configuration
- π Running the Application
- π§± Development Notes
- π Component & UI Updates
- β MVP Completion Summary
- Create and view job applications (update/delete functionality in development)
- Responsive React interface with component-scoped styling
- Interactive UI elements with hover states and smooth transitions
- RESTful ASP.NET Core Web API with structured endpoints
- Clean project architecture with separated frontend/backend directories
- Frontend: React, JSX, CSS Modules
- Backend: C# ASP.NET Core Web API
- Development: Git version control
Last Updated: June 21, 2025
This project requires .NET 8.0 runtime. Due to system having multiple .NET versions installed, the following configuration was implemented:
- Primary System: .NET 9.0.5 (global default)
- Project Runtime: .NET 8.0.117 via Homebrew (
dotnet@8) - Configuration: Shell alias created for project-specific .NET 8 usage
# Start the development server
dotnet8 run
# Application will be available at:
# http://localhost:5150- HTTPS development certificate installed for local development
- Application configured for Development environment
- Hot reload and debugging enabled
- Renamed Home component to Dashboard β Better reflects the application's purpose as a job tracking dashboard
- Implemented component-specific CSS architecture β Each component now has its own CSS file to prevent inheritance conflicts and improve maintainability
- Cleaned up global App.css β Stripped down to essential global styles only (body, fonts)
- Enhanced Navigation β Added specific CSS classes and improved button styling with distinct colors
- Restored main container frame β Added visual separation between navigation and dashboard content with border, background, and shadow effects
- Improved visual hierarchy β Clean separation between global styles and component-specific styling
- Better file organization β Component-specific CSS files imported directly into components
- Eliminated CSS conflicts β Removed generic button/nav styles that were causing inheritance issues
- Semantic CSS classes β All components now use specific, meaningful class names
- Sort functionality β Dropdown with options to sort by Date and Status
- Filter functionality β Dropdown to filter applications by Status, Company, etc.
- Enhanced navigation β Additional nav buttons for improved user experience
- Dashboard view of all job applications
- Add new applications
- View individual application details
- Update existing applications
- Clean, responsive interface
Complete frontend refactor focusing on a cohesive, professional design system with soft neutral tones and consistent component architecture.
Color Palette (Soft Blues/Grays)
- Background:
#f8fafc(neutral light) - Cards: White with
#e2e8f0borders - Accent:
#64748b(slate) - Interactive:
#475569(darker slate for hover states)
Dashboard
- Streamlined card content by removing label prefixes
- Implemented consistent class naming conventions
- Added subtle box shadows with matching border-radius for card elevation
- Enhanced hover interactions with lift effects
Read Component
- Unified styling with Dashboard for visual continuity
- Redesigned "Back" and "Update" buttons with consistent hover behavior
- Optimized spacing and removed redundant labels for cleaner layout
Create Component
- Restructured JSX using form groups for improved spacing consistency
- Upgraded date inputs to
type="date"for better user experience - Applied card-style form design with white background and soft shadows
- Aligned button styling with global navigation theme
UpdateApplication (Work in Progress)
- Established component structure matching existing layout patterns
- Applied initial styling for MVP functionality
- Marked as development placeholder
Navigation
- Removed non-standard navbar hover lift behavior
- Implemented individual button hover effects with lift and drop shadow
- Ensured smooth transitions align with global design standards
- Consistent component-scoped CSS architecture
- Standardized hover states and transitions
- Improved accessibility through semantic form structure
- Enhanced visual hierarchy with professional card-based layout
As of June 24, 2025, the core MVP for the Application Tracker has been completed. Key accomplishments from this final push include:
- β Successful implementation of full CRUD operations (Create, Read, Delete)
- β
Refined component structure and prop flow (especially
Read.jsx) - β
Extracted
fetchDatafor reusable, prop-driven state updates - β Ensured consistent styling and UI feedback across Dashboard and Read components
- β Finalized scoped class naming for maintainable CSS
- β Added concise date labels and improved visual hierarchy for card displays
- β Clean frontend-backend integration with proper state synchronization
This version represents a stable, fully functional job application tracking system with core CRUD workflow. Update functionality is planned for future iterations.