Skip to content

Commit

Permalink
feat: navbar optimization, support for multiple languages, removal of…
Browse files Browse the repository at this point in the history
… blog, formatting code and others
  • Loading branch information
sun0225SUN committed Nov 22, 2024
1 parent f2ad8d4 commit 18346c0
Show file tree
Hide file tree
Showing 59 changed files with 7,177 additions and 3,679 deletions.
14 changes: 14 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# next.js
.next
next-env.d.ts
next.config.js

# lockfiles
package-lock.json
pnpm-lock.yaml

# dependencies
node_modules

# tailwind
tailwind.config.ts
46 changes: 46 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/** @type {import("eslint").Linter.Config} */
const config = {
parser: "@typescript-eslint/parser",
parserOptions: {
project: true,
},
// @ts-ignore
plugins: ["@typescript-eslint"],
extends: [
"next/core-web-vitals",
"plugin:@typescript-eslint/recommended-type-checked",
"plugin:@typescript-eslint/stylistic-type-checked",
],
rules: {
// JavaScript rules
"prefer-const": "error",
// TypeScript rules
"@typescript-eslint/array-type": "off",
"@typescript-eslint/consistent-type-definitions": "off",
"@typescript-eslint/consistent-type-imports": [
"warn",
{
prefer: "type-imports",
fixStyle: "inline-type-imports",
},
],
"@typescript-eslint/no-unused-vars": [
"warn",
{
argsIgnorePattern: "^_",
},
],
"@typescript-eslint/require-await": "off",
"@typescript-eslint/no-misused-promises": [
"error",
{
checksVoidReturn: {
attributes: false,
},
},
],
// React rules
"react/self-closing-comp": ["error"],
},
}
module.exports = config
3 changes: 0 additions & 3 deletions .eslintrc.json

This file was deleted.

1 change: 1 addition & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pnpm lint-staged
11 changes: 11 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# next.js
.next
next-env.d.ts
next.config.js

# lockfiles
package-lock.json
pnpm-lock.yaml

# dependencies
node_modules
7 changes: 7 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"i18n-ally.localesPaths": ["messages"],
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.organizeImports": "always"
}
}
24 changes: 10 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,27 @@
<div align="center">
<img alt="Portfolio" src="https://github.com/dillionverma/portfolio/assets/16860528/57ffca81-3f0a-4425-b31d-094f61725455" width="90%">
</div>
## Quick Start

# Portfolio [![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fdillionverma%2Fportfolio)
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/sun0225SUN/me)

Built with next.js, [shadcn/ui](https://ui.shadcn.com/), and [magic ui](https://magicui.design/), deployed on Vercel.

# Features
## Features

- Setup only takes a few minutes by editing the [single config file](./src/data/resume.tsx)
- Built using Next.js 14, React, Typescript, Shadcn/UI, TailwindCSS, Framer Motion, Magic UI
- Includes a blog
- Built using Next.js 15, React, Typescript, Shadcn/UI, TailwindCSS, Framer Motion, Magic UI
- Responsive for different devices
- Optimized for Next.js and Vercel

# Getting Started Locally
## Getting Started Locally

1. Clone this repository to your local machine:

```bash
git clone https://github.com/dillionverma/portfolio
git clone https://github.com/sun0225SUN/me
```

2. Move to the cloned directory

```bash
cd portfolio
cd me
```

3. Install dependencies:
Expand All @@ -40,8 +36,8 @@ Built with next.js, [shadcn/ui](https://ui.shadcn.com/), and [magic ui](https://
pnpm dev
```

5. Open the [Config file](./src/data/resume.tsx) and make changes
5. Open the [Config file](./src/config.tsx) and make changes

# License
## License

Licensed under the [MIT license](https://github.com/dillionverma/portfolio/blob/main/LICENSE.md).
Licensed under the [MIT license](https://github.com/sun0225SUN/me/blob/main/LICENSE.md).
8 changes: 4 additions & 4 deletions components.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
"tsx": true,
"tailwind": {
"config": "tailwind.config.ts",
"css": "src/app/globals.css",
"css": "src/styles/globals.css",
"baseColor": "neutral",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils"
"components": "~/components",
"utils": "~/lib/utils"
}
}
}
11 changes: 0 additions & 11 deletions content/hello-world.mdx

This file was deleted.

47 changes: 47 additions & 0 deletions eslintrc.cjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
/** @type {import("eslint").Linter.Config} */
const config = {
parser: "@typescript-eslint/parser",
parserOptions: {
project: true,
},
// @ts-ignore
plugins: ["@typescript-eslint"],
extends: [
"next/core-web-vitals",
"plugin:@typescript-eslint/recommended-type-checked",
"plugin:@typescript-eslint/stylistic-type-checked",
],
rules: {
// JavaScript rules
"prefer-const": "error",
// TypeScript rules
"@typescript-eslint/array-type": "off",
"@typescript-eslint/consistent-type-definitions": "off",
"@typescript-eslint/consistent-type-imports": [
"warn",
{
prefer: "type-imports",
fixStyle: "inline-type-imports",
},
],
"@typescript-eslint/no-unused-vars": [
"warn",
{
argsIgnorePattern: "^_",
},
],
"@typescript-eslint/require-await": "off",
"@typescript-eslint/no-misused-promises": [
"error",
{
checksVoidReturn: {
attributes: false,
},
},
],
// React rules
"react/self-closing-comp": ["error"],
},
}

module.exports = config
26 changes: 26 additions & 0 deletions messages/en.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"hi": "Hi, I'm",
"about": "About",
"work": "Work Experience",
"present": "Present",
"education": "Education",
"contact": "Contact",
"skills": "skills",
"projects": "Projects",
"check-my-work": "Check out my latest work",
"my-work-description": "I've worked on a variety of projects, from simple websites to complex web applications. Here are a few of my favorites.",
"awesome": "Awesome",
"building-things": "I like building things",
"have-done": "These are some of the things I have done",
"data-from": "Data recorded by",
"places-i-visited": "Places I have visited",
"travel": "Travel",
"get-in-touch": "Get in touch",
"want-to-chat": "Want to chat?",
"shoot-me": "Just shoot me a dm",
"direct-twitter": "with a direct question on twitter",
"will-respond": "and I'll respond whenever I can.",
"language": "Toggle Language",
"light": "Light Mode",
"dark": "Dark Mode"
}
26 changes: 26 additions & 0 deletions messages/zh.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"hi": "Hi, 我是",
"about": "关于我",
"work": "工作经历",
"present": "至今",
"education": "教育背景",
"contact": "联系方式",
"skills": "我的技能",
"projects": "我的项目",
"check-my-work": "我做过的项目",
"my-work-description": "我参与过各种项目,从简单的网站到复杂的 Web 应用程序",
"awesome": "很酷的事情",
"building-things": "一些有趣的事情",
"have-done": "好看的皮囊千篇一律,有趣的灵魂万里挑一",
"data-from": "数据来源于",
"places-i-visited": "我去过的地方",
"travel": "旅行",
"get-in-touch": "交个朋友",
"want-to-chat": "想聊天",
"shoot-me": "直接给我发私信",
"direct-twitter": "在 Twitter 上",
"will-respond": "我会及时回复",
"language": " 切换语言",
"light": "浅色模式",
"dark": "深色模式"
}
29 changes: 26 additions & 3 deletions next.config.mjs
Original file line number Diff line number Diff line change
@@ -1,6 +1,29 @@
/** @type {import('next').NextConfig} */
import createNextIntlPlugin from "next-intl/plugin"

const withNextIntl = createNextIntlPlugin()

/** @type {import("next").NextConfig} */
const nextConfig = {
reactStrictMode: true,
};
// https://react-svgr.com/docs/next/
// https://github.com/vercel/next.js/issues/48177#issuecomment-1506251112
webpack(config) {
config.module.rules.push({
test: /\.svg$/i,
use: ["@svgr/webpack"],
})
return config
},
experimental: {
turbo: {
rules: {
"*.svg": {
loaders: ["@svgr/webpack"],
as: "*.js",
},
},
},
},
}

export default nextConfig;
export default withNextIntl(nextConfig)
Loading

0 comments on commit 18346c0

Please sign in to comment.