View Demo · Report Bug · Request Feature
WebsTree - A modern, full-stack web application built with Nuxt 3, featuring a powerful content management system and dynamic theming capabilities.
-
🎨 Dynamic Theming System
- Customizable color schemes and layouts
- Real-time theme preview
- Dark/Light mode support
-
🚀 Modern Tech Stack
- Built with Nuxt 3 and Vue.js
- TypeScript for type safety
- Tailwind CSS for styling
-
📱 Responsive Design
- Mobile-first approach
- Cross-browser compatibility
- Optimized for all screen sizes
-
🔒 Security & Performance
- Built-in security features
- SEO optimized
- Fast loading times
-
🎨 Dynamic Theme Management
-
📱 Fully Responsive Design
-
🔐 Secure Authentication System
-
📧 Email Integration
-
📁 File Management System
-
🖼️ Image Processing
-
🎥 Video Processing
-
📊 Admin Dashboard
-
🔄 Real-time Updates
-
🌐 SEO Optimized
- Frontend Framework: Nuxt 3
- UI Components: @nuxt/ui-pro
- Styling: Tailwind CSS
- Database: MongoDB (via nuxt-mongoose)
- Email Service: Nodemailer
- File Processing:
- Sharp (Image processing)
- Fluent-ffmpeg (Video processing)
- Authentication: JWT & Bcrypt
- Animations: VueUse Motion & Animate.css
- Icons: Iconify
- Node.js (v18 or higher)
- PNPM Package Manager
- MongoDB Database
- FFmpeg (for video processing)
# Clone the repository
git clone https://github.com/hadsizefendi/webstree.git
# Navigate to project directory
cd webstree
# Install dependencies
pnpm install
# Start development server
pnpm dev-
Clone the repository
git clone https://github.com/hadsizefendi/webstree.git cd webstree -
Install dependencies
pnpm install
-
Configure environment variables Create a
.envfile in the root directory and add necessary environment variables:MONGODB_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret MAIL_TO=your_email MAIL_HOST=your_smtp_host MAIL_USERNAME=your_smtp_user MAIL_PASSWORD=your_smtp_password FILE_STORAGE_PATH=path/to/file/storage
-
Run development server
pnpm dev
-
Build for production (Need Nuxt UI Pro License)
pnpm build
webstree/
├── app/
│ ├── components/ # Reusable Vue components
│ ├── pages/ # Application pages
│ ├── plugins/ # Nuxt plugins
│ └── public/ # Static assets
├── server/ # Server-side code
├── stores/ # Pinia stores
└── content/ # Markdown content
The project uses several configuration files:
nuxt.config.ts- Nuxt configurationtailwind.config.ts- Tailwind CSS configurationapp.config.ts- Application-specific configuration
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Ahmet Hamdi Arslan - Initial work
Thanks to God for everything. And special thanks to:
- Nuxt Team for the amazing framework
- Vue.js Team for the incredible Vue.js framework
- Tailwind CSS for the utility-first CSS framework
- MongoDB Team for the powerful database solution
⭐️ If you like this project, please give it a star on GitHub!
