Aldi Ramdani.

    Portfolio Web Platform

    aceternity logo
    esc
    F1
    F2
    F3
    F4
    F5
    F6
    F7
    F8
    F8
    F10
    F11
    F12
    ~`
    !1
    @2
    #3
    $4
    %5
    ^6
    &7
    *8
    (9
    )0
    _
    + =
    delete
    tab
    Q
    W
    E
    R
    T
    Y
    U
    I
    O
    P
    {[
    }]
    |\
    caps lock
    A
    S
    D
    F
    G
    H
    J
    K
    L
    :;
    "'
    return
    shift
    Z
    X
    C
    V
    B
    N
    M
    <,
    >.
    ?/
    shift
    fn
    control
    option
    command
    command
    option
    full-stack

    Portfolio Web Platform

    A database-backed publishing system for projects, experience, credentials, and tools

    A static portfolio makes each update a code change. I built this platform so I could manage projects, experience, certifications, and technology records through protected forms while keeping public pages searchable and shareable.

    FieldRecord
    RoleProduct owner and full-stack developer
    Period2024 to present
    StatusDeployed and maintained
    Managed contentFour database-backed content areas

    Problem

    My first portfolio stored content inside the frontend. Adding a project required a code edit and deployment. That process slowed updates and made repeated metadata hard to manage.

    Role and scope

    I built the public site, admin dashboard, database models, forms, image upload, authentication, and SEO layer. I maintain the platform and use it as the publishing system for this case-study library.

    Process and decisions

    Clerk protects admin routes. Zod validates form data before server actions send it through Prisma to MongoDB. Cloudinary stores uploaded images. React Query manages public and admin request state.

    I kept the case-study body in Markdown so the editor can render headings, tables, code, images, and diagrams without a custom block schema.

    Live system

    The live platform now manages four content areas through authenticated administration. It handles CRUD actions, schema validation, image upload, project filters, structured metadata, sitemap generation, and responsive project pages. The case-study refresh adds 21 versioned Markdown files and a database sync command.

    MongoDB stores the production content. Prisma provides the application data layer, while Markdown keeps the long-form project copy under version control.

    Limits

    The platform has no editorial revision history, role matrix, or automated database migration for content edits. MongoDB remains the runtime source, while Markdown files provide the versioned authoring source. The sync command must run after a content change.

    Tech Stack:

    Next.js
    TypeScript
    MongoDB
    Prisma
    Clerk
    Cloudinary
    React Query

    Keywords:

    #Content Platform
    #Full-stack
    #Authentication
    #SEO
    #Admin Workflow
    Back