The CCC Secondary Appointment Workflow Management System is a comprehensive web application that automates the complex process of managing secondary appointment applications to the College of Connected Computing (CCC) at Vanderbilt University. The system streamlines the entire approval workflow from initial application submission through final FIS (Faculty Information System) entry, replacing manual email chains and paper forms with a structured digital process.
- Automated Workflow: Digital approval process with multiple stakeholder routing
- Real-time Status Tracking: Live updates on application progress with audit trails
- Email Integration: Automatic notifications and reminders to all parties
- Document Management: CV upload and secure file storage
- Digital Signatures: Electronic approval capture for legal compliance
- Administrative Dashboard: Comprehensive oversight and management tools
- Mobile-Responsive Interface: Access from any device for approvers and administrators
- For Applicants: Simple submission form, document upload, status tracking
- For Approvers: Secure email links, digital signature capture, approval/denial workflow
- For Administrators: Full application management, analytics, bulk operations, manual overrides
Faculty secondary appointments at universities involve complex approval workflows requiring coordination between multiple departments, administrators, and approval levels. Traditional methods using email chains and paper forms create several critical problems:
- Process Delays: Manual routing causes significant delays and bottlenecks
- Lost Applications: No centralized tracking leads to missed or forgotten applications
- Lack of Transparency: Applicants and administrators cannot see real-time status
- Compliance Issues: Difficulty maintaining proper audit trails and documentation
- Administrative Overhead: Manual coordination consumes significant staff time
- Communication Gaps: Inconsistent notifications and follow-up processes
This system solves these problems by providing a centralized, automated platform that ensures proper approvals, maintains complete audit trails, and provides real-time visibility into the entire process.
- Node.js (v16 or higher)
- npm or yarn package manager
- Git
-
Clone the repository
git clone <repository-url>
-
Install backend dependencies
cd backend npm install -
Install frontend dependencies
cd ../ npm install -
Configure environment variables
Create
.envfile in the backend directory:PORT=3001 DATABASE_PATH=./data/database.sqlite FRONTEND_URL=url-or-localhost AMPLIFY_API_KEY=amplify-api-key REACT_APP_AMPLIFY_API_KEY=amplify-api-key TEST_EMAIL=your-email CCC_FACULTY_EMAIL=cccfacultyaffairs@vanderbilt.edu
Create
.envfile in the frontend directory:REACT_APP_AMPLIFY_API_KEY=amplify_key CCC_FACULTY_EMAIL=faculty_email TEST_EMAIL=your_email FRONTEND_URL=frontend_url
-
Initialize the database
cd backend npm run init-db
-
Start the backend server
cd backend npm start -
Start the frontend development server (in a new terminal)
npm start
-
Access the application
- Main Application: http://localhost:3000
- Backend API: http://localhost:3001
- Faculty Submission: Faculty members complete the application form and upload their CV
- CCC Review: CCC staff review and approve the initial application
- Associate Dean Review: CCC Associate Dean provides secondary approval
- Primary Approval: Department chairs, deans, or other approvers from the primary institution
- FIS Entry: Final administrative step to enter approved appointments into the university system
- Completion: Automatic confirmation and process completion
- Applicants: Submit applications and track status
- CCC Admin: Manage all applications, perform FIS entry, system administration
- CCC Associate Dean: Provide secondary review and approval
- Department/Division Chairs: Approve applications from their units
- Deans: Final approval authority for their colleges
# Frontend development build
npm start
# Backend development build
cd backend
npm run dev# Build frontend for production
npm run build
# Build backend for production
cd backend
npm run build# Run frontend tests
npm test
# Run backend tests
cd backend
npm testThe following still need to be done for completion and handover of the project:
- Final testing of every single workflow to iron out small details
- AWS Cognito configuration to replace the dummy login currently in place
- An email log within the admin panel to show all previous emails that have been sent -- this was a last-minute request by our sponsor.
- Deployment on a hosted website
- Oracle integration to automatically pull in approver emails (this was determined not feasible for the semester).