From 445b70925a4af3f1e310f33b4e37f744fbb32d02 Mon Sep 17 00:00:00 2001 From: EdiscoKes <151837632+EdiscoKes@users.noreply.github.com> Date: Fri, 15 Dec 2023 15:48:23 -0800 Subject: [PATCH 1/2] my commits --- App.css | 0 App.js | 60 ++++++++++++++++++++++++ App.test.js | 8 ++++ GradeReport.css | 15 ++++++ Help.js | 11 +++++ InstructorContact.js | 101 ++++++++++++++++++++++++++++++++++++++++ Landingpage.js | 35 ++++++++++++++ LoginPage.js | 62 +++++++++++++++++++++++++ Mark.jpeg | Bin 0 -> 8601 bytes MissingGrade form.js | 107 +++++++++++++++++++++++++++++++++++++++++++ MissingGradeForm.css | 9 ++++ dasboard.js | 46 +++++++++++++++++++ hback.jpg | Bin 0 -> 62398 bytes home.css | 44 ++++++++++++++++++ index.css | 57 +++++++++++++++++++++++ index.js | 17 +++++++ login.css | 59 ++++++++++++++++++++++++ logo.svg | 1 + navbar.js | 37 +++++++++++++++ reportWebVitals.js | 13 ++++++ setupTests.js | 5 ++ tailwind.config.js | 9 ++++ 22 files changed, 696 insertions(+) create mode 100644 App.css create mode 100644 App.js create mode 100644 App.test.js create mode 100644 GradeReport.css create mode 100644 Help.js create mode 100644 InstructorContact.js create mode 100644 Landingpage.js create mode 100644 LoginPage.js create mode 100644 Mark.jpeg create mode 100644 MissingGrade form.js create mode 100644 MissingGradeForm.css create mode 100644 dasboard.js create mode 100644 hback.jpg create mode 100644 home.css create mode 100644 index.css create mode 100644 index.js create mode 100644 login.css create mode 100644 logo.svg create mode 100644 navbar.js create mode 100644 reportWebVitals.js create mode 100644 setupTests.js create mode 100644 tailwind.config.js diff --git a/App.css b/App.css new file mode 100644 index 0000000000..e69de29bb2 diff --git a/App.js b/App.js new file mode 100644 index 0000000000..756b9c88c3 --- /dev/null +++ b/App.js @@ -0,0 +1,60 @@ + +import LandingPage from './pages/Landingpage'; +//import Home from './Home'; +import Navbar from './navbar'; +//import Home from './Home'; + +import { BrowserRouter as Router , Route, Switch } from 'react-router-dom/cjs/react-router-dom.min'; +import LoginPage from './pages/LoginPage'; +import Dashbaoard from './pages/dasboard'; +import GradeReport from './pages/GradeReport'; +import MissingGradeform from './pages/MissingGrade form'; +import InstructorContact from './pages/InstructorContact'; +import Help from './pages/Help' +import './index.css'; + + + + + + + +function App() { + + const pageStyle = { + //backgroundColor:'#2ecc71', + minHeight: '100vh', + + + } ; + return( + +
+ + + +
+ + + + + + + + + + + + + +
+ + + +
+
+ + ) +} + +export default App; diff --git a/App.test.js b/App.test.js new file mode 100644 index 0000000000..1f03afeece --- /dev/null +++ b/App.test.js @@ -0,0 +1,8 @@ +import { render, screen } from '@testing-library/react'; +import App from './App'; + +test('renders learn react link', () => { + render(); + const linkElement = screen.getByText(/learn react/i); + expect(linkElement).toBeInTheDocument(); +}); diff --git a/GradeReport.css b/GradeReport.css new file mode 100644 index 0000000000..81f7f3a921 --- /dev/null +++ b/GradeReport.css @@ -0,0 +1,15 @@ + + +.grade-report-container { + display: flex; + justify-content: space-around; + margin: 20px; + } + + .filter-container, + .grade-list-container { + width: 45%; + } + + + \ No newline at end of file diff --git a/Help.js b/Help.js new file mode 100644 index 0000000000..711ab73f1a --- /dev/null +++ b/Help.js @@ -0,0 +1,11 @@ +import React from 'react' +import { Link } from 'react-router-dom' +function Help() { + return ( +
+ Help page +
+ ) +} + +export default Help \ No newline at end of file diff --git a/InstructorContact.js b/InstructorContact.js new file mode 100644 index 0000000000..d44cd3316e --- /dev/null +++ b/InstructorContact.js @@ -0,0 +1,101 @@ + +import { Link } from 'react-router-dom'; +import React, { useState } from 'react'; +import './InstructorContactPage.css'; +import 'tailwindcss/tailwind.css'; + +function InstructorContact() { + const [selectedInstructor, setSelectedInstructor] = useState(null); + const [emailSubject, setEmailSubject] = useState(''); + const [emailBody, setEmailBody] = useState(''); + const [confirmationMessage, setConfirmationMessage] = useState(''); + + const instructors = [ + { id: 1, name: 'John Doe', email: 'john.doe@example.com' }, + { id: 2, name: 'Jane Smith', email: 'jane.smith@example.com' }, + { id: 3, name: 'Bob Johnson', email: 'bob.johnson@example.com' }, + // Add more instructors as needed + ]; + + const handleInstructorSelect = (instructor) => { + setSelectedInstructor(instructor); + }; + + const handleEmailChange = (e) => { + setEmailSubject(e.target.value); + }; + + const handleBodyChange = (e) => { + setEmailBody(e.target.value); + }; + + const handleSendEmail = () => { + // Perform any email sending logic (mock-up) + setConfirmationMessage(`Email sent to ${selectedInstructor.name} successfully!`); + }; + + return ( +
+
+

Instructor Contact List

+
    + {instructors.map((instructor) => ( +
  • handleInstructorSelect(instructor)} + > + {instructor.name} +
  • + ))} +
+
+ {selectedInstructor && ( +
+

{`Contact ${selectedInstructor.name}`}

+
+
+ + +
+
+ + +
+ +
+ {confirmationMessage &&

{confirmationMessage}

} +
+ )} +
+ ); +} + +export default InstructorContact; \ No newline at end of file diff --git a/Landingpage.js b/Landingpage.js new file mode 100644 index 0000000000..c441c5b46c --- /dev/null +++ b/Landingpage.js @@ -0,0 +1,35 @@ +// LandingPage.js + +import React from 'react'; +import "tailwindcss/tailwind.css"; +import './home.css' + +const LandingPage = () => { + return ( +
+
+

Missing Grade System

+

+ Welcome to the Missing Grade System, a platform designed to track and manage missing grades efficiently. +

+

Overview

+

+ The Missing Grade System aims to streamline the process of identifying and addressing missing grades in educational institutions. It provides a centralized platform for teachers, students, and administrators to collaborate and resolve missing grade issues. +

+

Reason for Creation

+

+ The primary goal behind creating this system is to enhance communication and transparency regarding missing grades. By offering a user-friendly interface, it simplifies the tracking of missing grades, reducing administrative burden and ensuring timely resolution. +

+

Features

+
    +
  • Efficient tracking of missing grades.
  • +
  • Real-time notifications for teachers and students.
  • +
  • Collaborative tools for communication between stakeholders.
  • +
  • Automated reminders for pending grade submissions.
  • +
+
+
+ ); +}; + +export default LandingPage; diff --git a/LoginPage.js b/LoginPage.js new file mode 100644 index 0000000000..4d1c1e056f --- /dev/null +++ b/LoginPage.js @@ -0,0 +1,62 @@ + + +import { Link } from 'react-router-dom'; +import React, { useState, createContext, useContext} from 'react'; + +import './login.css'; + +const LoginPage = () => { + + const [studentId, setStudentId] = useState(''); + const [pin, setPin] = useState(''); + const [error, setError] = useState(''); + + const handleLogin = () => { + + if (studentId === '12345' && pin === '1234') { + + } else { + setError('Invalid Student ID or PIN'); + } + }; + + return ( +
+
+

Student Login

+ {error &&

{error}

} +
+
+ + setStudentId(e.target.value)} + /> +
+
+ + setPin(e.target.value)} + /> +
+ +
+
+
+ ); +}; + +export default LoginPage; diff --git a/Mark.jpeg b/Mark.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..685af981f276a0b21d03d8149ce5ea5f2de6f95f GIT binary patch literal 8601 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 UXsN-8>quu=)>z|D0nhXQ4>jP;p8x;= literal 0 HcmV?d00001 diff --git a/MissingGrade form.js b/MissingGrade form.js new file mode 100644 index 0000000000..5e2b079c62 --- /dev/null +++ b/MissingGrade form.js @@ -0,0 +1,107 @@ + +import { Link } from 'react-router-dom'; +import React, { useState } from 'react'; +import './MissingGradeForm.css'; +import 'tailwindcss/tailwind.css'; + +function MissingGradeform() { + const [formData, setFormData] = useState({ + courseName: '', + instructorName: '', + expectedGrade: '', + explanation: '', + }); + + const [confirmationMessage, setConfirmationMessage] = useState(''); + + const handleChange = (e) => { + const { name, value } = e.target; + setFormData((prevFormData) => ({ + ...prevFormData, + [name]: value, + })); + }; + + const handleSubmit = (e) => { + e.preventDefault(); + + // Perform any validation or data processing here + + // Display a confirmation message + setConfirmationMessage('Grade report submitted successfully!'); + }; + + return ( +
+

Missing Grade Report Form

+ {confirmationMessage ? ( +

{confirmationMessage}

+ ) : ( +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+ )} +
+ ); +}; +export default MissingGradeform; \ No newline at end of file diff --git a/MissingGradeForm.css b/MissingGradeForm.css new file mode 100644 index 0000000000..27cd08942b --- /dev/null +++ b/MissingGradeForm.css @@ -0,0 +1,9 @@ +/* MissingGradeForm.css */ + +.missing-grade-form-container { + max-width: 500px; + margin: 20px auto; + } + + /* Add more styles as needed */ + \ No newline at end of file diff --git a/dasboard.js b/dasboard.js new file mode 100644 index 0000000000..0f1ad738f5 --- /dev/null +++ b/dasboard.js @@ -0,0 +1,46 @@ +import React from "react"; +import { Link } from "react-router-dom"; +import './Dashboard.css'; +import 'tailwindcss/tailwind.css'; + + +const Dashbaoard = () => { + const studentGrades = [ + { subject: 'Math', grade: 'A' }, + { subject: 'Science', grade: 'B' }, + { subject: 'English', grade: 'C' }, + // Add more subjects and grades as needed + ]; + + const missingGrades = [ + { subject: 'History' }, + // Add more missing subjects as needed + ]; + + return ( +
+
+

Student's Current Grades

+
    + {studentGrades.map((grade, index) => ( +
  • {`${grade.subject}: ${grade.grade}`}
  • + ))} +
+
+
+

Missing Grades Alerts

+ {missingGrades.length === 0 ? ( +

No missing grades. Great job!

+ ) : ( +
    + {missingGrades.map((missingGrade, index) => ( +
  • {`${missingGrade.subject} - Missing Grade`}
  • + ))} +
+ )} +
+
+ ); +} + +export default Dashbaoard; \ No newline at end of file diff --git a/hback.jpg b/hback.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2c615e079966fbb7029bb8de17053edb239e20c2 GIT binary patch literal 62398 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 G;Q!glJ55~x literal 0 HcmV?d00001 diff --git a/home.css b/home.css new file mode 100644 index 0000000000..0698bc6285 --- /dev/null +++ b/home.css @@ -0,0 +1,44 @@ +/* App.css */ + +body { + margin: 0; + padding: 0; + font-family: 'Arial', sans-serif; + background-color: #f0f4f7; + color: tomato; + } + + .container { + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + } + + .landingPage-box{ + width: 500px; + padding: 20px; + background: #fff; + box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); + border-radius: 8px; + } + + h1 { + text-align: center; + color: #333; + } + + p { + color:#555; + } + + ul { + list-style: none; + padding: 0; + } + + li { + margin-bottom: 10px; + } + + \ No newline at end of file diff --git a/index.css b/index.css new file mode 100644 index 0000000000..ed74f8a28c --- /dev/null +++ b/index.css @@ -0,0 +1,57 @@ +font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', +'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', +sans-serif; + /*base styles*/ + { + margin: 0; + + + } + .navbar{ + padding: 20px; + display: flex; + align-items: center; + max-width: 5000px; + margin:0 auto; + border-bottom: 1px solid #401e1e; + background-color: #331e15 ; + position: fixed; + margin-top: -50px; + height: 50px; + margin-left: -20px; + width: 5000px; + background-image: url("data:image/jpeg;base64,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"); + + color: rgb(34, 6, 52) + + + } + .navbar h1{ + color:rgb(57, 42, 11))); + margin-left:20px; + } + .navbar.links { + margin-left: auto; + + } + .navbar a{ + margin-left: 20px; + text-decoration: none; + padding: 18px; + text-decoration: none; + padding: 16px; + } + .navbar a:hover{ + color:rgb(26, 39, 56) + + }.content{ + max-width: 600px; + margin: 40px auto; + padding: 26px; + color:rgb(33, 5, 5); + } + + + + + \ No newline at end of file diff --git a/index.js b/index.js new file mode 100644 index 0000000000..d563c0fb10 --- /dev/null +++ b/index.js @@ -0,0 +1,17 @@ +import React from 'react'; +import ReactDOM from 'react-dom/client'; +import './index.css'; +import App from './App'; +import reportWebVitals from './reportWebVitals'; + +const root = ReactDOM.createRoot(document.getElementById('root')); +root.render( + + + +); + +// If you want to start measuring performance in your app, pass a function +// to log results (for example: reportWebVitals(console.log)) +// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals +reportWebVitals(); diff --git a/login.css b/login.css new file mode 100644 index 0000000000..5582f9248a --- /dev/null +++ b/login.css @@ -0,0 +1,59 @@ +/* App.css */ + +body { + margin: 0; + padding: 0; + font-family: 'Arial', sans-serif; + background-color: #f0f4f7; + } + + container { + display: flex; + justify-content: center; + align-items: center; + height: 100vh; + } + + login-box { + width: 300px; + padding: 20px; + background: #fff; + box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); + border-radius: 8px; + } + + h1 { + text-align: center; + color: #333; + } + + form { + display: flex; + flex-direction: column; + } + + label { + margin: 10px 0 5px; + color: #555; + } + + input { + padding: 10px; + margin-bottom: 10px; + border: 1px solid #ccc; + border-radius: 4px; + } + + button { + background-color: #3498db; + color: #fff; + padding: 10px; + border: none; + border-radius: 4px; + cursor: pointer; + } + + button:hover { + background-color: #2980b9; + } + \ No newline at end of file diff --git a/logo.svg b/logo.svg new file mode 100644 index 0000000000..9dfc1c058c --- /dev/null +++ b/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/navbar.js b/navbar.js new file mode 100644 index 0000000000..314e379dd4 --- /dev/null +++ b/navbar.js @@ -0,0 +1,37 @@ + +import {Link } from 'react-router-dom'; +//import backgroundImage from './hback.jpg'; + +const Navbar = () => { + + const styles = { + + color: 'blue', + borderRadius:'8px', + fontSize :"16px", + + + + }; + return ( + + + + + ); +} + +export default Navbar; \ No newline at end of file diff --git a/reportWebVitals.js b/reportWebVitals.js new file mode 100644 index 0000000000..5253d3ad9e --- /dev/null +++ b/reportWebVitals.js @@ -0,0 +1,13 @@ +const reportWebVitals = onPerfEntry => { + if (onPerfEntry && onPerfEntry instanceof Function) { + import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => { + getCLS(onPerfEntry); + getFID(onPerfEntry); + getFCP(onPerfEntry); + getLCP(onPerfEntry); + getTTFB(onPerfEntry); + }); + } +}; + +export default reportWebVitals; diff --git a/setupTests.js b/setupTests.js new file mode 100644 index 0000000000..8f2609b7b3 --- /dev/null +++ b/setupTests.js @@ -0,0 +1,5 @@ +// jest-dom adds custom jest matchers for asserting on DOM nodes. +// allows you to do things like: +// expect(element).toHaveTextContent(/react/i) +// learn more: https://github.com/testing-library/jest-dom +import '@testing-library/jest-dom'; diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 0000000000..a78b3a8d38 --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1,9 @@ +/** @type {import('tailwindcss').Config} */ +module.exports = { + content: [], + theme: { + extend: {}, + }, + plugins: [], +} + From f2acff7e26332fd70b6c9f078257890de5d40183 Mon Sep 17 00:00:00 2001 From: EdiscoKes <151837632+EdiscoKes@users.noreply.github.com> Date: Fri, 15 Dec 2023 15:52:41 -0800 Subject: [PATCH 2/2] Update README.md Another updates --- README.md | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index cce66cb7d4..12ed023b06 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,7 @@ # Student Grade Reporting System Frontend +# Author +## Name : Edward Sefah Koranteng +## ID : 11137631 ## Project Overview @@ -37,7 +40,71 @@ This will start the application on `localhost` at the default port. ## Usage -Describe how to use the application, highlighting key functionalities such as logging in, viewing grades, reporting missing grades, and contacting instructors. + + +User Flow: +Landing Page: + +Upon visiting the site, users are greeted with an overview of the system. +Navigation links are provided to guide users to different sections. +Login Page: + +Users access the system by entering their Student ID and PIN. +The secure login form validates user credentials. +Dashboard: + +After successful login, users land on the dashboard. +The dashboard provides an overview of the student's current grades. +Alerts or notifications highlight any missing grades. +Grade Report Page: + +Users can navigate to the Grade Report page to view detailed information on all courses and respective grades. +Options to filter grades by semester/academic year are available. +Missing Grade Form Page: + +If a student identifies a missing grade, they can visit the Missing Grade Form page. +The form includes fields for Course name, Instructor name, Expected grade, and an Explanation field. +Users submit the form to report the missing grade. +Instructor Contact Page: + +The system provides a list of instructors with contact details. +Users have the option to send a simulated email to the instructor (mock-up). +Help and Support Page: + +An FAQ section provides guidance on grade reporting. +A contact form for technical support (mock-up) is available. +Navigation: +A navbar/sidebar is present for easy navigation. +A footer provides additional information and copyright details. +Key Functionalities: +Responsive Design: + +The website is designed to be responsive, ensuring a seamless experience on various devices. +Secure Login: + +Users access the system with a secure login form using Student ID and PIN. +Dashboard: + +Users can view an overview of their current grades on the dashboard. +Alerts notify users of any missing grades. +Grade Report: + +Detailed information on all courses and respective grades is available. +Filtering options provide flexibility to view grades based on semester/academic year. +Missing Grade Reporting: + +Users can report missing grades using a form with necessary details. +A confirmation message assures users of successful submission. +Instructor Contact: + +Users can find a list of instructors with contact details. +Simulated email functionality allows users to communicate with instructors. +Help and Support: + +An FAQ section guides users on grade reporting. +A contact form (mock-up) is available for technical support. +This user flow and key functionalities ensure a comprehensive and user-friendly experience for students interacting with the Missing Grade Reporting System. + ## Contribution