Skip to content

mikey-boy/tutortime

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tutortime is an online time-bank platform focused on learning. Each user plays two roles on the platform:

  • As a teacher you help other students in a subject you understand. You are awarded credits for your time
  • As a student you can use your credits to schedule meetups with a teacher. They will help you learn about a subject you are interested in

Tutortime is a platform where users can learn new skills at no monetary cost.

Local development setup

Configuration file

Configurations are specified in a YAML file, there is a sample config.yaml that you can just use as-is for local development purposes:

cp config.yaml.sample config.yaml

Starting the database

Tutortime uses Postgresql to store data. For development purposes it is sufficient to run a postgresql database in docker and connect directly through localhost

cd postgresql

# Build the tutortime database, the db credentials are specified in the Dockerfile
docker build . -t tutortime-db:latest

# Create a docker container using the image we just created
docker run -p 5432:5432/tcp -d tutortime-db

Ensure that the information specified in the Dockerfile matches the db stanza of your config.yaml

Frontend

The frontend is built in VueJS and uses Vite as the Javascript bundler. You can compile and hot-reload for development by running:

cd frontend

# Bundle the frontend files, rebundle whenever there are changes
npm run watch

Backend

You will need Golang installed to run the application. If you haven't installed Go yet, you can download it from the official Go website or from your official package repository:

After go has been installed you can:

# Install the required dependencies
go get .

# Run the webserver
go run .

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published