Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/magar0/portfolio
https://github.com/magar0/portfolio
mongoose nextjs react-hook-form shadcn-ui tailwindcss zod
Last synced: 9 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/magar0/portfolio
- Owner: Magar0
- Created: 2024-01-07T18:28:24.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-09-14T09:57:54.000Z (2 months ago)
- Last Synced: 2024-09-14T20:34:03.083Z (2 months ago)
- Topics: mongoose, nextjs, react-hook-form, shadcn-ui, tailwindcss, zod
- Language: JavaScript
- Homepage: https://portfolio-rakesh-magar.vercel.app/
- Size: 10.4 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# `Portfolio using Next JS`
## Table of contents
* [General info](#general-info)
* [Technologies](#technologies)
* [Setup](#setup)
* [API Endpoints](#api-endpoints)## General info
A personal portfolio website showcasing my skills and projects. Built using Next.js for server-side rendering and optimized performance.
* Responsive Design: Adapts seamlessly to different screen sizes.
* Framer Motion Animations: Smooth and engaging user experience.
* Contact Form: Powered by React Hook Form and Zod for validation, with data stored in MongoDB using Mongoose.
* Project Slider: Interactive navigation through my projects.
* Stylish UI: Designed with Shadcn UI and Tailwind CSS.## Technologies
* Next JS
* Framer Motion
* React Hook Form, Zod
* MongoDB, Mongoose
* Shadcn UI, Tailwind CSS
## Setup
1. Set up environment variables:
- Create a `.env` file in the root directory.
- Add the following variables to the `.env` file, replacing the placeholder values with your actual credentials:
```
NEXT_URL_MONGO_DB="your_mongo_uri"
```
2. Install dependencies and run server:
```
npm install
npm run dev
```## API Endpoints
| Endpoint | Description | Method | Request Body | Response Format (Example)
|----------|-------------|--------|--------------|----------------------------|
`/api` | post message | POST | `{ firstName:string, lastName?:string, phone?: string, email: string , service?:'frontend' or 'backend' or 'fullstack', message: string}` | {message: string}|