├── .nvmrc ├── .husky └── pre-commit ├── .github ├── CODEOWNERS └── PULL_REQUEST_TEMPLATE.md ├── README.md ├── packages ├── icon │ ├── index.ts │ ├── types.d.ts │ ├── tsconfig.json │ ├── package.json │ └── svgs │ │ ├── email.svg │ │ ├── code.svg │ │ ├── index.ts │ │ ├── repo.svg │ │ ├── book.svg │ │ ├── people.svg │ │ ├── link.svg │ │ ├── github.svg │ │ ├── globe.svg │ │ └── hamsurang-logo.svg ├── constants │ ├── src │ │ ├── index.ts │ │ └── URL.ts │ ├── tsconfig.json │ └── package.json ├── utils │ ├── src │ │ ├── index.ts │ │ └── iframeEventHandler │ │ │ ├── index.ts │ │ │ ├── iframeEventHandler.types.ts │ │ │ └── iframeEventHandler.ts │ ├── tsconfig.json │ └── package.json ├── ui │ ├── src │ │ ├── index.ts │ │ ├── components │ │ │ ├── index.ts │ │ │ ├── tooltip.tsx │ │ │ ├── avatar.tsx │ │ │ ├── button.tsx │ │ │ └── MDX.styles.tsx │ │ ├── lib │ │ │ └── utils.ts │ │ └── styles │ │ │ └── globals.css │ ├── postcss.config.js │ ├── tsconfig.json │ ├── tsconfig.lint.json │ ├── components.json │ ├── package.json │ └── tailwind.config.ts └── typescript-config │ ├── package.json │ ├── react-library.json │ ├── nextjs.json │ └── base.json ├── apps ├── home │ ├── app │ │ ├── _shared │ │ │ ├── index.ts │ │ │ └── components │ │ │ │ ├── Readme │ │ │ │ ├── index.tsx │ │ │ │ └── Readme.tsx │ │ │ │ ├── People │ │ │ │ ├── index.ts │ │ │ │ ├── People.constants.ts │ │ │ │ └── People.tsx │ │ │ │ ├── Profile │ │ │ │ ├── index.ts │ │ │ │ └── Profile.tsx │ │ │ │ ├── MBTIOverview │ │ │ │ ├── index.ts │ │ │ │ ├── MBTI.types.ts │ │ │ │ ├── MBTI.overview.tsx │ │ │ │ ├── svgs │ │ │ │ │ ├── index.ts │ │ │ │ │ └── ISFJ.svg │ │ │ │ ├── MBTI.info.tsx │ │ │ │ └── MBTI.graph.tsx │ │ │ │ ├── ActivityLog │ │ │ │ ├── index.ts │ │ │ │ ├── compounds │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── ActivityLog.WeekList.tsx │ │ │ │ │ ├── ActivityLog.YearList.tsx │ │ │ │ │ ├── ActivityLog.Table.tsx │ │ │ │ │ ├── ActivityLog.MonthList.tsx │ │ │ │ │ └── ActivityLog.TableCell.tsx │ │ │ │ ├── ActivityLog.utils.ts │ │ │ │ ├── ActivityLog.types.ts │ │ │ │ ├── ActivityLog.provider.tsx │ │ │ │ └── ActivityLog.tsx │ │ │ │ ├── Repository │ │ │ │ ├── index.ts │ │ │ │ ├── Repository.types.ts │ │ │ │ ├── Repository.list.tsx │ │ │ │ └── Repository.tsx │ │ │ │ └── index.ts │ │ ├── favicon.ico │ │ ├── (profile-readme) │ │ │ ├── @profile │ │ │ │ ├── default.tsx │ │ │ │ └── people │ │ │ │ │ ├── page.tsx │ │ │ │ │ └── people.constants.ts │ │ │ ├── @readme │ │ │ │ ├── default.tsx │ │ │ │ ├── _shared │ │ │ │ │ └── content │ │ │ │ │ │ ├── tooooo1.mdx │ │ │ │ │ │ ├── sonsurim.mdx │ │ │ │ │ │ ├── 2-NOW.mdx │ │ │ │ │ │ ├── minsour.mdx │ │ │ │ │ │ ├── minsoo-web.mdx │ │ │ │ │ │ ├── chaaerim.mdx │ │ │ │ │ │ ├── sungh0lim.mdx │ │ │ │ │ │ ├── okinawaa.mdx │ │ │ │ │ │ ├── main.mdx │ │ │ │ │ │ ├── yejineee.mdx │ │ │ │ │ │ ├── minchodang.mdx │ │ │ │ │ │ └── manudeli.mdx │ │ │ │ └── people │ │ │ │ │ └── page.tsx │ │ │ ├── page.tsx │ │ │ ├── people │ │ │ │ ├── page.tsx │ │ │ │ └── people.constants.ts │ │ │ └── layout.tsx │ │ ├── layout.tsx │ │ └── home.constants.ts │ ├── tailwind.config.ts │ ├── postcss.config.js │ ├── public │ │ ├── clean-ping.png │ │ └── under-ping.png │ ├── next-env.d.ts │ ├── tsconfig.json │ ├── components.json │ ├── middleware.ts │ ├── next.config.js │ ├── package.json │ └── README.md └── wiki │ ├── tailwind.config.ts │ ├── app │ ├── _shared │ │ ├── components │ │ │ ├── WikiMDX │ │ │ │ ├── index.ts │ │ │ │ └── WikiMDX.tsx │ │ │ ├── SideNav │ │ │ │ ├── index.ts │ │ │ │ └── SideNav.tsx │ │ │ └── index.ts │ │ ├── constants │ │ │ ├── index.ts │ │ │ └── nav │ │ │ │ └── nav.constants.ts │ │ └── index.ts │ ├── favicon.ico │ ├── reset.css │ ├── page.tsx │ └── layout.tsx │ ├── postcss.config.js │ ├── next-env.d.ts │ ├── next.config.js │ ├── tsconfig.json │ ├── components.json │ ├── middleware.ts │ ├── package.json │ └── README.md ├── web ├── tailwind.config.ts ├── postcss.config.js ├── app │ ├── favicon.ico │ ├── _shared │ │ ├── components │ │ │ ├── index.ts │ │ │ ├── Header.tsx │ │ │ ├── EventListener.tsx │ │ │ └── GlobalNavigationBar.tsx │ │ └── constants │ │ │ └── styles.ts │ ├── opengraph-image.png │ ├── page.tsx │ ├── home │ │ ├── page.tsx │ │ └── people │ │ │ └── page.tsx │ ├── wiki │ │ └── page.tsx │ └── layout.tsx ├── next-env.d.ts ├── tsconfig.json ├── components.json ├── next.config.js ├── package.json └── README.md ├── pnpm-workspace.yaml ├── .nanostagedrc ├── .vscode ├── extensions.json └── settings.json ├── .gitignore ├── turbo.json ├── cspell.json ├── biome.json └── package.json /.nvmrc: -------------------------------------------------------------------------------- 1 | v20.13.0 -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | pnpm nano-staged -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @minsoo-web @sonsurim -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # origin 2 | 3 | 함수랑산악회 공식 홈페이지 4 | -------------------------------------------------------------------------------- /packages/icon/index.ts: -------------------------------------------------------------------------------- 1 | export * from './svgs' 2 | -------------------------------------------------------------------------------- /packages/constants/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './URL' 2 | -------------------------------------------------------------------------------- /apps/home/app/_shared/index.ts: -------------------------------------------------------------------------------- 1 | export * from './components' 2 | -------------------------------------------------------------------------------- /packages/utils/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './iframeEventHandler' 2 | -------------------------------------------------------------------------------- /web/tailwind.config.ts: -------------------------------------------------------------------------------- 1 | export * from '@hamsurang/ui/tailwind.config' 2 | -------------------------------------------------------------------------------- /apps/home/app/_shared/components/Readme/index.tsx: -------------------------------------------------------------------------------- 1 | export * from './Readme' 2 | -------------------------------------------------------------------------------- /apps/home/tailwind.config.ts: -------------------------------------------------------------------------------- 1 | export * from '@hamsurang/ui/tailwind.config' 2 | -------------------------------------------------------------------------------- /apps/wiki/tailwind.config.ts: -------------------------------------------------------------------------------- 1 | export * from '@hamsurang/ui/tailwind.config' 2 | -------------------------------------------------------------------------------- /apps/wiki/app/_shared/components/WikiMDX/index.ts: -------------------------------------------------------------------------------- 1 | export * from './WikiMDX' 2 | -------------------------------------------------------------------------------- /apps/wiki/app/_shared/constants/index.ts: -------------------------------------------------------------------------------- 1 | export * from './nav/nav.constants' 2 | -------------------------------------------------------------------------------- /web/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = require('@hamsurang/ui/postcss.config') 2 | -------------------------------------------------------------------------------- /apps/home/app/_shared/components/People/index.ts: -------------------------------------------------------------------------------- 1 | export { People } from './People' 2 | -------------------------------------------------------------------------------- /apps/home/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = require('@hamsurang/ui/postcss.config') 2 | -------------------------------------------------------------------------------- /apps/wiki/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = require('@hamsurang/ui/postcss.config') 2 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "apps/*" 3 | - "packages/*" 4 | - "web" 5 | -------------------------------------------------------------------------------- /.nanostagedrc: -------------------------------------------------------------------------------- 1 | { 2 | "*.{ts,tsx,json,jsonc}": ["biome format --write", "biome lint"] 3 | } -------------------------------------------------------------------------------- /apps/home/app/_shared/components/Profile/index.ts: -------------------------------------------------------------------------------- 1 | export { Profile } from './Profile' 2 | -------------------------------------------------------------------------------- /apps/wiki/app/_shared/components/SideNav/index.ts: -------------------------------------------------------------------------------- 1 | export { SideNav } from './SideNav' 2 | -------------------------------------------------------------------------------- /packages/ui/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './components' 2 | export * from './lib/utils' 3 | -------------------------------------------------------------------------------- /web/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hamsurang/origin/HEAD/web/app/favicon.ico -------------------------------------------------------------------------------- /apps/wiki/app/_shared/index.ts: -------------------------------------------------------------------------------- 1 | export * from './components' 2 | export * from './constants' 3 | -------------------------------------------------------------------------------- /apps/home/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hamsurang/origin/HEAD/apps/home/app/favicon.ico -------------------------------------------------------------------------------- /apps/wiki/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hamsurang/origin/HEAD/apps/wiki/app/favicon.ico -------------------------------------------------------------------------------- /web/app/_shared/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './EventListener' 2 | export * from './Header' 3 | -------------------------------------------------------------------------------- /web/app/_shared/constants/styles.ts: -------------------------------------------------------------------------------- 1 | export const IFRAME_CLASS_NAME = 'w-full h-iframe-height pb-1' 2 | -------------------------------------------------------------------------------- /web/app/opengraph-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hamsurang/origin/HEAD/web/app/opengraph-image.png -------------------------------------------------------------------------------- /apps/wiki/app/_shared/components/index.ts: -------------------------------------------------------------------------------- 1 | export { SideNav } from './SideNav' 2 | export * from './WikiMDX' 3 | -------------------------------------------------------------------------------- /apps/home/public/clean-ping.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hamsurang/origin/HEAD/apps/home/public/clean-ping.png -------------------------------------------------------------------------------- /apps/home/public/under-ping.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hamsurang/origin/HEAD/apps/home/public/under-ping.png -------------------------------------------------------------------------------- /apps/wiki/app/reset.css: -------------------------------------------------------------------------------- 1 | summary::-webkit-details-marker { 2 | /* Hides marker on Safari */ 3 | display: none; 4 | } -------------------------------------------------------------------------------- /packages/ui/postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | } 7 | -------------------------------------------------------------------------------- /packages/utils/src/iframeEventHandler/index.ts: -------------------------------------------------------------------------------- 1 | export * from './iframeEventHandler' 2 | export * from './iframeEventHandler.types' 3 | -------------------------------------------------------------------------------- /web/app/page.tsx: -------------------------------------------------------------------------------- 1 | import { redirect } from 'next/navigation' 2 | 3 | export default function Page() { 4 | return redirect('/home') 5 | } 6 | -------------------------------------------------------------------------------- /apps/home/app/_shared/components/MBTIOverview/index.ts: -------------------------------------------------------------------------------- 1 | export { MBTIOverview } from './MBTI.overview' 2 | export { type MBTIProps } from './MBTI.types' 3 | -------------------------------------------------------------------------------- /packages/ui/src/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './avatar' 2 | export * from './button' 3 | export * from './tooltip' 4 | export * from './MDX.styles' 5 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | # Overview 2 | 3 | 4 | 5 | Closes # -------------------------------------------------------------------------------- /apps/home/app/_shared/components/ActivityLog/index.ts: -------------------------------------------------------------------------------- 1 | export { ActivityLog } from './ActivityLog' 2 | export type { ActivityLogProps } from './ActivityLog.types' 3 | -------------------------------------------------------------------------------- /packages/icon/types.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.svg' { 2 | // biome-ignore lint/suspicious/noExplicitAny: 3 | const content: any 4 | export default content 5 | } 6 | -------------------------------------------------------------------------------- /packages/ui/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@hamsurang/typescript-config/react-library.json", 3 | "compilerOptions": { 4 | "outDir": "dist" 5 | }, 6 | "include": ["src"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/constants/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@hamsurang/typescript-config/react-library.json", 3 | "compilerOptions": { 4 | "outDir": "dist" 5 | }, 6 | "include": ["src"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/utils/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@hamsurang/typescript-config/react-library.json", 3 | "compilerOptions": { 4 | "outDir": "dist" 5 | }, 6 | "include": ["src"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/ui/tsconfig.lint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@hamsurang/typescript-config/react-library.json", 3 | "compilerOptions": { 4 | "outDir": "dist" 5 | }, 6 | "include": ["src", "turbo"] 7 | } 8 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": [ 3 | "biomejs.biome", 4 | "streetsidesoftware.code-spell-checker", 5 | "bradlc.vscode-tailwindcss", 6 | "shardulm94.trailing-spaces" 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /packages/ui/src/lib/utils.ts: -------------------------------------------------------------------------------- 1 | import { type ClassValue, clsx } from 'clsx' 2 | import { twMerge } from 'tailwind-merge' 3 | 4 | export function cn(...inputs: ClassValue[]) { 5 | return twMerge(clsx(inputs)) 6 | } 7 | -------------------------------------------------------------------------------- /packages/icon/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@hamsurang/typescript-config/base.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "plugins": [] 6 | }, 7 | "include": ["index.ts", "types.d.ts"] 8 | } 9 | -------------------------------------------------------------------------------- /apps/home/app/_shared/components/Repository/index.ts: -------------------------------------------------------------------------------- 1 | export { Repository } from './Repository' 2 | export { RepositoryList } from './Repository.list' 3 | export type { Category, RepositoryItem, RepositoryProps } from './Repository.types' 4 | -------------------------------------------------------------------------------- /packages/typescript-config/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@hamsurang/typescript-config", 3 | "version": "0.0.0", 4 | "private": true, 5 | "license": "MIT", 6 | "publishConfig": { 7 | "access": "public" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/typescript-config/react-library.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "display": "React Library", 4 | "extends": "./base.json", 5 | "compilerOptions": { 6 | "jsx": "react-jsx" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /apps/home/app/_shared/components/index.ts: -------------------------------------------------------------------------------- 1 | export * from './ActivityLog' 2 | export * from './MBTIOverview' 3 | export { People } from './People' 4 | export { Profile } from './Profile' 5 | export * from './Readme' 6 | export * from './Repository' 7 | -------------------------------------------------------------------------------- /packages/icon/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@hamsurang/icon", 3 | "version": "1.0.0", 4 | "private": true, 5 | "exports": "./index.ts", 6 | "devDependencies": { 7 | "@hamsurang/typescript-config": "workspace:*" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /web/app/home/page.tsx: -------------------------------------------------------------------------------- 1 | import { IFRAME_CLASS_NAME } from '@/_shared/constants/styles' 2 | import { URL } from '@hamsurang/constants' 3 | 4 | export default function Page() { 5 | return