@VariantAlleles.com

    PostId

    Overview

    I am building VariantAlleles.com as a way to learn about web development and to provide a useful tool for the genetics community. I want to build a small community of users who will discuss and provide aid in the interpretation of genetic variants.

    Planning

    1. Goals and Objectives
    2. Technology Stack

    Technology Stack

    Framework

    Database & ORM & Schema Validation

    VariantAlleles.com will use a distributed SQL database that is compatible with postgres to store data. The database is hosted on cockroachlabs cloud.Prisma is used as the ORM. Zod is used for schema validation.

    Authentication

    VariantAlleles.com will use Clerk for authentication.

    Components & Styling

    VariantAlleles.com will use ShadUi as the componet library.Shadui uses a headless approach and is integrated with TailwindCss for convienent styling and theming. FramerMotion is used for animations and transitions but has minimal presence in the codebase as I haven't focused on animations yet.

    I am using the 'New York' icon set from radix-icons. I am also using the 'lucide' icon set for when there is no icon in the radix set.

    File upload & Storage

    The PDF Library will use Cloudinary for file upload and storage.

    Cloudinary

    Documentation

    I'm using mdx-bundler to create the posts and pages for VariantAlleles.com.

    mdx-bundler

    Deployment

    VariantAlleles.com will be deployed to Fly.io. A previous version of the app was deployed to Netlify but I had trouble updating from Remix V1 to V2. Perhaps I should document that problem and solution here. I discovered that Netlify doesn't support the version of esbuild that mdx-bundler uses. There is probably a work around but I decided to try Fly.io instead.

    Fly.io