("Hello World!")

Welcome to My Computer Science Web Site. I started this project while enrolled at California State University East Bay. It exhibits many common website features. These features are briefly summarize within the accordian presented below.


Website Features - Technical Overview:

  1. A horizontal navigation bar with links allow the users to traverse the web pages of this site.

  2. The navigation bar should persist at the top of each page when scrolling.

  3. A menu burger icon should replace the list items within the navigation bar when the view is reduced for better mobile formatting.

  4. The dynamic navigation bar and the accordian recieve their functionality from JavaScript.

  1. The History page features a slideshow.

  2. The images are gathered in an HTML container and use CSS to fade during transitions.

  3. The functionality to change images comes from JavaScript.

  1. The About page features an embedded video.

  2. HTML5 allows embeded video based media without the need for a video player plug-in.

  3. Video files can be directly embedded so long as the video is formatted as an mp4, webm or ogg.

  4. The HTML5 video element is loaded with various attributes which provide additional JavaScript functionality to manipulate playback and control.

  1. This page runs a script when the gif is double clicked.

  2. The script utilizes AJAX (via an XMLHttpRequest object) to access text that is stored in a file.

  3. The plain text file is then printed to the web page one character at a time to mimic a typewriter.

  4. The script sends its output text to an innerHTML content dividing element which is initially empty.

  1. The Members page & the Restricted page will redirect users to the login page if they are not yet signed in.

  2. The Login page and new_users_login page use PHP for the server-side scripting.

  3. The PHP scripts connect to an SQL database to authenticate or create a user account.

  4. New users recieve email confirmation. This functionality is provided by reconfiguring the XAMPP sendmail function to work with gmail's SMTP settings.

  5. Once signed in, a session is created which will then allow access to the restricted pages.

  6. The Logout page deletes the user session which then removes access to the restricted pages.

  1. The Donate page exhibits a standard billing form.

  2. Input validation on the client side is provided with HTML5 and JavaScript. The server side validation is handled with PHP.

  3. Valid input is logged into a CSV file titled "log_[date]" and the user is returned a thank you message with the yearly donation sum.

  4. Invalid input is logged into a CSV file titled "error_log_[date]" and the user is returned an error message.

  5. To prevent files from growing too large, a new file is created for each new day.

  6. Billing and credit card information is periodically deleted and never processed.

  1. I'm using Amazon Web Services Elastic Compute Cloud (i.e. EC2).

  2. The EC2 instance is hosting a Windows Server 2019 operating system.

  3. The Windows virtual machine is running an Appache XAMPP open source web server.

  4. Inbound traffic is allowed for HTTP or HTTPS.