Skip to content

nam-t24/Senior-CS-Project

Repository files navigation

Minted

Senior Design Project by the Shadow Wizard Money Gang
Made with Supabase

Bridging the gap between non-profits and donors to fund projects.

Demo the project on mintd.vercel.app.

To run and demo the project locally (same as the deployed version on mintd.vercel.app), view the steps here.

Tech Stack

Front End

  • Next.js 14
  • TypeScript
  • Tailwind CSS

Database and Auth

  • Supabase

Deployment

  • Vercel

Initialization for Developers

Connecting to Supabase Database

  1. Get Project Keys

    Go to Project API section in the Supabase Database and find the Project URL and API Key

  2. Create env File

    Create .env.local file and populate url and key, get template from .env.example

    NEXT_PUBLIC_SUPABASE_URL=your-project-url
    NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key
    

    Don't populate in .env.example and upload online lol

Running the Project

  1. Install Packages (requires node version >= 18.17.0)

    npm install
  2. Run Project

    npm run dev

    It should now be running on localhost:3000.

Theming

Use tailwind theme extensions under tailwind.config.js

theme: {
   extend: {
     colors: {
         background: "#FFFBFB", //near white

         darkmaroon: "#590D24",
         //Color palette from figma
         maroon: "#944E63",
         lightmaroon: "#B47B84",
         brown: "CAA6A6",
         peach: "#FFE7E7",

         //Text colors
         primary: "#FFFBFB", //near white, use as substitute to white text
         heading: "#262626", //dark gray, use for big texts and headings
         body: "#737373", //light gray, use for small texts and body
     },
   },
},

Use Material UI icons found here for any svg icons

Minted uses shadcn/ui for UI components

Directory Navigation

Page navigation

/app
Contains all path files for website

/app/dashboard
Contains pages split by the sidenav menu options

/app/login
Contains only the login page

/app/auth/callback
Handles user auth control from email or google sign in

Supabase connection

/utils/supabase
Handles the integration of Supabase with the project.

API calls

/utils/scripts
Contains all API calls and queries to the Supabase database. Calls are separated by the table/functionality it is associated with.

Shadcn components

/components/ui
Reserved for all component files installed from shadcn

Database types

/database.types.ts
Establishes types of database objects. Created and updated using Supabase CLI type generation. Allows typescript to recognize data from Supabase queries.

About

Minted - A Senior Design Project

Resources

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •  

Languages