Campus Companion is an application designed to enrich campus life through integrated educational tools and streamlined services. The architecture of Campus Companion is distributed across Docker containers for a seamless transition from development to production.
For full deployment instructions please take a look at our Deployment Guide
Campus Companion is composed of:
- API Server Container: Manages backend logic and data processing.
- Front-end UI Container: Delivers the user interface, serving static content and handling interactions.
- Shibboleth Authentication Container: Ensures secure user authentication.
- generate.py: A Python program to populate the database for the chat system.
To deploy/run Campus Companion, ensure the following:
-
Access to a Virtual Computing Environment (VCE) like VCL or a cloud-based instance.
-
A MongoDB database setup with a
MONGO_URIconnection string. -
A
.envfile with all necessary environment variables in the /api folder.
MODEL=gpt-3.5-turbo
OPENAI_API_KEY= 'ENTER API KEY'
SENDGRID_API_KEY='ENTER API KEY'
MONGO_URI=mongodb+srv://user:[email protected]/?retryWrites=true&w=majority
MONGODB_DATABASE=campusCompanion_DATABASE
MONGODB_VECTORS= MONGODB_VECTORS
MONGODB_VECTOR_INDEX= MONGODB_VECTOR_INDEX
MONGODB_USERS= MONGODB_USERS
MONGODB_SYLLABI= MONGODB_SYLLABI -
Docker and Docker Compose installed on the VCE.
To run Campus Companion, complete the following:
- cd to the campusCompanion folder and run docker compose up --build
- navigate to https://localhost
Common issues may involve:
- Docker Container failures: Verify configurations, environment variables, and system resources.
- Database Connectivity Issues: Double-check MongoDB URI and network access.
- Authentication Errors: Check Shibboleth configurations and credentials.
- SSL/TLS Certificate Issues: Use SSL Test tools and verify certificate installation and renewal.
Ensure the proper operation by:
- Checking website accessibility.
- Testing login functionality.
- Navigating key pages.
- Verifying database connectivity and security features.
Technical verification includes API response checks and log reviews, with logs found at var/www/2024SpringTeam30-Entrepreneurs/campuscompanion/logs/.
For any additional help or clarification, please reach out to the Campus Companion development team.
Sanjit Verma |
Arul Sharma |
Sarvesh Soma |
Meles Meles |
Sanket Nain |