Skip to content

A full stack webapp that allows users to create their online schedules and pick out a time that works best for them to meet.

Notifications You must be signed in to change notification settings

mattcattb/Swamp-Sync

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Swamp Sync

Full Stack application designed for scheduling times to meet with your friends and colleagues, even if everyone has a busy schedule. Built with the mern stack for Fall Intro to Software Engineering class at University of Florida.

homepage image

Project Overview

Swamp-Sync is a social-media-like platform that simplifies the process of scheduling meetings. Users can manage their schedules, create events, and find common meeting times with friends.

Features and Functionality

  • Full Authentication and Database Storage with MongoDB.
  • User Login verified with JWT Token authentication system.
  • Generate personal schedules for users stored in backend.
  • Create, Edit, and Delete Events for Users and display them in calendar view
  • Create meetings and invite users using friend codes, allowing users to accept or deny invites.
  • Manage added users and remove them if needed.
  • Displays the best time for all users to meet.

Tech Stack

Backend: Node.js, Express.js Frontend: React, Material UI, Tailwind Database: MongoDB Containerization: Docker, Docker Compose

Building & Running

Prerequisites

Setup Instructions

  1. Clone Repo

  2. Set Enviroment Configurations

  • Create '.env' file in /wtm-express/ with the following:
MONGO_INITDB_ROOT_USERNAME=rootuser
MONGO_INITDB_ROOT_PASSWORD=rootpass
MONGO_URI=mongodb://rootuser:rootpass@wtm-mongodb:27017/admin
LOCAL_MONGO_URI=mongodb://rootuser:rootpass@localhost:12345/admin
MONGO_INITDB_DATABASE=lamdb
PORT=3004
JWT_SECRET=pAonqkN/rorjS7sXd3ngJHXZJ8bjWVIMA9ZmJPRET8o=
  1. Build and Start Project
docker compose up --build d

This command starts the wtm-mongodb, wtm-react, wtm-express containers, and establishes a network between them

Local Setup

  1. Make sure mongodb container is running:
docker compose up wtm-mongodb -d
  1. create .env file
cd wtm-express

.env file should look like

MONGO_INITDB_ROOT_USERNAME=rootuser
MONGO_INITDB_ROOT_PASSWORD=rootpass
MONGO_URI=mongodb://rootuser:rootpass@wtm-mongodb:27017/admin
LOCAL_MONGO_URI=mongodb://rootuser:rootpass@localhost:12345/admin
MONGO_INITDB_DATABASE=lamdb
PORT=3004
JWT_SECRET=pAonqkN/rorjS7sXd3ngJHXZJ8bjWVIMA9ZmJPRET8o=
  1. install dependencies and start server
cd wtm-express
npm install
npm start
  1. go to frontend and startup servers
cd wtm-react
npm install
npm start

About

A full stack webapp that allows users to create their online schedules and pick out a time that works best for them to meet.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 96.3%
  • CSS 1.9%
  • HTML 1.3%
  • Dockerfile 0.5%