Save Today, Open Tomorrow
Horizon Memories is a web application that lets users create time capsules to store files (photos, text, PDFs, etc.) with unlock dates, preserving memories for the future. Built with PHP, MySQL, and a modern frontend, it offers a user-friendly interface for uploading, viewing, and managing files securely.
mime_content_type
enabled.Clone the Repository:
git clone https://github.com/Gh0styTongue/Horizon-Memories-Source.git
cd horizon-memories
Set Up the Database:
database
).CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
email VARCHAR(255) NOT NULL UNIQUE,
password VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE capsules (
capsule_id VARCHAR(22) NOT NULL PRIMARY KEY,
user_id INT NOT NULL,
storage_size BIGINT NOT NULL,
file_types VARCHAR(255) NOT NULL,
unlock_date DATETIME,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
);
CREATE TABLE files_capsule (
id INT AUTO_INCREMENT PRIMARY KEY,
capsule_id VARCHAR(22) NOT NULL,
user_id INT NOT NULL,
filename VARCHAR(255) NOT NULL,
file_date DATETIME NOT NULL,
date_added TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
file_blob MEDIUMBLOB NOT NULL,
byte_size BIGINT NOT NULL,
FOREIGN KEY (capsule_id) REFERENCES capsules(capsule_id) ON DELETE CASCADE,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
);
Configure Database Connection:
dash/capsule.php
(and other files like plans/login.php
if present).$host = 'localhost';
$dbname = 'your_database_name';
$username = 'your_username';
$password = 'your_password';
Deploy to Server:
/var/www/html/hm
).Access the Site:
/plans/login.php
to start.horizon-memories/
├── dash/
│ └── capsule.php # Main capsule management page
├── login/ # Login pages
├── plans/ # Plans pages
├── index.html # Entry point for the site
└── README.md # This file
This project is licensed under the MIT License. See LICENSE for details.