Skip to content

Timetable app for TAMK students. Fullstack application. Not affiliated with TAMK.

Notifications You must be signed in to change notification settings

kristianka/tamk-timetable

Repository files navigation

Timetable for TAMK courses 📅

Not affiliated with TAMK, unofficial project for a course.

This is the repository for our fullstack timetable app, made by @HenriSjoblom, @kristianka and @Zennrr!

You can search tamk courses and create your own timetable! Note: this is proof-of-concept version of the main product. Over the course, we made thorough documentation how to make the project.

This project has a proper CI/CD pipeline (excluding deploy), we used Trello for tracking issues and what work to do. We used pull requests like in a real project, the main branch is protected.

Both frontend and backend have strict linting and style rules! We used eslint and prettier. Pretty much all buttons/server calls have a test!

Screenshots under technologies!

Technologies 🛠️

Frontend

  • React, Vite
  • TypeScript
  • TailwindCSS
  • React Router
  • Cypress

Backend

  • NodeJS
  • TypeScript
  • Express
  • MongoDB
  • Docker
  • Jest

Running

You need three console windows. One for frontend, one for backend and one for the Docker database.

  • run docker-compose up
  • run npm install in both frontend and backend
  • run npm run dev in both frontend and backend

Required env values in backend:

TAMK_API_KEY
SECRET
MONGO_AUTHSOURCE
MONGO_USER
MONGO_PASS
MONGO_URL

You can get tamk api key from here. Secret can be anything, it's for jsonwebtoken. You can decide MongoDB credentials. To localhost the database, the MONGO_URL can be localhost:27017/timetables_db.

Screenshots 📷

Landing page image

Login page image

Register page image

Main page after logging in image

Searching for a course image

After course has been added image

About

Timetable app for TAMK students. Fullstack application. Not affiliated with TAMK.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published