The obvious is that the website runs on the major 3. HTML and CSS don't need much explanation, so I will keep it breif.
The site uses some very interesting CSS as a showcase of things I found from other people on the Secret Squirrel page.
Otherwise, CSS is used for all the pages, and some fun tricks were learned to help display things like moving boxes in the loganVerse
I used style sheets, imports, inline css, and some in the header, where necessary. Also experimented with different styles, like using px or rem, and finding what was more responsive to change.
Some of the websites magic is with Javascript. I will explain and then give examples. I have made things from games, to simple page functions.
The biggest thing I did with JS was my clicker game, Crypto Clicker. I coded it all by hand and with some very good guessing.
The long and the short is that all of these pages are php. You can gleam that from the extensions in the URL's, but also there are about half the websites pages that require a login system. This is also the language that communications with the SQL DB on the Server and lets users login. This uses session variables, database calls, and verifies different tiers of user, controlling access levels.
Every footer (including the closing tags for body and html) are in a special php folder on every page. It saves me time and looks better to develop with!
Some pages are login gated because they display user specific messages. This includes "Welcome [User name]" and several other bits of text, achievements, and accoutn information.
Also brief, I have a moderate amount of experince in linux, and command line operations, so the server is just a simple barebones ubuntu installation with no gui, that I deployed the server on. I fully installed everything on the server, build the site, configured github integration and login tokens, and can remotely develop with my user access control.
Later addition here, updating Ubuntu 20.04.5 to the current 22.04 LTS was a moderately challenging task. Doing all the configuration to reset it was not inherently header_register_callback but the issues arose post update. Suddenly Apache2 stopped working entirely, which is bad because this is a web server. After a while of digging, it turned out to be that PHP needed an update. Shortly after said PHP update, every single link on the website stopped working. If you're wondering why, it was due to the current pathing including the account name, which was not necessary after the update. After briefly abusing the find and replace system, the site was restored.
SQL houses the user's logins, but also many other things. There is no sensitive information! good try snoopers.
The database houses information for several pages planned in the future, including space ship designs and parts, user website achievements, and even food things!
Quick note, I did properly purchase and register this domain and the SSL certificate on my own. This was the easiest part of the process.
This is a later update, at the same time I am adding the ASP.NET/.NET section. I had to create several subdomains as A records in Linode to host razor pages.
JSON is used to house data on the website. I know this is not ideal, the website has always had SQL, this was just to see if I could do it and where the limits where.
JSON is currently used for user achievements, only around 50 lines, and the Rindor Food Calculator, at around 4500 lines.
If you are interested, the Rindor page used a huge amount of JSON, and can be found here. You should look below to the Rindor food explanation first.
CSV is also used to house data on the website. Again not ideal, although I have done data science work with CSV's much larger.
See EFT Data below, for more talk on the specifics. The CSV only has 554 lines, not the hundreds of thousands that real data science uses.
This site is hosted through a github repository. I use github desktop to push local changes to the repo, evalute performance on the test site, and then use github CL on the host machine to pull the origin when testing is complete over to the "production" server.
The primary IDE for development is VS Code. Github Desktop can clone the repo to VS code, and draw changes easily.
XAMPP is great for SQL testing. Once I design diagram out any schema changes or additions, I complete them in phpMyAdmin and then replicate this on the server. This also goes for any queries, where it is tested using xampp first, and then replicated on the main server via CL SQL.
Of note, a vast amount of planning is done in notepad++ and iphone notes. Of course, nothing sensitive, since I have no sensitive data involved with the site. It is for ideas, schema, and random DnD math.
I know those are not IDE's, atleast iphone notes isn't formally, but they are important development steps and deserve attention. In school and personally I have done a great deal of development in notepad++, and it is an invaluable tool. It also makes 100% sure you know the syntax, because it doesn't help at all like vs code.
The latest hurdle for the webstie is the installation of .NET Core/SDK, and ASP.NET core. The intent is to accomplish several tech hurdles. I prefer coding in Object-Oriented languages, and not web languages. The goal is to make C# projects and have them run on the website. This is currently underway utilizing subdomains and razor pages. Will update when more has happened.
The website only uses cookies in one place, as a test of their operations, not to track any data on user activity. The Crypto clicker game utilizes them, to track users progress in the game and store it in their browser. The items tracked are specifically game vars, like current totals, scaling values, and tracking numbers for in-game items. There are no other user data being stored. The specifics are that the data is stored in an array in the cookie, which is then retrieved and "decoded" when a user accesses the page. Cookies are saved on a set time interval, as well as when the user clicks the "Save Progress" button. The user can also delete all cookies with a "Reset Progress" button that will reset all values in the cookie, and change the expiration date to a date in the past.
I decided to add this for a few reasons, despite having already covered JSON in the previous example. I'll explain below.
This one is quite fun. I originally coded this in C#, and it worked without a hitch. I tried to direct port when I was first building this, and well... It didn't translate well. I have since redone it.
This section is for the Escape from Tarkov(EFT) data I put on the website, and was more of an exercise in display and use of CSV.
I have played alot of the game, and it has a large amount of possible data points a user can collect.
DISCLAIMER: The raw data has curse words in it. This is not an official dataset. It is my dataset. We are adults and this data was taken in my spare time as a personal project. You will be fine.
This calculator is for VA Disability. Figured I would try my hand at it since my friends and I struggle with the low-effort, low-iq VA chart is hard to interpret.
This section is currently login locked, so I will not be linking it. This is because there are achievements associated with user accounts.
This section is currently heavily heavily unfinished.