https://github.com/v0id-user/v0id-land
#V0ID Official Personal Website | Deprecated
https://github.com/v0id-user/v0id-land
blog husky nextjs personal personal-website portfolio portfolio-website postgresql prisma prisma-orm s3 s3-bucket typescript
Last synced: 3 months ago
JSON representation
#V0ID Official Personal Website | Deprecated
- Host: GitHub
- URL: https://github.com/v0id-user/v0id-land
- Owner: v0id-user
- License: mit
- Created: 2025-01-13T01:30:06.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2026-03-28T02:01:14.000Z (3 months ago)
- Last Synced: 2026-03-28T08:30:20.695Z (3 months ago)
- Topics: blog, husky, nextjs, personal, personal-website, portfolio, portfolio-website, postgresql, prisma, prisma-orm, s3, s3-bucket, typescript
- Language: TypeScript
- Homepage: https://www.v0id.me
- Size: 822 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# V0ID Land (Deprecated | Old)
My Personal Space & Website to express, write, and share my thoughts, ideas, projects and my personal journey and experiences also including my personal data. It works as a central point for me.

## Features
- Custom Blogging System with GPG Signing
- Blog Editor Built With TipTap and Improved with Custom Components
- File Storage and Management
- File Upload/Download
- File Sharing
- File Pre-signing
- S3-compatible Storage Integration
- Portfolio Showcase
- Real-time Auto-Drafting using PostgreSQL and SSE
- Authentication System with Root GPG technique
- Modern UI with Next.js and TailwindCSS
- Custom Cursor
## Tech Stack
- **Frontend**: Next.js, React, TailwindCSS
- **Backend**: Next.js API Routes
- **Database**: PostgreSQL
- **Caching**: Redis
- **Storage**: S3-compatible Storage (Tigris)
- **Security**: GPG for Blog Verification
- **Runtime**: Bun
## Prerequisites
Before you begin, ensure you have the following:
- Node.js and npm (or Bun)
- PostgreSQL database
- Redis server
- S3-compatible storage (like Tigris)
- GPG key pair for blog verification
## Environment Setup
1. Create a `.env` file in the root directory with the following variables:
```env
# Database
DATABASE_URL=postgresql://postgres:@localhost:5432/land?schema=public
# Redis
REDIS_URL=redis://localhost:6379
# GPG Keys
GPG_PUBLIC_KEY=-----BEGIN PGP PUBLIC KEY BLOCK----- ... Complete Public Key ... -----END PGP PUBLIC KEY BLOCK-----
GPG_PRIVATE_KEY=-----BEGIN PGP PRIVATE KEY BLOCK----- ... Complete Private Key ... -----END PGP PRIVATE KEY BLOCK-----
# JWT
JWT_SECRET=your_secure_jwt_secret
# S3 Configuration
AWS_ACCESS_KEY_ID=your_access_key
AWS_SECRET_ACCESS_KEY=your_secret_key
AWS_ENDPOINT_URL_S3=your_s3_endpoint
AWS_ENDPOINT_URL_IAM=your_iam_endpoint
AWS_REGION=your_region
AWS_BUCKET_NAME=your_bucket_name
STORAGE_DOMAIN=your_storage_domain
```
2. Create a `keys` directory in the root and place your GPG keys there:
```bash
mkdir keys
# Place your GPG keys in the keys directory
```
## Installation & Setup
1. Clone the repository
```bash
git clone https://github.com/v0id-user/v0id-land.git
cd v0id-land
```
2. Install dependencies
```bash
# Using npm
npm install
# Or using Bun
bun install
```
3. Set up the database
```bash
npx prisma migrate dev
```
4. Start the development server
```bash
# Using npm
npm run dev
# Or using Bun
bun run dev
```
## Docker Deployment
The project includes Docker support. To run using Docker:
```bash
docker-compose up -d
```
It yet does not include the database and redis server. You need to setup them manually.
## Status
Currently in stable state. Features are being added and refined regularly so be aware that anything might get broken along the way.
## License
This project is open-source and available under the MIT License.
---
Built with ♥ by [#V0ID](https://github.com/v0id-user)