Skip to content

Repository files navigation

🎓 Faculty Observation Form

A Flask web application for faculty classroom observation evaluations using Neo4j database.


📋 Features

  • ✅ User authentication (faculty & admin roles)
  • ✅ Faculty observation evaluation form
  • ✅ PDF export of evaluations
  • ✅ Dashboard with filtering & search
  • ✅ Neo4j graph database backend
  • ✅ CSRF protection
  • ✅ Secure password hashing

📁 Project Structure

├── app.py                 # Main Flask application
├── requirements.txt       # Python dependencies
├── Procfile              # Render deployment config
├── .env.example          # Environment variables template
├── static/
│   ├── signatures/       # Signature uploads
│   └── uploads/          # File uploads
├── templates/            # HTML templates
│   ├── base.html
│   ├── dashboard.html
│   ├── observation.html
│   └── ...
└── README.md             # This file

🔐 Security Features

  • Password Hashing: Uses werkzeug bcrypt encryption
  • CSRF Protection: Enabled on all forms
  • Environment Variables: Secrets never in code
  • Secure Session: Flask sessions with secure cookies

📦 Requirements

  • Python 3.8+
  • Neo4j (local or Neo4j Aura cloud)
  • Dependencies in requirements.txt

👥 User Roles

Faculty

  • Create own observations
  • View own evaluations
  • Cannot modify others' evaluations

Admin

  • View all observations
  • Edit any observation
  • Delete observations
  • Manage users

🔧 Common Commands

# Install dependencies
pip install -r requirements.txt

# Run locally
python app.py

# Production server
gunicorn app:app

Releases

Packages

Contributors

Languages