Compare commits

...

14 Commits

Author SHA1 Message Date
Yosef halp
554b2a0212
Merge 2d9d39ffa5 into 464666c01a 2025-03-07 15:25:58 +01:00
Kingkor Roy Tirtho
464666c01a
Merge pull request #2410 from KRTirtho/dev
chore: update linux appdata screenshot
2025-03-07 20:22:32 +06:00
Kingkor Roy Tirtho
4db9a95a91 chore: update linux appdata screenshot 2025-03-07 20:20:56 +06:00
Kingkor Roy Tirtho
0e58cd0e99
Merge pull request #2408 from KRTirtho/dev
chore: add new images
2025-03-07 20:18:03 +06:00
Kingkor Roy Tirtho
3cce2868de website: remove playstore button 2025-03-07 20:12:05 +06:00
Kingkor Roy Tirtho
894b0d7e5e Merge branch 'dev' into website 2025-03-07 20:08:09 +06:00
Kingkor Roy Tirtho
7befbca8e5 chore: update images 2025-03-07 20:06:58 +06:00
Yosef halp
2d9d39ffa5
Update l10n.dart 2025-03-06 15:55:30 +02:00
Yosef halp
31892f4b8b
Update l10n.dart
Hebrew
2025-03-06 15:54:47 +02:00
Yosef halp
79dd6e3e8e
Create app_he.arb 2025-03-06 15:53:08 +02:00
Kingkor Roy Tirtho
ccf84c568e website: show overlay ads at bottom not blocking the view 2024-12-23 09:02:49 +06:00
Kingkor Roy Tirtho
fdb5ed8f56 website: publish from idea to impact 2024-12-22 23:12:12 +06:00
Kingkor Roy Tirtho
55871e3cdd website: change download page ad 2024-12-16 11:50:12 +06:00
Kingkor Roy Tirtho
0aa44520ac website: redirect from /other-downloads/stable-downloads/ to /downloads 2024-12-16 11:43:41 +06:00
32 changed files with 193 additions and 23 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 346 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 469 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 432 KiB

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 750 KiB

After

Width:  |  Height:  |  Size: 1006 KiB

118
lib/l10n/app_he.arb Normal file
View File

@ -0,0 +1,118 @@
{
"guest": "אורח",
"browse": "עיון",
"search": "חיפוש",
"library": "ספריה",
"lyrics": "מילים",
"settings": "הגדרות",
"genre_categories_filter": "סינון קטגוריות או ז'אנרים...",
"genre": "ז'אנר",
"personalized": "מותאם אישית",
"featured": "מומלץ",
"new_releases": "הוצאות חדשות",
"songs": "שירים",
"playing_track": "מנגן את {track}",
"queue_clear_alert": "פעולה זו תנקה את רשימת ההשמעה הנוכחית. {track_length} שירים יוסרו\nהאם ברצונך להמשיך?",
"load_more": "טען עוד",
"playlists": "פלייליסטים",
"artists": "אמנים",
"albums": "אלבומים",
"tracks": "רצועות",
"downloads": "הורדות",
"filter_playlists": "סינון הפלייליסטים שלך...",
"liked_tracks": "שירים שאהבת",
"liked_tracks_description": "כל השירים שאהבת",
"create_playlist": "יצירת פלייליסט",
"update_playlist": "עדכון פלייליסט",
"create": "צור",
"cancel": "ביטול",
"update": "עדכן",
"playlist_name": "שם הפלייליסט",
"description": "תיאור",
"public": "ציבורי",
"collaborative": "שיתופי",
"search_local_tracks": "חיפוש שירים מקומיים",
"play": "נגן",
"delete": "מחק",
"none": "כלום",
"sort_a_z": "מיון מ־A עד Z",
"sort_z_a": "מיון מ־Z עד A",
"sort_artist": "מיון לפי אמן",
"sort_album": "מיון לפי אלבום",
"sort_tracks": "מיון לפי רצועות",
"currently_downloading": "מוריד כעת ({tracks_length})",
"cancel_all": "ביטול הכל",
"filter_artist": "סינון אמנים...",
"followers": "{followers} עוקבים",
"add_artist_to_blacklist": "הוסף אמן לרשימה השחורה",
"top_tracks": "הרצועות המובילות",
"fans_also_like": "המעריצים גם אוהבים",
"loading": "טוען...",
"artist": "אמן",
"blacklisted": "ברשימה השחורה",
"following": "עוקב",
"follow": "עקוב",
"artist_url_copied": "קישור לאמן הועתק ללוח",
"added_to_queue": "{tracks} נוסף לרשימת ההשמעה",
"filter_albums": "סינון אלבומים...",
"synced": "סונכרן",
"shuffle": "ערבוב",
"search_tracks": "חיפוש רצועות",
"released": "יצא לאור",
"error": "שגיאה {error}",
"title": "כותרת",
"time": "זמן",
"more_actions": "פעולות נוספות",
"download_count": "הורד ({count})",
"album": "אלבום",
"copied_to_clipboard": "{data} הועתק ללוח",
"add_to_queue": "הוסף לתור",
"play_next": "נגן הבא",
"remove_from_queue": "הסר מהתור",
"remove_from_favorites": "הסר ממועדפים",
"save_as_favorite": "שמור כמועדף",
"add_to_playlist": "הוסף לפלייליסט",
"remove_from_playlist": "הסר מהפלייליסט",
"add_to_blacklist": "הוסף לרשימה השחורה",
"remove_from_blacklist": "הסר מהרשימה השחורה",
"share": "שיתוף",
"mini_player": "נגן מיני",
"shuffle_playlist": "ערבוב פלייליסט",
"unshuffle_playlist": "בטל ערבוב פלייליסט",
"previous_track": "הרצועה הקודמת",
"next_track": "הרצועה הבאה",
"pause_playback": "השהה",
"resume_playback": "המשך נגינה",
"repeat_playlist": "חזור על הפלייליסט",
"queue": "תור",
"alternative_track_sources": "מקורות רצועה חלופיים",
"download_track": "הורדת רצועה",
"tracks_in_queue": "{tracks} רצועות בתור",
"clear_all": "נקה הכל",
"account": "חשבון",
"login_with_spotify": "התחבר באמצעות Spotify",
"logout": "התנתק",
"language_region": "שפה ואזור",
"language": "שפה",
"appearance": "מראה",
"dark": "כהה",
"light": "בהיר",
"system": "ברירת מחדל של המערכת",
"accent_color": "צבע דגש",
"playback": "הפעלה",
"audio_quality": "איכות שמע",
"high": "גבוהה",
"low": "נמוכה",
"close": "סגור",
"about": "אודות",
"version": "גרסה",
"founder": "מייסד",
"license": "רישיון",
"submit": "שלח",
"previous": "הקודם",
"next": "הבא",
"done": "סיום",
"ok": "אישור",
"open": "פתח",
"save": "שמור"
}

View File

@ -1,5 +1,5 @@
/// credits:
///
/// Hebrew yosef apps telegram
/// Kingkor Roy Tirtho => English, Bengali
/// ChatGPT (GPT 3.5) XD => Hindi, French
/// maboroshin@github => Japanese
@ -25,6 +25,7 @@ class L10n {
const Locale('bn', 'BD'),
const Locale('ca', 'AD'),
const Locale('cs', 'CZ'),
const Locale('he', 'IL'), // עברית (ישראל)
const Locale('de', 'GE'),
const Locale('es', 'ES'),
const Locale('fa', 'IR'),

View File

@ -36,7 +36,7 @@
<screenshots>
<screenshot type="default">
<image type="source">
https://rawcdn.githack.com/KRTirtho/spotube/62055018feade0b895663a0bfc5f85f265ae2154/assets/spotube-screenshot.png
https://rawcdn.githack.com/KRTirtho/spotube/refs/heads/master/assets/spotube-screenshot.png
</image>
<caption>Spotube screenshot</caption>
</screenshot>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 346 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 469 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 346 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 469 KiB

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 270 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@ -60,5 +60,15 @@
"remark-reading-time": "^1.0.1",
"svelte-fa": "^4.0.2",
"svelte-markdown": "^0.4.1"
},
"packageManager": "pnpm@10.4.0+sha512.6b849d0787d97f8f4e1f03a9b8ff8f038e79e153d6f11ae539ae7c435ff9e796df6a862c991502695c7f9e8fac8aeafc1ac5a8dab47e36148d183832d886dd52",
"pnpm": {
"onlyBuiltDependencies": [
"@fortawesome/fontawesome-common-types",
"@fortawesome/free-brands-svg-icons",
"@sveltejs/kit",
"esbuild",
"svelte-preprocess"
]
}
}

View File

@ -0,0 +1,36 @@
---
title: From Idea to Impact
author: Prottoy Roy
date: 2024-12-22
published: true
cover_img: /images/from-idea-to-impact/cover.jpg
---
> An school magazine article by the beloved brother of the founder of the Spotube app
In the vibrant city of Narayanganj, Dhaka, Bangladesh, a young man named Kingkor Roy Tirtho was carving out his path in the world of technology. Currently a second-year Computer Science and Engineering (CSE) student at East West University, Kingkor had always been captivated by the magic of coding. From a young age, he spent countless hours tinkering with computers, teaching himself programming languages and exploring the digital realm.
Kingkor's passion wasn't just about writing code; it was about solving problems and creating innovative solutions. Inspired by the way technology could enhance everyday life, he dreamed of building apps that would bring joy and convenience to users. His dedication was evident; he often participated in hackathons and coding competitions, where he showcased his talent and creativity.
The turning point in his journey came when he envisioned an app that would revolutionize music streaming. With millions of people seeking accessible music, he wanted to create a platform that could bridge gaps and provide a seamless experience. Thus, Spotube was born.
Initially, Kingkor faced numerous challenges. Balancing his academic responsibilities with app development was no easy feat. There were nights filled with coding, debugging, and sleepless hours fueled by caffeine and determination. Despite setbacks and moments of self-doubt, Kingkor remained resilient. He sought feedback, learned from criticisms, and continually iterated on his project.
As Spotube gained traction, it garnered attention for its user-friendly interface and innovative features. Kingkors ability to blend technical skills with an understanding of user needs made the app a hit among music lovers. He received positive reviews, not just for the functionality, but for the passion evident in his work.
Kingkors story is one of perseverance and innovation. He embodies the spirit of a new generation of tech enthusiasts who believe that with dedication, anything is possible. His journey serves as an inspiration to his peers at East West University and beyond, reminding them that the intersection of creativity and technology can lead to remarkable achievements.
Today, Kingkor continues to evolve as a developer, always looking for ways to improve Spotube and explore new ideas. His story illustrates that genius isn't just about raw talent; it's about hard work, resilience, and the willingness to dream big. Kingkor Roy Tirtho is a shining example of what can be achieved when passion meets perseverance, and he is just getting international attentions.
Here is some key features of Spotube:
1. **Seamless Music Streaming**: Spotube offers a smooth streaming experience with a vast library of tracks, allowing users to easily find and play their favorite songs.
1. **Offline Listening**: Users can download their favorite tracks for offline playback, making it convenient to enjoy music anytime, anywhere, without relying on an internet connection.
1. **User-Friendly Interface**: The app is designed with an intuitive interface, making navigation easy for users of all ages. Its clean layout ensures a pleasant user experience.
1. **Cross-Platform Compatibility**: Spotube is accessible on multiple devices, enabling users to enjoy their music on smartphones, tablets, and desktops seamlessly.
1. **Personalized Playlists**: Users can create and manage their playlists, helping them curate their listening experience based on their mood and preferences.
1. **Social Sharing Features**: The app allows users to share their favorite tracks and playlists with friends and family, fostering a community of music lovers.
1. **Regular Updates**: Spotube is continually updated with new features and improvements based on user feedback, reflecting Kingkor's commitment to enhancing the app's performance and user satisfaction.
1. **Global Reach**: With its growing popularity, Spotube is gaining attention worldwide, attracting users from various countries and cultures, showcasing Kingkors vision of accessible music for everyone. He's recently got mentioned in a Spanish well known magazine for his invention.
As Spotube continues to evolve, Kingkor Roy Tirtho's innovative approach is positioning him and his app as significant players in the music streaming landscape, capturing the attention of users and industry experts alike.

View File

@ -14,7 +14,7 @@
<!-- Android Chrome -->
<link rel="manifest" href="%sveltekit.assets%/manifest.json" />
<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-6419300932495863"
crossorigin="anonymous"></script>
data-overlays="bottom" crossorigin="anonymous"></script>
%sveltekit.head%
</head>

View File

@ -9,3 +9,15 @@
src: url('/fonts/AbrilFatface.ttf');
font-display: swap;
}
.text-stroke {
text-shadow:
-1px -1px 0 #000,
1px -1px 0 #000,
-1px 1px 0 #000,
1px 1px 0 #000,
-1px 0 0 #000,
1px 0 0 #000,
0 -1px 0 #000,
0 1px 0 #000;
}

View File

@ -97,7 +97,7 @@ export const extendedNightlyDownloadLinks: Record<
export const ADS_SLOTS = Object.freeze({
rootPageDisplay: 5979549631,
blogPageInFeed: 3386010031,
downloadPageDisplay: 9521642154,
downloadPageDisplay: 9928443050,
packagePageArticle: 9119323068,
// This is being used for rehype-auto-ads in svelte.config.js
blogArticlePageArticle: 6788673194,

View File

@ -53,17 +53,9 @@
built with Electron (web technologies)
</p>
<br />
<div class="flex items-center">
<a
href="https://play.google.com/store/apps/details?id=oss.krtirtho.spotube"
target="_blank"
>
<img
class="-m-2"
src="https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png"
alt="Google PlayStore"
width="200"
/>
<div class="flex items-center gap-3">
<a href="https://news.ycombinator.com/item?id=39066136" target="_blank">
<img src="https://hackerbadge.vercel.app/api?id=39066136" alt="HackerNews" />
</a>
<a href="https://flathub.org/apps/com.github.KRTirtho.Spotube" target="_blank">
<img
@ -73,12 +65,7 @@
/>
</a>
</div>
<br />
<a href="https://news.ycombinator.com/item?id=39066136" target="_blank">
<img src="https://hackerbadge.vercel.app/api?id=39066136" alt="HackerNews" />
</a>
</div>
<br class="hidden md:block" />
<div class="flex justify-center">
<a href="/downloads" class="flex gap-2 btn variant-filled-primary">
Download

View File

@ -5,7 +5,7 @@
export let data: PageData;
const {
Content,
meta: { date, title, readingTime, cover_img }
meta: { date, title, readingTime, cover_img, author }
} = data as Required<PageData>;
</script>
@ -20,7 +20,8 @@
: null}
style={cover_img ? `background-image: url(/posts/${cover_img});` : ''}
>
<h1 class={`h1 ${cover_img ? 'text-white' : ''}`}>{title}</h1>
<h1 class={`h1 text-stroke ${cover_img ? 'text-white' : ''}`}>{title}</h1>
<h4 class={`h4 text-stroke text-gray-400`}>By {author}</h4>
<br />
<p class={cover_img ? 'text-gray-400' : ''}>{new Date(date).toDateString()}</p>
<p class={`mb-16 ${cover_img ? 'text-gray-400' : ''}`}>{readingTime?.text ?? ''}</p>

View File

@ -0,0 +1,5 @@
import { redirect } from "@sveltejs/kit";
export function load(){
redirect(301, "/downloads");
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB