Display projects

This commit is contained in:
MD. Ariful Alam
2021-08-23 21:33:35 +06:00
parent 29da6b59a9
commit 09390be420
8 changed files with 1619 additions and 118 deletions

View File

@@ -35,130 +35,130 @@ function App() {
const loadData = () => {
axios.get(`https://api.github.com/users/${config.githubUsername}`)
.then(response => {
let data = response.data;
.then(response => {
let data = response.data;
let profileData = {
avatar: data.avatar_url,
name: data.name,
bio: data.bio,
location: data.location,
company: data.company,
twitter: data.twitter_username,
}
let profileData = {
avatar: data.avatar_url,
name: data.name,
bio: data.bio,
location: data.location,
company: data.company,
twitter: data.twitter_username,
}
dispatch(setProfile(profileData));
})
.then(() => {
loadRepo();
})
.catch((error) => {
console.error('Error:', error);
try {
setRateLimit({
remaining: error.response.headers['x-ratelimit-remaining'],
reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(),
});
dispatch(setProfile(profileData));
})
.then(() => {
loadRepo();
})
.catch((error) => {
console.error('Error:', error);
if (error.response.status === 403) {
setError(403);
} else if (error.response.status === 404) {
setError(404);
} else {
try {
setRateLimit({
remaining: error.response.headers['x-ratelimit-remaining'],
reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(),
});
if (error.response.status === 403) {
setError(403);
} else if (error.response.status === 404) {
setError(404);
} else {
setError(500);
}
} catch (error2) {
setError(500);
}
} catch (error2) {
setError(500);
}
})
.finally(() => {
dispatch(setLoading(false));
});
})
.finally(() => {
dispatch(setLoading(false));
});
}
const loadRepo = () => {
axios.get(`https://api.github.com/search/repositories?q=user:${config.githubUsername}+&s=stars&type=Repositories`)
.then(response => {
let data = response.data;
.then(response => {
let data = response.data;
dispatch(setRepo(data.items));
})
.catch((error) => {
console.error('Error:', error);
try {
setRateLimit({
remaining: error.response.headers['x-ratelimit-remaining'],
reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(),
});
dispatch(setRepo(data.items));
})
.catch((error) => {
console.error('Error:', error);
} catch (error2) {
console.error('Error:', error2);
}
});
try {
setRateLimit({
remaining: error.response.headers['x-ratelimit-remaining'],
reset: moment(new Date(error.response.headers['x-ratelimit-reset'] * 1000)).fromNow(),
});
} catch (error2) {
console.error('Error:', error2);
}
});
}
return (
<Fragment>
<div className="fade-in h-screen">
{
error ? (
<ErrorPage
status={`${error}`}
title={(error === 404) ? 'The Github Username is Incorrect' : (
error === 403 ? 'Too Many Request.' : `${error}`
)}
subTitle={
(error === 404) ? (
{
error ? (
<ErrorPage
status={`${error}`}
title={(error === 404) ? 'The Github Username is Incorrect' : (
error === 403 ? 'Too Many Request.' : `${error}`
)}
subTitle={
(error === 404) ? (
<p>
Please provide correct github username in <code>src\config.js</code>
</p>
) : (
error === 403 ? (
<p>
Please provide correct github username in <code>src\config.js</code>
Oh no, you hit the{' '}
<a
href="https://developer.github.com/v3/rate_limit/"
target="_blank"
rel="noopener noreferrer"
>
rate limit
</a>
! Try again later{rateLimit && ` ${rateLimit.reset}`}.
</p>
) : (
error === 403 ? (
<p>
Oh no, you hit the{' '}
<a
href="https://developer.github.com/v3/rate_limit/"
target="_blank"
rel="noopener noreferrer"
>
rate limit
</a>
! Try again later{rateLimit && ` ${rateLimit.reset}`}.
</p>
) : `Something went wrong`
)
}
/>
) : (
<div className="p-4 lg:p-10 min-h-full bg-base-200">
<div className="grid grid-cols-1 gap-6 lg:grid-cols-3 lg:bg-base-200 rounded-box">
) : `Something went wrong`
)
}
/>
) : (
<div className="p-4 lg:p-10 min-h-full bg-base-200">
<div className="grid grid-cols-1 lg:grid-cols-3 gap-6 rounded-box">
<div className="col-span-1">
<div className="grid grid-cols-1 gap-6">
{
!config.themeConfig.disableSwitch && (
<ThemeChanger/>
<ThemeChanger />
)
}
<AvatarCard/>
<Details/>
<Skill/>
<Experience/>
<Education/>
<AvatarCard />
<Details />
<Skill />
<Experience />
<Education />
</div>
</div>
<div className="col-span-2">
<div className="lg:col-span-2 col-span-1">
<div className="grid grid-cols-1 gap-6">
<Project/>
<Project />
</div>
</div>
</div>
</div>
)
}
)
}
</div>
</Fragment>
);