Commit Graph

504 Commits

Author SHA1 Message Date
eacd415667 feat(styles): update code font properties for improved readability 2025-02-21 19:49:32 +08:00
dd979d31b2 feat(code-editor): decrease top padding in code editor options for better layout 2025-02-21 02:09:31 +08:00
e47f68f99e feat(problem-description): add default problem statement for "Two Sum" challenge 2025-02-21 01:44:44 +08:00
b8100570e3 feat(problem-description): import mdx.css for enhanced styling 2025-02-21 01:39:58 +08:00
0c276eeef9 feat(styles): add mdx.css for improved code styling and line numbering 2025-02-21 01:39:46 +08:00
89512c8e6a feat(code-editor): increase top padding in code editor options for improved layout 2025-02-21 00:56:41 +08:00
eed3a9d9ef feat(styles): update global styles to use Fira Code font for better code readability 2025-02-21 00:21:34 +08:00
1142cb950f feat(page): Implement problem preview and code editor layout
This commit splits the home page into two halves:

- The left half displays a preview of the problem description using the `MdxPreview` component.
- The right half provides a code editor using the `CodeEditor` component.

This improves the user experience by allowing users to view the problem description and write code simultaneously.
2025-02-21 00:10:31 +08:00
17894b6e96 feat(mdx): implement MdxPreview component with error handling and loading state 2025-02-21 00:08:21 +08:00
11fa68c4b7 feat(layout): replace ModeToggle with Banner component in RootLayout 2025-02-21 00:07:56 +08:00
62ccb1fbcc feat(banner): add Banner component for project promotion with GitHub link 2025-02-21 00:07:45 +08:00
8d6e5067dc feat(config): add site configuration with GitHub repository URL 2025-02-21 00:07:34 +08:00
3f3b153c4b feat(problem-description): Use compileMDX with remarkGfm for MDX rendering 2025-02-20 18:46:20 +08:00
7db6f4e20e feat(components): add ProblemDescription component to render markdown
- Added ProblemDescription component that uses MDXRemote to render markdown content.
- Includes a Skeleton loader while content is loading and a horizontal scrollbar.
- Wrapped content in a ScrollArea with a max-height limit for better UI experience.
2025-02-20 17:58:49 +08:00
a4a037f5a4 feat(components/ui): add Scroll Area component from shadcn/ui 2025-02-20 15:56:55 +08:00
e29ab229b5 feat(styles): add GitHub markdown CSS and responsive styling for markdown content 2025-02-20 15:50:08 +08:00
162825250b feat(code-editor): add loading skeleton for dynamic editor component 2025-02-20 15:43:03 +08:00
96c946a2ca feat(layout): integrate mode toggle in layout and simplify home page structure 2025-02-20 14:43:56 +08:00
286a4739c3 style(header): adjust header height and padding for improved layout 2025-02-20 14:28:04 +08:00
d3d27768fb feat(code-editor): update default value for code editor based on language 2025-02-20 14:14:04 +08:00
5d99032be9 feat(config): add default code snippets for C and C++ languages 2025-02-20 14:13:56 +08:00
6329babfca feat(code-editor): use Zustand state for dynamic language selection 2025-02-20 14:06:13 +08:00
1bc1b638e2 feat(store): add Zustand store for managing code editor language state 2025-02-20 14:04:36 +08:00
bb81c4f7e1 feat(lsp): add default language configuration 2025-02-20 14:04:02 +08:00
9c78049359 feat(lsp): add supported languages with icons for C and C++ 2025-02-20 14:02:42 +08:00
728d9557da refactor(layout): remove unused font imports from layout component 2025-02-20 13:09:57 +08:00
31491c496e refactor: import CodeEditor directly instead of using dynamic import 2025-02-20 11:27:07 +08:00
d7a019c711 chore(font): change Fira Code font weight to 500 2025-02-20 10:13:41 +08:00
75f1e656e6 chore(editor): comment out onValidate function in CodeEditor component 2025-02-20 09:17:31 +08:00
07e3707c3f feat(editor): use predefined options for code editor configuration 2025-02-20 09:11:31 +08:00
01f188ac56 feat(editor): add default configuration for Monaco code editor 2025-02-20 09:11:20 +08:00
9057c5971e feat(styles): Use Fira Code font for body text 2025-02-20 09:11:02 +08:00
3f2bc8c332 chore: replace hardcoded WebSocket URL with environment variable
- Replaced the hardcoded LSP WebSocket URL with a configurable environment variable (NEXT_PUBLIC_LSP_C_URL).
- Default to "ws://localhost:4594/clangd" if the environment variable is not set.
2025-02-20 08:44:11 +08:00
e9da555705 refactor: move Monaco Editor logic to CodeEditor component
- Moved Monaco Editor initialization and related logic from src/app/page.tsx to src/components/code-editor.tsx
2025-02-20 01:10:25 +08:00
f0b2428e8b fix(code-editor): adjust loading skeleton padding for improved layout 2025-02-20 01:05:30 +08:00
63501a3f6c feat(code-editor): refactor layout structure and improve editor height handling 2025-02-20 00:59:53 +08:00
423951ec58 feat(code-editor): update theme handling and optimize highlighter integration 2025-02-20 00:30:45 +08:00
2f2b172fb8 feat(shiki): add Shiki highlighter initialization for syntax highlighting 2025-02-20 00:30:32 +08:00
fd48fa0fff feat(code-editor): integrate Shiki highlighter for enhanced syntax highlighting 2025-02-19 23:03:11 +08:00
9c9ed0ddd0 refactor: Move code editor logic to CodeEditor component 2025-02-19 22:46:30 +08:00
c195dffc10 feat(theme): Add ModeToggle component for theme switching 2025-02-19 22:45:30 +08:00
98fc2c75ef feat(component/ui): add Button and DropdownMenu components from shadcn/ui 2025-02-19 22:41:26 +08:00
d1bb42765d feat(layout): change default theme from dark to system in RootLayout component 2025-02-19 22:40:27 +08:00
eead1884e1 feat(layout): change default theme to dark in RootLayout component 2025-02-19 21:57:47 +08:00
73aae933ee feat(component/ui): add Toggle component from shadcn/ui 2025-02-19 21:44:24 +08:00
38dc197eb7 fix(layout): suppress hydration warning in RootLayout component 2025-02-19 21:30:01 +08:00
7c6c196cb2 feat(theme): wrap application in ThemeProvider for improved theme management 2025-02-19 21:20:25 +08:00
273c8e6b67 feat(theme): add ThemeProvider component for theme management 2025-02-19 21:20:12 +08:00
d10b059dd1 fix(editor): resolve production error "Missing service editorService" by importing vscode 2025-02-19 16:39:30 +08:00
672f63f10a feat(monaco): Integrate clangd LSP for C language support in Monaco Editor 2025-02-19 12:29:24 +08:00
baeafb92dd feat(components/ui): add Skeleton component from shadcn/ui 2025-02-19 11:12:29 +08:00
5d9904d083 style(theme): update to github light/dark theme color scheme 2025-02-19 09:11:57 +08:00
f7261ede2c chore: initialize shadcn/ui 2025-02-19 09:07:30 +08:00
19f5e6af2a chore: initialize the project 2025-02-19 09:00:15 +08:00