Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blankeos/next-portfolio
🦄 A better portfolio built with NextJS
https://github.com/blankeos/next-portfolio
Last synced: 4 days ago
JSON representation
🦄 A better portfolio built with NextJS
- Host: GitHub
- URL: https://github.com/blankeos/next-portfolio
- Owner: Blankeos
- Created: 2021-07-20T12:27:07.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-20T16:16:08.000Z (17 days ago)
- Last Synced: 2024-10-20T19:13:47.473Z (17 days ago)
- Language: TypeScript
- Homepage: carlo.vercel.app
- Size: 11.7 MB
- Stars: 12
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 🔼 Next Portfolio
🚀 Carlo's Personal Web Portfolio built with **NextJS**!
**VISIT:** [carlo.vercel.app](https://carlo.vercel.app/)
![SomeImage](/docs/preview.png)
## Requirements
- NodeJS
- PNPM
- PostgreSQL (For Blog Counts)
- Goose - Manual Migrations `database/migrations`## Features
- Landing Page - Lots of animations powered by Framer Motion
- Blog (Markdown Support, Code Syntax Highlighting, Reading Time, etc.) - Powered by ContentLayer and Shiki
- Project Directory (Searchable) - Powered by FlexSearch## Notes
Because I keep forgetting how this project works or looks like. I also hate NextJS.
### Content Management
ContentLayer is apparently exclusive to NextJS.
- Package: `contentlayer` is used to manage content and transform mdx to javascript objects.
- Package: `next-contentlayer` is specifically used for bundling + rendering 'blog stuff' (specifically the mdx content, the frontmatter, no need for this).
- Configurations for collection schemas are stored in `contentlayer.config.ts`.
- `next.config.js` is used attaching the build process of contentlayer to NextJS dev and build.
- All the mdx content is stored in `content/` folder.