Yellow Candle Library
Site With Laravel
My first fully fleshed out full-stack project
TABLE OF CONTENTS
Project Intro
Laravel and MVC
Features
Project management
Cyber security
SFTP vs MySQL
Future plans
Demo
04
05
06
01
02
03
07
08
How would I even go about
STARTING a project like this
My cybersecurity policy is
any restrictions slow down functionality! (not really)
How to load a lot of data that needs to be displayed in less than a second
My initial thoughts and goals when going into this project
developing an application with a Model view controller framework
Showcase of some of the features
and implementations in the project
Some stuff I would like to
achieve in the future
Feel free to click through while I am presenting!
What is this project
Use cases
Goals
Beauty
Maintainability
Usability
Originally, this project was meant to be a lot more backend focused, but then I decided I wanted this to look good. This is something that I feel needs a lot of improvement!
Being able to maintain the project code over a long period of time, with a lot of new features getting created or updated was a big factor in a lot of the decisions that I made.
I wanted this website to have seamless load times, even when loading a large amount of data.
MVC
MVC: Laravel
MVC: Model
MVC: View
MVC: Controller
Features
User Features
User Data
Comments
Books!
Useful user data is saved to allow for a better experience
Users can leave Comments on chapters so others know what they thought of books
At the end of the day, the purpose of this was to read books on the go.
Backend Features
Admin Tools
Schedules
Caching
Admin tools various jobs that needed to be done often to save time.
There is a list of scheduled “jobs” that are run every hour.
Caching (something we will get into later on the optimizing slide)
Project management
Version & Change Control
Make changes
Test changes
Upload changes
Make new release
Previous
Versions
New
Releases
(Versioning)
Update History
Security
Client-side Security
Reliability
Password encryption
Accessibility
Server-side Security
.ENV files
Serverside
Code security
SFTP vs MySQL
SFTP Implementation
Files
code
Directories
MySQL database
Select statement in Laravel
Controller
View
Model
SFTP Pros
Easy to edit text files
Caching pages very lightweight
Not loading all file contents every time
MySQL Pros
Queryable
Works with models
Better data manipulation
Future Plans
Future Plans
Questions?
Thank you all for your time!
Matthew Lewis
Systems Research