A modern Q&A platform built with ASP.NET Core 8.0, inspired by Stack Overflow. SegFault allows users to ask questions, provide answers, and engage with the developer community through voting and categorization.
- User Authentication & Authorization: Complete user registration, login, and profile management with ASP.NET Core Identity
- Question & Answer System: Users can post questions, provide answers, and engage in discussions
- Voting System: Upvote/downvote questions and answers to highlight quality content
- Category Management: Organize questions by categories for better discoverability
- User Profiles: View user activity, questions, and answers
- Rich Text Editing: Enhanced content creation with Summernote editor
- Responsive Design: Mobile-friendly interface built with Bootstrap
- Framework: ASP.NET Core 8.0 (MVC)
- Database: SQL Server with Entity Framework Core
- Authentication: ASP.NET Core Identity
- Frontend: Bootstrap 5, jQuery, Summernote
- Security: HTML Sanitization for user content
SegFault/
├── Controllers/ # MVC Controllers (Questions, Answers, Categories, Users)
├── Models/ # Data models (Question, Answer, Category, ApplicationUser)
├── Views/ # Razor views and layouts
├── Data/ # Entity Framework DbContext
├── Areas/Identity/ # Identity UI pages (Login, Register, etc.)
├── Migrations/ # Database migrations
├── wwwroot/ # Static files (CSS, JS, images)
└── Utils/ # Utility classes
- .NET 8.0 SDK
- SQL Server (LocalDB or full instance)
- Visual Studio 2022 or VS Code
- Clone the repository
- Navigate to the SegFault directory
- Update the connection string in
appsettings.json - Run database migrations:
dotnet ef database update
- Start the application:
dotnet run
The application will be available at https://localhost:5001 (or the port specified in launchSettings.json).
- Question: Represents a user question with title, content, and associated answers
- Answer: Responses to questions with voting capabilities
- Category: Topic classification for questions
- ApplicationUser: Extended Identity user with additional properties
- Post: Base class for questions and answers with common properties (content, score, timestamps)




