Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add product feature timeline view #490

Merged
merged 1 commit into from
Feb 26, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions web/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,15 @@ <h2>Ready to Start?</h2>
</div>
</section>

<section id="timeline">
<div class="content-wrapper">
<h2>Product Feature Timeline</h2>
<div class="timeline-container">
<!-- Timeline items will be dynamically populated here -->
</div>
</div>
</section>

<section id="detailed-features">
<div class="content-wrapper">
<h2>Detailed Features</h2>
Expand Down
39 changes: 38 additions & 1 deletion web/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -198,4 +198,41 @@ document.addEventListener('DOMContentLoaded', function() {
nav.classList.remove('responsive');
}
});
});

// Timeline Data
const timelineData = [
{ date: '2022-01-01', title: 'Project Initiation', description: 'DNAnalyzer project was initiated by Piyush Acharya.' },
{ date: '2022-06-15', title: 'First Release', description: 'First version of DNAnalyzer was released.' },
{ date: '2023-03-10', title: 'ML Integration', description: 'Integrated machine learning models for advanced DNA analysis.' },
{ date: '2024-08-25', title: 'Web Interface', description: 'Launched the web-based user interface for DNAnalyzer.' },
{ date: '2025-05-30', title: 'Community Growth', description: 'DNAnalyzer community reached 10,000+ users.' }
];

// Populate Timeline
const timelineContainer = document.querySelector('.timeline-container');
if (timelineContainer) {
timelineData.forEach(item => {
const timelineItem = document.createElement('div');
timelineItem.className = 'timeline-item';

const timelineDate = document.createElement('div');
timelineDate.className = 'timeline-date';
timelineDate.textContent = item.date;

const timelineContent = document.createElement('div');
timelineContent.className = 'timeline-content';

const timelineTitle = document.createElement('h3');
timelineTitle.textContent = item.title;

const timelineDescription = document.createElement('p');
timelineDescription.textContent = item.description;

timelineContent.appendChild(timelineTitle);
timelineContent.appendChild(timelineDescription);
timelineItem.appendChild(timelineDate);
timelineItem.appendChild(timelineContent);
timelineContainer.appendChild(timelineItem);
});
}
});
50 changes: 50 additions & 0 deletions web/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -656,6 +656,56 @@ body {
margin-bottom: 2rem;
}

/* Timeline Section */
#timeline {
padding: 6rem 2rem;
background: rgba(10, 12, 27, 0.5);
}

.timeline-container {
max-width: 1200px;
margin: 0 auto;
display: grid;
gap: 2rem;
}

.timeline-item {
display: flex;
align-items: center;
gap: 1.5rem;
padding: 1.5rem;
background: rgba(255, 255, 255, 0.03);
border-radius: 16px;
border: 1px solid rgba(255, 255, 255, 0.1);
transition: all 0.3s ease;
}

.timeline-item:hover {
transform: translateY(-5px);
border-color: rgba(255, 255, 255, 0.2);
box-shadow: 0 8px 32px rgba(0, 122, 255, 0.1);
}

.timeline-date {
font-size: 1.2rem;
font-weight: 700;
color: var(--gradient-start);
}

.timeline-content {
flex: 1;
}

.timeline-content h3 {
font-size: 1.5rem;
margin-bottom: 0.5rem;
color: white;
}

.timeline-content p {
color: rgba(255, 255, 255, 0.8);
}

/* Footer */
.footer-content {
background: rgba(10, 12, 27, 0.95);
Expand Down
Loading