diff --git a/dapp/src/components/CommitHistory.astro b/dapp/src/components/CommitHistory.astro
deleted file mode 100644
index 688b2e4..0000000
--- a/dapp/src/components/CommitHistory.astro
+++ /dev/null
@@ -1,34 +0,0 @@
----
-import { getCommitHistory } from '../service/GithubService';
-import CommitRecord from './CommitRecord.astro';
-import { formatDate } from '../service/utils';
-import type { FormattedCommit } from '../types/github';
-
-const commitHistory = await getCommitHistory('tupui', 'soroban-versioning');
----
-
-
- {commitHistory && commitHistory.length > 0 && commitHistory.map((day: { date: string; commits: FormattedCommit[] }) => (
-
-
-
- {formatDate(day.date)}
-
-
- {day.commits.map((commit: FormattedCommit) => (
-
- ))}
-
-
- ))}
-
diff --git a/dapp/src/components/CommitHistory.jsx b/dapp/src/components/CommitHistory.jsx
new file mode 100644
index 0000000..b9eabdd
--- /dev/null
+++ b/dapp/src/components/CommitHistory.jsx
@@ -0,0 +1,50 @@
+import React from 'react';
+import { getCommitHistory } from '../service/GithubService';
+import CommitRecord from './CommitRecord.jsx';
+import { formatDate } from '../service/utils';
+import { loadProjectRepoInfo } from '../service/StateService';
+
+const CommitHistory = () => {
+ const [commitHistory, setCommitHistory] = React.useState([]);
+
+ React.useEffect(() => {
+ const fetchCommitHistory = async () => {
+ const projectRepoInfo = loadProjectRepoInfo();
+ if (projectRepoInfo?.author && projectRepoInfo?.repository) {
+ const history = await getCommitHistory(projectRepoInfo.author, projectRepoInfo.repository);
+ console.log("history:", history);
+ setCommitHistory(history);
+ }
+ };
+ fetchCommitHistory();
+ }, []);
+
+ return (
+