Words from a fresh web dev:
This project will be my first attempt at making a website that is linked to an sql database. I have never actually worked out of a database before this, but I am finding that it is not nearly as intimidating as I first thought. This project is purely for educational purposes and is not intended to ever reach production. However, I hope to complete it to a point that would be considered production ready. The goals of this project are:
- Create a dynamic web site generated from a mysql database
- Make an authentication method from scratch
- Maintain a minimal package.json
- Avoid jquery, maybe learn react some time in the future when the backend is built up
This will also be my first time working with git, so I apologize if my commit messages don't sound completed or competant.
So far I have learned many things from this project. It has taught me most of what I know about javascript. However, being my first project I am starting to realize some key design flaws that are becoming more and more apparent as I continue development. I could spend hours debugging to get everything working again, but I would rather move on and take the knowledge I have gained from this project. Some things that I realized I should have been doing different from the start:
- Maintain a seperation of code (especially with router files and sql)
- Take the time to set up proper stored procedures
- Maintain a clear file structure that resembles the example in express best practices
- Study more secure methods for performing certain tasks
That being said, I had to make these mistakes before I could grow. If you decide to run this site for any reason, I highly recommend using linux. There are certain errors in Windows that I have traced down and fixed along with certain things (like imagemagick) that only works in linux.