Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/midori-profile/midori-portfolio
🟢 Midori's portfolio built with Next.js, Tailwind, and Postgres. Continuously updated...
https://github.com/midori-profile/midori-portfolio
blog nextjs postgres react tailwindcss vercel
Last synced: 10 days ago
JSON representation
🟢 Midori's portfolio built with Next.js, Tailwind, and Postgres. Continuously updated...
- Host: GitHub
- URL: https://github.com/midori-profile/midori-portfolio
- Owner: midori-profile
- Created: 2024-03-31T06:39:32.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-07-30T11:20:06.000Z (3 months ago)
- Last Synced: 2024-10-12T19:27:05.630Z (24 days ago)
- Topics: blog, nextjs, postgres, react, tailwindcss, vercel
- Language: MDX
- Homepage: https://midori-portfolio.vercel.app
- Size: 67.9 MB
- Stars: 29
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Introduction
**This is Midori's online portfolio, Continuously updated.**
## Tech stack
| **Category** | **Technology** |
|--------------------|------------------------------------------|
| Framework | [Next.js](https://nextjs.org/) |
| Database | [Postgres](https://vercel.com/postgres) |
| Authentication | [NextAuth.js](https://next-auth.js.org) |
| Deployment | [Vercel](https://vercel.com) |
| Styling | [Tailwind CSS](https://tailwindcss.com) |## Running Locally
This application requires Node.js v18.17+.
```bash
git clone [email protected]:midori-profile/midori-portfolio.git
cd midori-portfolio
pnpm install
pnpm run dev
```Create a `.env.local` file similar to [`.env.example`](https://github.com/midori-profile/midori-portfolio/blob/master/.env.example)and follow the comments to set up your environment variables.
## Database Schema
```sql
CREATE TABLE redirects (
id SERIAL PRIMARY KEY,
source VARCHAR(255) NOT NULL,
destination VARCHAR(255) NOT NULL,
permanent BOOLEAN NOT NULL
);CREATE TABLE guestbook (
id SERIAL PRIMARY KEY,
email VARCHAR(255) NOT NULL,
body TEXT NOT NULL,
created_by VARCHAR(255) NOT NULL,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP
);CREATE TABLE comments (
id SERIAL PRIMARY KEY,
url VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
body TEXT NOT NULL,
created_by VARCHAR(255) NOT NULL,
created_at TIMESTAMP NOT NULL,
updated_at TIMESTAMP
);CREATE INDEX idx_comments_url ON comments (url);
CREATE TABLE views (
slug VARCHAR(255) PRIMARY KEY,
count INT NOT NULL
);
```## Thanks
Feel free to use my portfolio as a template, but please remove my personal posts and content.
Thanks to https://github.com/leerob/leerob.io for the inspiration.