###############################
# Visual Studio / .NET Ignore #
###############################

# User-specific files
.vs/
.vscode/
*.user
*.suo
*.userosscache
*.sln.docstates

# Build results
[Bb]in/
[Oo]bj/
**/[Bb]in/
**/[Oo]bj/

# Rider / JetBrains
.idea/

# Build output from publish or temp folders
[Dd]ebug/
[Rr]elease/
x64/
x86/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
[Bb]uild/
[Ll]og/
[Ll]ogs/
*.log

# NuGet packages
*.nupkg
*.snupkg
*.nuspec
*.dll
*.exe
packages/
**/packages/

# Compiled sources
*.dll
*.exe
*.pdb
*.cache
*.mdb

# Publish files
**/Properties/PublishProfiles/
**/obj/Release/
**/obj/Debug/
**/obj/**/PubTmp/
**/obj/**/Out/

# Generated code
*.generated.*
*.g.*
*.AssemblyInfo.cs

# Others
[Tt]est[Rr]esult*/
[Tt]est[Rr]esults/
*.dbmdl
*.bak
*.sql
*.sqlite

# Temporary and local settings
*.tmp
*.temp
*.swp
*.swo
*.userprefs
*.local
*.env
.env
.env.*

# OS generated files
.DS_Store
Thumbs.db
ehthumbs.db
desktop.ini

# Dotnet Tools
.dotnet-tools/

# Secrets and config files
# appsettings.*.json
secrets.json
*.key
*.pem
*.pfx
*.cer
*.cache

#########################
# Project-specific rules #
#########################

# Database scripts (optional - uncomment if not needed in git)
# /database/

# Documents (optional)
# /documents/

# Ignore build artifacts for microservices
**/microservices/**/[Bb]in/
**/microservices/**/[Oo]bj/
**/gateway/**/[Bb]in/
**/gateway/**/[Oo]bj/

#########################
# End of .gitignore file #
#########################
*.assets.cache
/microservices/admin/obj/Debug/net9.0/API.Admin.assets.cache
/microservices/institute/obj/Debug/net9.0/API.Institute.assets.cache
/microservices/S3Bucket/obj/Debug/net9.0/API.Bucket.assets.cache
/microservices/student/obj/Debug/net9.0/API.Student.assets.cache
/microservices/teacher/obj/Debug/net9.0/API.Teacher.assets.cache
/microservices/user/obj/Debug/net9.0/API.User.assets.cache
