8000 GitHub - ausbennett/mes-finance-platform: A centralized platform designed to streamline financial operations for McMaster Engineering Society (MES), simplifying reimbursement requests, payment processing, and ledger tracking with Plaid. The platform reduces administrative overhead and ensures compliance with audit standards.
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

A centralized platform designed to streamline financial operations for McMaster Engineering Society (MES), simplifying reimbursement requests, payment processing, and ledger tracking with Plaid. The platform reduces administrative overhead and ensures compliance with audit standards.

License

Notifications You must be signed in to change notification settings

ausbennett/mes-finance-platform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

McMaster Engineering Society Custom Finance Platform

React TypeScript Next.js MongoDB TailwindCSS

Developer Names:

  • Adam Podolak
  • Austin Bennett
  • Christian Petricca
  • Evan Sturmey
  • Jacob Kish

Date of project start: September 16th, 2024

A custom financial expense reporting platform for the McMaster Engineering Society (MES). This platform streamlines the reimbursement process for 60+ student groups and individuals, offering features like payment requests, intramural funding applications, custom approval workflows, audit tracking, and automated notifications.

The folders and files for this project are as follows:

  • docs - Documentation for the project
  • refs - Reference material used for the project, including papers
  • src - Source code
  • test - Test cases

🚀 Installation and Development Setup

This project uses:

  • React / Next.js for the frontend
  • MongoDB for the database
  • Tailwind CSS for styling
  • TypeScript for type safety in both frontend and backend

🛠️ Prerequisites

Make sure the following are installed on your system:

  • Node.js (includes npm)
  • MongoDB (running locally or via remote cluster)

📦 Installing Dependencies

  1. Clone the repository:

    git clone https://github.com/yourusername/yourproject.git
    cd yourproject
  2. Install dependencies for both backend and frontend:

    • Backend:

      cd src/backend
      npm install
    • Frontend:

      cd src/frontend
      npm install

    ✅ All dependencies including Next.js, Tailwind CSS, and TypeScript are declared in each package.json, so just running npm install takes care of everything.


⚙️ Configuration

Backend Environment Variables

Create a .env file in the backend/ directory with the following content. Be sure to replace the placeholder values with your actual credentials and API keys (do not commit these secrets to version control):

# Application Port
ORT=3001

# Plaid API Credentials
PLAID_CLIENT_ID=YOUR_PLAID_CLIENT_ID
PLAID_SECRET=YOUR_PLAID_SECRET
PLAID_ENV=sandbox

# Email Service Configuration
EMAIL_HOST=smtp.gmail.com
EMAIL_PORT=587
EMAIL_USER=YOUR_EMAIL_ADDRESS
EMAIL_PASS="YOUR_EMAIL_PASSWORD"

# MongoDB Connection URI
MONGODB_URI=YOUR_MONGODB_CONNECTION_URI

💻 Running the Development Environment

To run the full development environment, start both the backend and frontend servers in separate terminals:

  1. Start the Backend:

    cd src/backend
    npm run dev
  2. Start the Frontend:

    cd src/frontend
    npm run dev

The frontend (Next.js app) will typically be available at:

http://localhost:3000

The backend (API server) will run on its configured port, such as:

http://localhost:5000

📚 Helpful Resources

About

A centralized platform designed to streamline financial operations for McMaster Engineering Society (MES), simplifying reimbursement requests, payment processing, and ledger tracking with Plaid. The platform reduces administrative overhead and ensures compliance with audit standards.

Resources

License

Stars

Watchers

Forks

Contributors 5

0