Skip to content

Kuhame/backfeed

Repository files navigation

Backfeed

A course evaluation management platform for educational institutions.

Prerequisites

Before you begin, ensure you have installed:

  • Node.js (v18 or higher)

  • npm

  • docker

Setup Instructions

  1. Install pnpm
npm install -g pnpm@latest-10
  1. Clone the repository
git clone https://github.com/Kuhame/backfeed.git

cd backfeed
  1. Install dependencies
pnpm install
  1. Environment Setup

Create a .env file in the root directory with the following variables:

Variable Description Value (Docker Compose)
DATABASE_URL PostgreSQL connection string postgresql://postgres:postgres@localhost:5433/backfeed_app
NEXTAUTH_URL Base URL for NextAuth http://localhost:3000
NEXTAUTH_SECRET Secret key for JWT encryption secret_key
  1. Database Setup
# Start database
docker compose up

# Seed database
npx prisma migrate reset
  1. Start the development server
pnpm run dev

The application will be available at http://localhost:3000

  1. Run tests
npm run test

Test Accounts

You can log in with these test accounts:

Database Management

  • Reset Database: npx prisma migrate reset

  • View Database: npx prisma studio

  • Update Schema: npx prisma db push

Project Structure

src/

├── app/ # Next.js app router

│ ├── (views)/ # Protected routes

│ ├── api/ # API routes

│ ├── controllers/ # Business logic

│ └── models/ # Database models

├── components/ # React components

├── hooks/ # Custom React hooks

├── lib/ # Utility functions

└── types/ # TypeScript types

Technologies Used

  • Next.js 15 (App Router)

  • TypeScript

  • Prisma (ORM)

  • PostgreSQL

  • NextAuth.js

  • Tailwind CSS

  • Shadcn/ui

Architecture diagram

diagram

Features not implemented

The following features were planned but not yet implemented:

  1. Allow admin to view all archived versions of a template.
  2. Enable writing additional questions for a survey with the following options:
  • Overwrite Template A
  • Save as a new template (Template B)
  • Do not save and create the survey as-is.
  1. Modify an existing template and overwrite it.
  2. Allow teachers to write comments on surveys.

Deployed app

Link to the deployed app

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages