Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
87e3f15
chore: 머지 후 브랜치 삭제 github action 추가
withyj-codeit Sep 3, 2023
1472169
Initial commit from Create Next App
withyj-codeit Nov 23, 2023
671d4d5
reset
hanseulhee Oct 10, 2023
14baca2
fix: 머지 후 브랜치 삭제 github action 수정
hanseulhee Oct 10, 2023
8d163dd
env: workflows 폴더로 이동
hanseulhee Oct 10, 2023
11335e2
chore: next 앱라우터로 초기 세팅
LeeTaegyung Aug 7, 2025
bac1a8d
chore: 초기세팅 - reset, font, theme, image 설정
LeeTaegyung Aug 9, 2025
91965ee
chore: import order 설정 추가
LeeTaegyung Aug 10, 2025
4633c86
chore: svgr, tailwind-merge 설치
LeeTaegyung Aug 10, 2025
19d5be8
chore: Logo 이미지 통합
LeeTaegyung Aug 10, 2025
225d718
feat: 공용 컴포넌트 Button 제작
LeeTaegyung Aug 10, 2025
fad6273
feat: 공용 컴포넌트 Header 제작
LeeTaegyung Aug 10, 2025
1455d7e
chore: Button 컴포넌트에 아이콘 컴포넌트 포함
LeeTaegyung Aug 10, 2025
dc19aa4
feat: 체크박스 아이템 공용 컴포넌트 제작
LeeTaegyung Aug 10, 2025
21776a6
style: 모든 요소 outline 스타일 삭제 추가
LeeTaegyung Aug 10, 2025
174b37d
style: 메인페이지 퍼블리싱
LeeTaegyung Aug 10, 2025
2b64cec
feat: 투두리스트 렌더링 및 추가 기능 구현
LeeTaegyung Aug 11, 2025
63ca089
feat: 투두아이템 체크시 상태에 따라 리렌더링
LeeTaegyung Aug 11, 2025
bfa51b5
chore: 투두리스트 반복 되는 영역 컴포넌트로 분리
LeeTaegyung Aug 11, 2025
6469277
feat: 투두리스트 checked 상태 서버 업데이트와 낙관적 업데이트
LeeTaegyung Aug 11, 2025
793e6d5
chore: response 타입 지정
LeeTaegyung Aug 11, 2025
e0caef1
feat: Suspense 적용 및 loading spinner 추가
LeeTaegyung Aug 12, 2025
0bc50a5
chore: Suspense에서 loading 스트리밍으로 수정
LeeTaegyung Aug 12, 2025
48c4a5f
Merge pull request #239 from LeeTaegyung/Next-이태경-sprint9
addiescode-sj Aug 13, 2025
7b2935e
refactor(mentor): next/Image 최대 컨텐츠 너비에 따른 이미지 사이즈 지정
LeeTaegyung Aug 13, 2025
07eb1a0
refactor(mentor): 로딩스피너 관련 과하게 분리된 파일 정리
LeeTaegyung Aug 13, 2025
6722ca7
fix: eslint import order 적용 안되는 문제 해결
LeeTaegyung Aug 13, 2025
cc020bf
refactor(mentor): 메인페이지의 Empty 관련 컴포넌트 위치 수정
LeeTaegyung Aug 13, 2025
56373ad
refactor(mentor): 투두추가폼 api 동작을 refresh() -> 서버액션 + revalidateTag로 수정
LeeTaegyung Aug 13, 2025
9f03858
refactor(mentor): 낙관적 업데이트 초기값 변경 및 ref로 데이터 유지되도록 수정
LeeTaegyung Aug 13, 2025
aaf1492
refactor(mentor): 하나의 타입으로 통일
LeeTaegyung Aug 13, 2025
7388278
chore: 불필요한 console 삭제
LeeTaegyung Aug 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .github/workflows/delete-merged-branch-config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: delete branch on close pr

on:
pull_request:
types: [closed]

jobs:
delete-branch:
runs-on: ubuntu-latest
steps:
- name: delete branch
uses: SvanBoxel/delete-merged-branch@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
41 changes: 41 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files (can opt-in for committing if needed)
.env*

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
36 changes: 36 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).

## Getting Started

First, run the development server:

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.

This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.

## Learn More

To learn more about Next.js, take a look at the following resources:

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!

## Deploy on Vercel

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
70 changes: 70 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
import { dirname } from "path";
import { fileURLToPath } from "url";

import { FlatCompat } from "@eslint/eslintrc";
import pluginImport from "eslint-plugin-import";

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

const compat = new FlatCompat({
baseDirectory: __dirname,
});

const eslintConfig = [
{
ignores: [".next/**"],
},
...compat.extends("next/core-web-vitals", "next/typescript"),
{
plugins: {
import: pluginImport,
},
rules: {
// 쓰이지 않는 변수 검사
"no-unused-vars": "off",
"@typescript-eslint/no-unused-vars": [
"warn",
{ argsIgnorePattern: "^_", varsIgnorePattern: "^_" },
],

// import order 검사
"import/order": [
"error",
{
groups: [
"builtin", // Node.js 내장 모듈
"external", // 외부 라이브러리
"internal", // 프로젝트 내부 alias
["parent", "sibling", "index"], // 상대 경로
"object", // (거의 없음)
"type", // 타입 임포트
],
pathGroups: [
{
pattern: "next/**",
group: "external",
position: "before",
},
{
pattern: "@/**",
group: "internal",
},
{
pattern: "@src/**",
group: "internal",
},
],
pathGroupsExcludedImportTypes: ["type"],
"newlines-between": "always",
alphabetize: {
order: "asc",
caseInsensitive: true,
},
},
],
},
},
];

export default eslintConfig;
18 changes: 18 additions & 0 deletions next.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import type { NextConfig } from "next";

const nextConfig: NextConfig = {
/* config options here */
webpack: (config) => {
config.module.rules.push({
test: /\.svg$/,
use: ["@svgr/webpack"],
});
return config;
},
images: {
deviceSizes: [640, 750, 828, 1080, 1200],
imageSizes: [320, 480, 640, 960, 1200],
},
};

export default nextConfig;
Loading
Loading