๋ฒ๋ ค์ง๋ ์ฌ์ด๋ ๋ง๊ณ , ๊ฐ๊ฟ์ง๋ ์ฌ์ด๋๋ก.
๋ฐ์ด๋ธ์ฝ๋ฉ์ผ๋ก ๋ง๋ ์๋น์ค, ์ฃผ๋ง์ ๋ง๋ ํ ์ด ํ๋ก์ ํธ, ํด์ปคํค์์ ๋ง๋ ์ฑ โ ๋ง๋ค๊ณ ๋์ด ์๋๋ผ, ์ฒซ 1,000๋ช ์ ๋ฐฉ๋ฌธ์๋ฅผ ํจ๊ป ๋ง๋ค์ด๊ฐ๋ ๊ณณ.
๋ฑ์ง ํ๋ ๋ฌ๋ฉด ๋ฌ๋ผ์ ธ์. ๋๊ตฐ๊ฐ ์ฐพ์์๋ค๋ ์ซ์ ํ๋๊ฐ, ํฌ๊ธฐ ๋์ ํ ๋ฒ ๋ ์๋ณด๊ฒ ๋ง๋ค์ด์.
[](https://m1k.app/YOUR_SLUG)- m1k.app์์ ๋ก๊ทธ์ธ
- ๋ด ์ฌ์ดํธ URL ๋ฑ๋ก
- ๋ฐ๊ธ๋ ๋ฐฐ์ง ์ฝ๋๋ฅผ README/์ฌ์ดํธ์ ๋ถ์ฌ๋ฃ๊ธฐ
- ๋ฑ์ง๊ฐ ๋ก๋๋๋ฉด ์๋์ผ๋ก ์ธ์ฆ ์๋ฃ โ ํ์ ๋ชฉ๋ก์ ๋ ธ์ถ
- SVG ๋ฐฐ์ง ์นด์ดํฐ โ Flat, Square, Rounded, ์ธ์ด์๋ 4์ข ์คํ์ผ
- IP ์ค๋ณต ์ ๊ฑฐ โ SHA-256 ํด์ ๊ธฐ๋ฐ ํ๋ฃจ 1ํ ์นด์ดํธ
- ์ค์๊ฐ ํด๋ง โ ๋์๋ณด๋ 30์ด ์๋ ๊ฐฑ์
- ํ์ ๋ฑ์ง โ ํ์ด์ง๋ณ ๋
๋ฆฝ ์นด์ดํฐ (
/about,/post/123๋ฑ)
- ๊ตญ๊ฐ/๋๋ฐ์ด์ค/์ ์ ๊ฒฝ๋ก โ ์๋ ์์ง
- ์๋ ํํธ๋งต โ GitHub ์คํ์ผ ์ฐ๊ฐ ๋ฐฉ๋ฌธ ํํฉ
- ์คํธ๋ฆญ โ ์ฐ์ ๋ฐฉ๋ฌธ์ผ ์ถ์ (7์ผ+ ๋ถ๊ฝ ๋ชจ๋)
- ๋์ ๋ชฉํ โ 1K -> 10K -> 100K -> 1M ์๋ ์ ํ
- ๋ฌ์ฑ ๋ฑ์ง 39๊ฐ โ ๋์ /์ฃผ๊ฐ/์ผ๊ฐ/์คํธ๋ฆญ ์นดํ ๊ณ ๋ฆฌ
- 1K ๋ ์ด์ค ๋ญํน โ ํ์ ํญ TOP 5 ๋ฆฌ๋๋ณด๋
- Confetti โ ๋ชฉํ ๋ฌ์ฑ ์ ์ถํ ์ ๋๋ฉ์ด์
- 1 ๋ถ์คํธ = ๋ฐฉ๋ฌธ์ +1 โ ๋ฑ์ง ์นด์ดํฐ์ ํฉ์ฐ
- ๋ด ์ฌ์ดํธ์ ์ฐ๊ฑฐ๋, ์น๊ตฌ ์ฌ์ดํธ์ ์์์ผ๋ก ์ ๋ฌผ
- ๊ฐ์ ์ 100 ๋ถ์คํธ ๋ฌด๋ฃ ์ง๊ธ
- ๋์๋ณด๋์์ ์ค์ ๋ฐฉ๋ฌธ vs ๋ถ์คํธ ๋ถ๋ฆฌ ํ์ธ
- Referer ๊ธฐ๋ฐ ์์ ๊ถ ์ธ์ฆ โ ๋ฑ์ง๋ฅผ ์ฌ์ดํธ์ ์ฌ์ด์ผ ๋ฑ๋ก ์๋ฃ
- DNS ๋๋ฉ์ธ ๊ฒ์ฆ โ ์ค์กดํ๋ ๋๋ฉ์ธ๋ง ๋ฑ๋ก ๊ฐ๋ฅ
- ๋ก๊ทธ์ธ ํ์ ๋ฑ๋ก โ Google OAuth (Clerk)
| hits.sh | m1k | |
|---|---|---|
| ์นด์ดํฐ | ๋งค๋ฒ +1 | IP ํด์ ์ค๋ณต ์ ๊ฑฐ |
| ์์ ๊ถ ์ธ์ฆ | X | Referer ๊ฒ์ฆ |
| ํ์ด์ง๋ณ ์ถ์ | X | ํ์ ๋ฑ์ง |
| ๊ตญ๊ฐ/๋๋ฐ์ด์ค ๋ถ์ | X | O |
| ์คํธ๋ฆญ | X | ์ฐ์ ๋ฐฉ๋ฌธ์ผ ์ถ์ |
| ๊ฒ์ด๋ฏธํผ์ผ์ด์ | X | 39๊ฐ ๋ฑ์ง + ๋ญํน + confetti |
| ๋ถ์คํธ (์์) | X | 1๋ถ์คํธ = 1๋ช |
| ์ค์๊ฐ ๊ฐฑ์ | X | 30์ด ํด๋ง |
| ๋ก๊ณ ์ฝ์ | O (simple-icons) | X |
| extraCount | O | ๋ถ์คํธ๋ก ๋์ฒด |
https://m1k.app/badge/SLUG.svg?label=m1k&color=ec4899&style=flat
| ํ๋ผ๋ฏธํฐ | ๊ธฐ๋ณธ๊ฐ | ์ค๋ช |
|---|---|---|
label |
m1k | ๋ฐฐ์ง ๋ผ๋ฒจ ํ ์คํธ |
color |
ํ ๋ง์ | ๋ฐฐ์ง ์์ (hex, # ์์ด) |
style |
flat | flat flat-square rounded cyworld |
type |
total | total today weekly monthly |
view |
false | true๋ฉด ์นด์ดํธ ์ ์ฌ๋ฆผ |
- Next.js 16 (App Router, Turbopack)
- Tailwind CSS v4
- Neon (PostgreSQL) + Drizzle ORM
- Clerk (Google OAuth)
- Paddle (๊ฒฐ์ )
- Vercel (ํธ์คํ )
npm install
cp .env.local.example .env.local
npm run devDATABASE_URL= # Neon PostgreSQL
CLERK_SECRET_KEY= # Clerk
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
NEXT_PUBLIC_APP_URL= # e.g. https://m1k.app
IP_HASH_SALT= # IP ํด์ ์ํธ
# Paddle (์ ํ)
NEXT_PUBLIC_PADDLE_CLIENT_TOKEN=
NEXT_PUBLIC_PADDLE_ENV=sandbox
PADDLE_WEBHOOK_SECRET=์ด์ ๋ก๊ทธ์ธ ์ค์ ์ฒดํฌ:
- Clerk Production ์ธ์คํด์ค์
GitHub์์ ์ฐ๊ฒฐ์ ๋ณ๋๋ก ํ์ฑํํด์ผ ํฉ๋๋ค. - Clerk ํ์ฉ ๋ฆฌ๋ค์ด๋ ํธ URL์
https://YOUR_DOMAIN/sso-callback์ ์ถ๊ฐํด์ผ ํฉ๋๋ค. - ์ฑ์
NEXT_PUBLIC_APP_URL๊ฐ๊ณผ Clerk/GitHub OAuth์ ๋ฑ๋กํ ์ด์ ๋๋ฉ์ธ์ด ์ ํํ ์ผ์นํด์ผ ํฉ๋๋ค.
1K ์ฌ์ ๐ฑ ๐ฃ ๐ฅ โญ ๐ ๐ ๐ ๐
10K ์ฐ์ฃผ ๐ธ ๐ โ๏ธ ๐ช
100K ์ํ ๐ ๐ญ ๐ ๐ซ
1M ์ ํ ๐๏ธ ๐ฟ โ๏ธ ๐ผ
์ฃผ๊ฐ ๐ข ๐ ๐ฆ
๐ ๐ฆ ๐
์ผ๊ฐ โ๏ธ ๐ โก ๐ ๐ช๏ธ โ๏ธ
์คํธ๋ฆญ ๐
๐ฅ ๐ช ๐ฏ ๐
๐ โพ๏ธ
MIT