Status: This project is not complete. Development is ongoing.
BPhotos is a self-hosted photo storage system built with MongoDB and GridFS. It allows users to store and manage photos and their metadata in a flexible and efficient way.
- File Storage: Stores large photo files using MongoDB GridFS.
- Metadata Management: Stores photo metadata (e.g., camera make, model, date taken) as JSON for flexible querying.
- Efficient Retrieval: Indexes key metadata fields like
Make
,Model
, andDateTimeOriginal
for fast searches. - Secure Database Connection: Supports MongoDB authentication with username and password.
- Node.js (v16 or later recommended)
- MongoDB (v5 or later)
npm
oryarn
Note: There is no release version available yet, so these steps are for testing purposes only.
git clone https://github.com/AWV2804/bphotos
cd bphotos
npm install
Create a .env
file in the root directory with the following content:
SERVER_MONGO_USER=admin
SERVER_MONGO_PASSWORD=[Enter a secure password here]
Replace yourUsername
and yourPassword
with your MongoDB credentials.
Connect to the MongoDB database and initialize the application:
node db.ts
If the connection is successful, you will see:
Connected to MongoDB
This project is licensed under the MIT License. See LICENSE
for more details.