Schmalify is a second-hand shopping website tailored for students of Hochschule Schmalkalden. It aims to make it easy for students to buy and sell items locally within their community, creating an accessible platform for sustainable and budget-friendly exchanges.
This project has been officially adopted by Hochschule Schmalkalden as the primary platform for students to trade second-hand items. With hundreds of active users, the website plays a vital role in the student community, promoting sustainability and convenience by connecting buyers and sellers seamlessly.
- User Accounts & Authentication: Secure account creation and login for students.
- Item Listings: Users can post, edit, and delete their own listings, including multiple images.
- Search & Filter: Dynamic filtering options to narrow down items based on category, price, condition, etc.
- Responsive Design: Optimized for both desktop and mobile use.
- Category Browsing: Organized categories for efficient browsing.
- Guest Access: Allows users to browse as guests with limited functionality.
- Frontend: Vue 3, TypeScript, Nuxt 3, Nuxt UI
- Backend: Unjs Nitro (Server Engine), Drizzle ORM
- Platform: NuxtHub (Handles deployment, database, file serving, and overall app management)
- Database: Cloudflare D1 (SQLite)
- Deployment: Cloudflare Pages
Schmalify leverages NuxtHub as the backbone of its application for:
- Seamless deployment and scaling on Cloudflare infrastructure.
- Database management with Cloudflare D1 integration.
- Blob image serving and static asset management with Cloudflare R2.
- Key-value storage with Cloudflare Kv.
- Full-stack capabilities to optimize app performance and user experience.
Schmalify has been optimized for exceptional performance, accessibility, best practices, and SEO. Below are the results from Google PageSpeed Insights for the desktop version:
- Performance: 99
- Accessibility: 100
- Best Practices: 96
- SEO: 100
- First Contentful Paint: 0.3s
- Largest Contentful Paint: 0.5s
- Cumulative Layout Shift: 0
- Total Blocking Time: 100ms
These metrics showcase how Schmalify ensures a fast, seamless, and user-friendly experience for its users.
Created by Tahir Mahmudzade - feel free to reach out!