landing page ui revamp
This commit is contained in:
@@ -8,17 +8,24 @@ import {
|
|||||||
Card,
|
Card,
|
||||||
CardContent,
|
CardContent,
|
||||||
Grid,
|
Grid,
|
||||||
useTheme
|
useTheme,
|
||||||
|
Slide,
|
||||||
|
Zoom,
|
||||||
} from '@mui/material';
|
} from '@mui/material';
|
||||||
import {
|
import {
|
||||||
CloudUpload as CloudUploadIcon,
|
CloudUpload as CloudUploadIcon,
|
||||||
PlayArrow as PlayArrowIcon,
|
PlayArrow as PlayArrowIcon,
|
||||||
Check as CheckIcon
|
Check as CheckIcon,
|
||||||
|
GraphicEq as GraphicEqIcon,
|
||||||
|
NoiseAware as NoiseAwareIcon,
|
||||||
|
MusicNote as MusicNoteIcon,
|
||||||
} from '@mui/icons-material';
|
} from '@mui/icons-material';
|
||||||
|
import { useState } from 'react';
|
||||||
|
|
||||||
function LandingPage() {
|
function LandingPage() {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
const theme = useTheme();
|
const theme = useTheme();
|
||||||
|
const [showContent, setShowContent] = useState(true);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Box
|
<Box
|
||||||
@@ -33,6 +40,7 @@ function LandingPage() {
|
|||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
<Container maxWidth="md">
|
<Container maxWidth="md">
|
||||||
|
<Slide direction="down" in={showContent} mountOnEnter unmountOnExit>
|
||||||
<Paper
|
<Paper
|
||||||
elevation={3}
|
elevation={3}
|
||||||
sx={{
|
sx={{
|
||||||
@@ -60,46 +68,135 @@ function LandingPage() {
|
|||||||
</Button>
|
</Button>
|
||||||
</Box>
|
</Box>
|
||||||
</Paper>
|
</Paper>
|
||||||
|
</Slide>
|
||||||
|
|
||||||
<Grid container spacing={4} sx={{ mt: 4 }}>
|
<Grid container spacing={4} sx={{ mt: 4, justifyContent: 'center' }}>
|
||||||
<Grid item xs={12} md={4}>
|
<Grid item xs={12} md={4}>
|
||||||
<Card sx={{ height: '100%' }}>
|
<Zoom in={showContent} style={{ transitionDelay: '100ms' }}>
|
||||||
|
<Card
|
||||||
|
sx={{
|
||||||
|
height: '100%',
|
||||||
|
transition: 'transform 0.3s ease-in-out',
|
||||||
|
'&:hover': { transform: 'scale(1.05)' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
<CardContent sx={{ textAlign: 'center' }}>
|
<CardContent sx={{ textAlign: 'center' }}>
|
||||||
<CloudUploadIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
<CloudUploadIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
||||||
<Typography variant="h5" gutterBottom>
|
<Typography variant="h5" gutterBottom>
|
||||||
Easy Upload
|
Upload or Record
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography variant="body1" color="textSecondary">
|
<Typography variant="body1" color="textSecondary">
|
||||||
Drag and drop your media files for quick processing
|
Drag and drop your media files or record directly for quick processing.
|
||||||
</Typography>
|
</Typography>
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</Card>
|
</Card>
|
||||||
|
</Zoom>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item xs={12} md={4}>
|
<Grid item xs={12} md={4}>
|
||||||
<Card sx={{ height: '100%' }}>
|
<Zoom in={showContent} style={{ transitionDelay: '200ms' }}>
|
||||||
|
<Card
|
||||||
|
sx={{
|
||||||
|
height: '100%',
|
||||||
|
transition: 'transform 0.3s ease-in-out',
|
||||||
|
'&:hover': { transform: 'scale(1.05)' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
<CardContent sx={{ textAlign: 'center' }}>
|
<CardContent sx={{ textAlign: 'center' }}>
|
||||||
<PlayArrowIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
<PlayArrowIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
||||||
<Typography variant="h5" gutterBottom>
|
<Typography variant="h5" gutterBottom>
|
||||||
Preview Media
|
Preview Media
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography variant="body1" color="textSecondary">
|
<Typography variant="body1" color="textSecondary">
|
||||||
Review your files before processing
|
Review your files before processing.
|
||||||
</Typography>
|
</Typography>
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</Card>
|
</Card>
|
||||||
|
</Zoom>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item xs={12} md={4}>
|
<Grid item xs={12} md={4}>
|
||||||
<Card sx={{ height: '100%' }}>
|
<Zoom in={showContent} style={{ transitionDelay: '300ms' }}>
|
||||||
|
<Card
|
||||||
|
sx={{
|
||||||
|
height: '100%',
|
||||||
|
transition: 'transform 0.3s ease-in-out',
|
||||||
|
'&:hover': { transform: 'scale(1.05)' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
<CardContent sx={{ textAlign: 'center' }}>
|
<CardContent sx={{ textAlign: 'center' }}>
|
||||||
<CheckIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
<CheckIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
||||||
<Typography variant="h5" gutterBottom>
|
<Typography variant="h5" gutterBottom>
|
||||||
View Results
|
View Results
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography variant="body1" color="textSecondary">
|
<Typography variant="body1" color="textSecondary">
|
||||||
Download and share your processed media
|
Download and share your processed media.
|
||||||
</Typography>
|
</Typography>
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</Card>
|
</Card>
|
||||||
|
</Zoom>
|
||||||
|
</Grid>
|
||||||
|
|
||||||
|
<Grid item xs={12} md={4}>
|
||||||
|
<Zoom in={showContent} style={{ transitionDelay: '400ms' }}>
|
||||||
|
<Card
|
||||||
|
sx={{
|
||||||
|
height: '100%',
|
||||||
|
transition: 'transform 0.3s ease-in-out',
|
||||||
|
'&:hover': { transform: 'scale(1.05)' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<CardContent sx={{ textAlign: 'center' }}>
|
||||||
|
<GraphicEqIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
||||||
|
<Typography variant="h5" gutterBottom>
|
||||||
|
Audio Source Separation (Demucs)
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="body1" color="textSecondary">
|
||||||
|
Separate audio sources with state-of-the-art Demucs.
|
||||||
|
</Typography>
|
||||||
|
</CardContent>
|
||||||
|
</Card>
|
||||||
|
</Zoom>
|
||||||
|
</Grid>
|
||||||
|
<Grid item xs={12} md={4}>
|
||||||
|
<Zoom in={showContent} style={{ transitionDelay: '500ms' }}>
|
||||||
|
<Card
|
||||||
|
sx={{
|
||||||
|
height: '100%',
|
||||||
|
transition: 'transform 0.3s ease-in-out',
|
||||||
|
'&:hover': { transform: 'scale(1.05)' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<CardContent sx={{ textAlign: 'center' }}>
|
||||||
|
<NoiseAwareIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
||||||
|
<Typography variant="h5" gutterBottom>
|
||||||
|
Noise Reduction (DeepFilterNet)
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="body1" color="textSecondary">
|
||||||
|
Reduce noise effectively using DeepFilterNet.
|
||||||
|
</Typography>
|
||||||
|
</CardContent>
|
||||||
|
</Card>
|
||||||
|
</Zoom>
|
||||||
|
</Grid>
|
||||||
|
<Grid item xs={12} md={4}>
|
||||||
|
<Zoom in={showContent} style={{ transitionDelay: '600ms' }}>
|
||||||
|
<Card
|
||||||
|
sx={{
|
||||||
|
height: '100%',
|
||||||
|
transition: 'transform 0.3s ease-in-out',
|
||||||
|
'&:hover': { transform: 'scale(1.05)' },
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
<CardContent sx={{ textAlign: 'center' }}>
|
||||||
|
<MusicNoteIcon color="primary" sx={{ fontSize: 60, mb: 2 }} />
|
||||||
|
<Typography variant="h5" gutterBottom>
|
||||||
|
Audio Processing (Librosa)
|
||||||
|
</Typography>
|
||||||
|
<Typography variant="body1" color="textSecondary">
|
||||||
|
Advanced audio processing and manipulation with Librosa.
|
||||||
|
</Typography>
|
||||||
|
</CardContent>
|
||||||
|
</Card>
|
||||||
|
</Zoom>
|
||||||
</Grid>
|
</Grid>
|
||||||
</Grid>
|
</Grid>
|
||||||
</Container>
|
</Container>
|
||||||
|
|||||||
Reference in New Issue
Block a user