Skip to content

sblrm/study-share

Repository files navigation

πŸ“š StudyShare - Note Sharing Platform

StudyShare Homepage

A modern note-sharing platform built for students to collaborate and share academic resources

Laravel TailwindCSS PHP SQLite Vite


πŸ‘¨β€πŸ’» About Developer

Sabilillah Ramaniya Widodo

πŸŽ“ Computer Science Student | πŸ’Ό Aspiring Full-Stack Developer

LinkedIn Email GitHub


πŸš€ Project Overview

StudyShare is a comprehensive note-sharing platform designed to facilitate academic collaboration among students. Built with Laravel 12 and modern web technologies, it provides a seamless experience for uploading, sharing, and managing study materials.

🎯 Key Features

Dashboard View Notes Management

πŸ“ Core Functionality

  • πŸ” Secure Authentication - Laravel Breeze integration with role-based access
  • πŸ“€ File Upload System - Support for PDF, DOCX, PPTX files with validation
  • πŸ” Advanced Search & Filter - Search by title, subject, author with smart filtering
  • ⭐ Interactive Features - Upvoting, favorites, and commenting system
  • πŸ“Š Download Tracking - Comprehensive analytics for note popularity

πŸ‘₯ User Management

  • πŸ‘€ Student Profiles - Complete profile management with academic info
  • πŸ‘¨β€πŸ’Ό Admin Panel - Comprehensive administrative dashboard
  • πŸ“‹ Role-Based Permissions - Secure access control system
  • 🚨 Report System - Content moderation and community safety

🎨 Modern UI/UX

  • πŸ“± Responsive Design - Mobile-first approach with TailwindCSS
  • ⚑ Fast Loading - Vite-powered asset compilation
  • 🎯 Intuitive Navigation - User-friendly interface design

πŸ› οΈ Technical Architecture

Backend Stack

πŸš€ Laravel 12.x    - Modern PHP framework with latest features
πŸ—„οΈ SQLite         - Lightweight database for development
πŸ”’ Laravel Breeze  - Authentication scaffolding
πŸ“§ Mail System     - Notification and communication
⚑ Queue System    - Background job processing
πŸ§ͺ PHPUnit         - Comprehensive testing suite

Frontend Stack

🎨 TailwindCSS 4.0  - Utility-first CSS framework
⚑ Vite 7.0         - Next-generation build tool
πŸ”οΈ Alpine.js        - Lightweight JavaScript framework
πŸ“± Responsive Grid  - Mobile-optimized layouts
🎯 FontAwesome 6    - Professional iconography

Development Tools

πŸ”„ Composer Scripts   - Automated development workflow
πŸ“¦ NPM Dependencies   - Modern package management
πŸ§ͺ Feature Testing    - Comprehensive test coverage
πŸ” Laravel Pail       - Advanced logging system
βš™οΈ Concurrent Dev     - Multi-process development server

πŸ“· Application Screenshots

🏠 Homepage & Navigation

Homepage

Clean, modern homepage with intuitive navigation and search functionality

πŸ“‹ Admin Dashboard

Admin Dashboard

Comprehensive admin panel with statistics, user management, and content moderation

πŸ“ Note Management

Notes Management

Advanced note management with filtering, search, and bulk operations


πŸš€ Installation & Setup

Prerequisites

  • PHP 8.2 or higher
  • Composer 2.x
  • Node.js 18.x or higher
  • NPM or Yarn

Quick Start

# Clone the repository
git clone https://github.com/sblrm/note-sharing.git
cd note-sharing

# Install PHP dependencies
composer install

# Install Node.js dependencies
npm install

# Environment setup
cp .env.example .env
php artisan key:generate

# Database setup
touch database/database.sqlite
php artisan migrate --seed

# Start development server
composer run dev

Development Commands

# Start all development services
composer run dev

# Individual services
php artisan serve      # Laravel server
php artisan queue:work # Queue worker
php artisan pail       # Log monitoring
npm run dev           # Vite dev server

# Testing
composer run test     # Run all tests
php artisan test      # PHPUnit tests

# Production build
npm run build         # Build assets

πŸ—οΈ Project Structure

note-sharing/
β”œβ”€β”€ πŸ“ app/
β”‚   β”œβ”€β”€ Http/Controllers/     # Application controllers
β”‚   β”œβ”€β”€ Models/              # Eloquent models
β”‚   └── Providers/           # Service providers
β”œβ”€β”€ πŸ“ database/
β”‚   β”œβ”€β”€ migrations/          # Database schema
β”‚   β”œβ”€β”€ seeders/            # Data seeders
β”‚   └── database.sqlite     # SQLite database
β”œβ”€β”€ πŸ“ resources/
β”‚   β”œβ”€β”€ views/              # Blade templates
β”‚   β”œβ”€β”€ css/                # Stylesheets
β”‚   └── js/                 # JavaScript files
β”œβ”€β”€ πŸ“ public/
β”‚   β”œβ”€β”€ images/             # Application screenshots
β”‚   └── build/              # Compiled assets
β”œβ”€β”€ πŸ“ tests/
β”‚   β”œβ”€β”€ Feature/            # Feature tests
β”‚   └── Unit/               # Unit tests
└── πŸ“ storage/             # File storage & logs

πŸ”§ Key Features Implementation

Authentication System

  • Laravel Breeze integration for secure login/registration
  • Role-based access control (Student/Admin)
  • Profile management with academic information
  • Password reset and email verification

File Management

  • Secure file upload with validation
  • Support for PDF, DOCX, PPTX formats
  • File size optimization and storage
  • Download tracking and analytics

Search & Discovery

  • Advanced search with multiple filters
  • Subject-based categorization
  • Tag system for better organization
  • Popular and trending notes

Community Features

  • Upvoting system for quality content
  • Favorites and bookmarking
  • Comment system for discussions
  • Report system for content moderation

Admin Panel

  • Comprehensive dashboard with statistics
  • User management and role assignment
  • Content moderation tools
  • Report review and resolution system

πŸ§ͺ Testing & Quality Assurance

# Feature Testing
βœ… Authentication flows
βœ… Note CRUD operations  
βœ… File upload/download
βœ… User interactions
βœ… Admin functionality

# Code Quality
βœ… PSR-12 coding standards
βœ… Laravel best practices
βœ… Security implementations
βœ… Performance optimization

πŸš€ Deployment & DevOps

Production Considerations

  • Environment configuration for production
  • Database optimization and indexing
  • Asset compilation and optimization
  • Security headers and CORS setup
  • Error handling and logging

Scalability Features

  • Queue system for background processing
  • Caching strategies implementation
  • Database query optimization
  • File storage scaling options

πŸ“ˆ Performance Metrics

GitHub Streak
  • ⚑ Fast Loading Times - Optimized with Vite and efficient queries
  • πŸ“± Mobile Responsive - 100% mobile compatibility
  • πŸ”’ Security Score - A+ rating with proper authentication
  • 🎯 User Experience - Intuitive interface with high usability

🎯 Learning Outcomes & Skills Demonstrated

Technical Skills

  • ✨ Full-Stack Development - Complete application development cycle
  • πŸ—οΈ MVC Architecture - Clean code organization and separation of concerns
  • πŸ” Security Implementation - Authentication, authorization, and data protection
  • πŸ“Š Database Design - Efficient schema design with relationships
  • 🎨 Modern UI/UX - Contemporary design principles and user experience

Soft Skills

  • πŸ“‹ Project Management - From conception to deployment
  • πŸ§ͺ Problem Solving - Debugging and optimization techniques
  • πŸ“š Documentation - Comprehensive project documentation
  • πŸ”„ Version Control - Git workflow and collaboration practices

🀝 Contributing & Contact

I'm always open to feedback and collaboration opportunities! This project demonstrates my passion for creating meaningful educational tools and showcases my technical abilities in modern web development.

Get in Touch


πŸ“œ License & Acknowledgments

This project is built with Laravel framework and follows MIT license. Special thanks to the open-source community for the amazing tools and libraries that made this project possible.

Built with ❀️ by Sabilillah Ramaniya Widodo GitHub Trophies

This project represents my commitment to creating impactful educational technology solutions and demonstrates my readiness to contribute to innovative development teams.

License

The Laravel framework is open-sourced software licensed under the MIT license.

About

Platform berbasis web yang memungkinkan mahasiswa untuk berbagi, mencari, dan mengunduh catatan kuliah dengan mudah dan cepat.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages