• Stars
    star
    103
  • Rank 333,046 (Top 7 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 2 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Project Title

WDJ Online Campus WDJ Icon

Overview

The goal of this project is to create an online teaching platform. Where teachers and students can work together from almost any location online.

  • You will learn real world programming skills which are immediately applicable in today's competitive tech industry.
  • Our campus provides students with flexibile, focused and personalized courses for each student.

It's true, I love teaching! So let's hang out with on https://www.youtube.com/c/WebDevJunkie. I stream daily videos teaching you the skills that will help you be succesful. Glad to see you here!

Check out our Initial project goals below, expand for details!

Teachers will be able to create/manage:          - classes
         - course materials
         - announcements
         - calendar events
         - student communications
Students will be able to:          - view and enroll in classes.
         - view, upload or download assignments and course materials.
         - view grades, announcements and calendar events.
         - communicate with teachers.

How to contribute

If you would like to contribute: fork this project and clone it to your local machine.

  1. https://github.com/codyseibert/online-classroom
       - https://docs.github.com/en/get-started/quickstart/fork-a-repo
  2. Ask Cody (Web Dev Junkie) what you can work on in our discord found here: https://discord.gg/MAvSGb3KyK
  3. Please be sure to 1st send a message in the online-classroom channel found on our discord!

Contribution guidelines are located here

Setup

In your terminal

- npm i                         (install project dependencies locally.)
- cp .env-sample .env           (copies .env-sample file to a new local .env file.)
- npx prisma migrate dev        (updates prisma db and syncs data.)
- npm run dev                   (starts the project development server.)
- open http://localhost:3000    (cmd/ctrl + click the link in terminal output to open browser.)

Note: If app is not showing on port http://localhost:3000 Check terminal output
& verify port number. If port is already in use check http://localhost:3001 or 3002, etc...
In an additional terminal tab run Docker:
In an additional terminal tab run Prisma Studio:

Mock User Setup

To test or development this project locally, various user roles are available. Set the following environment variable inside your .env file:

  • NEXT_PUBLIC_MOCK_NEXT_AUTH=true

Setting this env var will add buttons to the footer, allowing you use and s to switch users easily! Watch here to see implementation:

If you have questions or are unfamiliar with NEXTJS auth, please see the NEXT AUTH docs: https://next-auth.js.org/

Prisma

This project uses Prisma for database management.

https://www.prisma.io/docs/

To generate a new migration, run

$ npx prisma migrate dev --name <migration-name>

TRPC

This project uses TRPC for End-to-end typesafe APIs made easy.

NOTE: This project uses TRPC (version 9.26.2). Please make sure you referencing the correct docs version!

Here are the docs for reference if you would like to contribute by migrating from v9 to v10, after v10 is officially released.

Version 10 docs in preparation of future migragration from v9 to v10.

CSS Styling

This project uses Tailwind CSS & Headless UI for styles.

TailwindCSS:

TailwindCSS is a utility-first CSS framework, allowing you to apply styles quickly right in component tags.

The docs are great, simply search for the css style you are trying to apply.

Tip: Search using (cmd/ctrl + k) from anywhere in the docs.

https://tailwindcss.com/docs/

Headless UI:

Headless UI is a component library and was built to intergrate seemlessly with Tailwind CSS. It includes unstyled, fully accessible UI components, designed to integrate beautifully with Tailwind CSS.These components are useful when you need a more complex accessible component but don't want to build it from scratch. Thank you in advance for helping us to keep accessibility a top priority!

Here is the reference for HeadlessUI: https://headlessui.com/

NOTE: Be sure to select the React tab when reviewing/using components.

Screenshot showing react selection tab at headlessui.com

Deploying project to Railway:

Recently I walked through deploying this project to Railway.app. Check out the video below.

Changelog:

FAQs:

More Repositories

1

tab-tracker

A Vue.js / Express.js web application for keeping track of guitar tabs
JavaScript
520
star
2

youtube

code from my youtube channel
CSS
395
star
3

vue-calculator

Vue
55
star
4

s3-upload-google-auth

JavaScript
49
star
5

vue-adonis-todo

JavaScript
38
star
6

flashcardsage

TypeScript
35
star
7

vue-tree-browser

Vue
26
star
8

snowball-fight-online

JavaScript
21
star
9

fire-stone-hosting

TypeScript
20
star
10

web3-tickets

JavaScript
17
star
11

mern-todo

JavaScript
16
star
12

websocket-game

TypeScript
15
star
13

pizza-party

TypeScript
14
star
14

omegle-clone

TypeScript
12
star
15

wordpress-quick-start

Shell
10
star
16

agora-video-call

JavaScript
9
star
17

agora-online-chatroom

TypeScript
8
star
18

github-actions-overview

JavaScript
7
star
19

agora-rtm-vue

Vue
7
star
20

sc2-build-order

TypeScript
7
star
21

agora-help-chat

TypeScript
6
star
22

agora-rtm-react

JavaScript
6
star
23

react-online-chatroom

TypeScript
5
star
24

jknob

JavaScript
5
star
25

devtubers

JavaScript
5
star
26

mern-ecommerce

JavaScript
5
star
27

thumbnail-generator

TypeScript
4
star
28

vue-todo

JavaScript
4
star
29

yt-video-ideas

TypeScript
4
star
30

js-connect-four

A connect four project written using javascript + jquery
JavaScript
4
star
31

codeSnippets

Upload your code snippet and other users will improve your code speed and accuracy
JavaScript
4
star
32

kubernetes-express-example

Shell
3
star
33

setterapp

JavaScript
3
star
34

tailwind-practice

TypeScript
3
star
35

codeperfect

Vue
3
star
36

interview-questions

TypeScript
3
star
37

vue-responsive-keyboard

Vue
3
star
38

js-minesweeper

JavaScript
3
star
39

pain-tracker

JavaScript
3
star
40

bubblr

JavaScript
3
star
41

speed-date

TypeScript
3
star
42

multiplication-quiz

Vue
3
star
43

chords

HTML
2
star
44

vue-guitar-tabs

JavaScript
2
star
45

github-user-finder

a process that can be used for downloading and viewing all github users
CoffeeScript
2
star
46

clickr

JavaScript
2
star
47

heart-tracker

JavaScript
2
star
48

random

JavaScript
2
star
49

doxgoat

JavaScript
2
star
50

wedding

code for our wedding website
HTML
2
star
51

seibertsoftwaresolutions

HTML
2
star
52

web3-virtual-realestate

JavaScript
2
star
53

zetajs

JavaScript
2
star
54

webdevpro

HTML
2
star
55

agora-rtm-svelte

Svelte
2
star
56

bazooka

JavaScript
2
star
57

react-testing

TypeScript
2
star
58

pantry-tracker

JavaScript
2
star
59

setter

Route Management Software for Climbing Gyms
JavaScript
2
star
60

goblins

random game
JavaScript
2
star
61

skeleton

skeleton project using Coffeescript, Gulp, and Browserify
CoffeeScript
1
star
62

web3-useless-squares

1
star
63

flyzone

CoffeeScript
1
star
64

testingsomestuff

1
star
65

hollaback

CoffeeScript
1
star
66

livestockmarket

1
star
67

svelte-contact-list-app

Svelte
1
star
68

focus.js

CoffeeScript
1
star
69

shreadr

random html shooter game
CoffeeScript
1
star
70

Mern-Auth

JavaScript
1
star
71

phaser3-pong

JavaScript
1
star
72

elm-journal

1
star
73

js-pong

JavaScript
1
star
74

stackr

JavaScript
1
star
75

linkr

JavaScript
1
star
76

setter-native

1
star
77

jotit

CoffeeScript
1
star
78

vue-markdown-preview

1
star
79

schematic

CoffeeScript
1
star
80

trackit

JavaScript
1
star
81

vue-todo-ts

Vue
1
star
82

responsive-keyboard

JavaScript
1
star
83

typr

CoffeeScript
1
star
84

practice

1
star
85

vue-scrolling-banner

1
star
86

redditr

CoffeeScript
1
star
87

yetanotherthing

JavaScript
1
star
88

elm-connect-four

Elm
1
star
89

robotronic

JavaScript
1
star
90

web3-rock-paper-scissors-betting

JavaScript
1
star
91

puppet-codyseibert

puppet module for everything needed on my site
Puppet
1
star
92

vue-express-tab-bucket

JavaScript
1
star
93

refractr

JavaScript
1
star
94

instant-oats

creates a majority of boiler plate code needed for a new web project with angular
JavaScript
1
star
95

elm-tic-tac-toe

Elm
1
star
96

mydoglacy

CoffeeScript
1
star