Skip to content
/ lazarus Public

Lazarus is a Twitter-inspired PHP web application built on the MVC pattern. It emphasizes modularity and robust code. Lazarus provides a dynamic platform for a social media-like experience, with specialized controllers for users, messages, and more.

License

Notifications You must be signed in to change notification settings

monp4r/lazarus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LAZARUS - A Twitter-Inspired PHP Web App

License Code size Last commit

Created by Juan Francisco Montero (https://github.com/monp4r/)

Overview

Lazarus is a dynamic PHP web application, inspired by the Model-View-Controller (MVC) pattern. Developed as part of a coursework for a subject in my double degree in mathematics at the University of Valladolid, this project embodies the spirit of a Twitter-like experience.

Implementation Highlights

Design Pattern: Model-View-Controller (MVC)

Lazarus adopts the MVC architectural pattern, meticulously separating business logic from presentation to create a robust and modular codebase.

Controllers

The application features specialized controllers for distinct functionalities:

  • UsersController: Manages user-related operations.
  • IndexController: Governs the application's main page.
  • MessagesController: Controls the messages sent by users.
  • FollowController: Manages user tracking features.

Controller Consolidation

Consideration has been given to consolidating controllers into a unified entity, such as the proposed 'UsersController,' aimed at streamlining the codebase and improving maintainability.

Getting Started

To embark on the Lazarus experience:

  1. Clone the repository: git clone https://github.com/your-username/lazarus.git
  2. Navigate to the project directory: cd lazarus
  3. Set up a local server (e.g., using PHP's built-in server): php -S localhost:8000
  4. Set up a local DBMS and execute the construction SQL file (e.g., using PHPMyAdmin)
  5. Open your web browser and visit http://localhost:8000

Contributing

Be part of the Lazarus journey:

  1. Fork the repository on GitHub.
  2. Create a new branch for your feature or bug fix: git checkout -b feature/new-feature.
  3. Commit your changes: git commit -m "Add new feature".
  4. Push to your branch: git push origin feature/new-feature.
  5. Submit a pull request.

License

This project is licensed under the MIT LICENSE.

Acknowledgments

I want to express my sincere gratitude to the professors at the University of Valladolid who provided their support and knowledge during my education. Their dedication and teachings were instrumental in the development of this project, which embodies the spirit of a Twitter-like experience.

Explore, enhance, and contribute to the Lazarus PHP MVC Twitter-Like Web Application!

Project Directory Structure

Folder Description
config Contains configuration elements that may vary throughout the application's lifetime, such as credentials for connecting to the database.
controllers Houses the application's controllers mentioned earlier.
inc Includes subdirectories and their respective functionalities:
components Stores components frequently used in the application.
helpers Holds files providing various functionalities, from data input validation to image uploading.
templates Stores templates used to avoid repetitive code.
models Stores the models necessary for the MVC pattern to work with all application data.
views Contains code responsible for loading the visualization of different interfaces. Local storage for images used in the application, including profile and message images.
public Stores all resources related to the application's views, including the jQuery library and plugins, JS validation files, stylesheets, icons, logos, etc.
construccionDB.sql SQL file that creates the Database of Lazarus
index.php Main file for redirecting to various controllers based on session variable activation.

About

Lazarus is a Twitter-inspired PHP web application built on the MVC pattern. It emphasizes modularity and robust code. Lazarus provides a dynamic platform for a social media-like experience, with specialized controllers for users, messages, and more.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published