TechSphere is an IT/Tech-related blogging website designed to deliver a seamless and engaging user experience for tech enthusiasts. Built with modern web technologies, it enables users to explore, post, and interact with blogs in a visually appealing and highly functional environment.
Visit TechSphere Server Side Live
- Fully responsive design for mobile, tablet, and desktop devices.
- Eye-catching UI/UX with proper alignment, spacing, and color contrast.
- Secure Firebase configuration and MongoDB credentials via environment variables.
-
Home Page
- Hero section and recent blogs display.
- Tips and newsletter sections for user engagement.
- Includes a "wishlist" functionality.
-
All Blogs Page
- View all blogs with category filters and a search field.
- "Details" and "Wishlist" options for each blog.
-
Blog Details Page
- Displays comprehensive blog information.
- Comment section for user interactions.
- Conditional comment and update options for blog authors.
-
Add Blog Page
- Form to submit blogs with fields for title, image URL, category, and descriptions.
-
Update Blog Page
- Private page for editing user-added blogs with pre-filled form fields.
-
Featured Blogs Page
- Displays top 10 blogs by word count in a sortable table using
Tanstack Table
.
- Displays top 10 blogs by word count in a sortable table using
-
Wishlist Page
- Users can view, manage, and remove wishlisted blogs.
- Email and password-based authentication.
- Google login as an alternative method.
- Secure JWT authentication for private routes.
- Skeleton loading states for data fetching.
- Full-screen photo preview for blog images.
- Animations powered by
Framer Motion
andReact Intersection Observer
.
- React
- Daisy UI (component library)
- Tailwind CSS (styling)
- Framer Motion (animations)
- Firebase (authentication and hosting)
- MongoDB (database)
- Node.js & Express.js (API)
- Firebase for the client-side.
- Vercel for the server-side.
-
Clone the repository:
git clone <repository-url> cd TechSphere
-
Install dependencies:
npm install
-
Set up environment variables:
- Add your Firebase and MongoDB credentials in a
.env
file.
- Add your Firebase and MongoDB credentials in a
-
Run the development server:
npm start
-
Navigate to
http://localhost:3000
in your browser.
- Ensure all environment variables are set correctly in production.
- Add the live domain to Firebase authorization.
- Test private routes and ensure no reload errors on navigation.