Alexandruroventa

Alexandruroventa
Next.js 14ReactTypeScriptTailwind CSSSassFramer MotionMongoDBMongooseResendNTnext-themesAWSAWS AmplifyR53AWS Route 53

Database schema

certificates7 fields
_idObjectId
srcString
organizationString
languageLearntString
authorArray
slugString (auto)

Stores obtained certificates. Slug is auto-generated pre-save from organization + languageLearnt + date + _id.

experience10 fields
_idObjectId
idIncNumberNumber
startYearDate
currentYearDate
endYearDate
isEndedBoolean

Work history. Pre-save hook: if isEnded=true → currentYear=now, endYear=null.

Skill5 fields
_idObjectId
skillNameString
categoryenum (5)
levelenum (3)
iconString

Technical skills. category ∈ {Frontend, Backend, Database, DevOps, Tools}. level ∈ {beginner, intermediate, advanced}. skillName is unique.

languageSkill3 fields
_idObjectId
skillNameString
linkString (auto)

Knowledge categories (e.g. JavaScript, React). link is auto-generated from skillName. Referenced logically via the category field in languageSKillContent.

languageSKillContent10 fields
_idObjectId
category→ languageSkill
languageTypecourse | project
contentTitleString
contentDescriptionString
unique_idString (auto)

Knowledge content — courses or projects. References a category in languageSkill and associated code in CodeVersion. Rating = ratingSum / ratingCount.

CodeVersion5 fields
_idObjectId
codeString
versionCodeString
dateDate
title_id→ languageSKillContent

Code versions linked to a KnowledgeEntry. title_id is a back-reference for bidirectional navigation.