Professional Blog Application is a feature-rich web application where users can create, edit, delete, and view blog posts. The application uses LocalStorage to persist data, ensuring that blog posts remain available even after the browser is closed or the page is refreshed.
This enhanced version includes a modern UI design, improved functionality, and a better user experience, making it perfect for Hacktoberfest contributions.
- ✨ Modern, professional UI with blue/gray color scheme
- 📝 Create new blog posts with images, titles, categories, and content
- ✏️ Edit existing blog posts in-place
- 🗑️ Delete blog posts with confirmation
- 👁️ View full blog posts in a modal
- 💾 Data persistence using LocalStorage
- 📱 Fully responsive design for all devices
- 🔍 Search functionality
- 🎯 Category filtering
- 📊 Sorting options (newest, oldest, title)
- 📈 Statistics dashboard with 5 key metrics
- 🎉 Success notifications
- 🖼️ Fallback images for broken links
- 📋 Category management with dropdown and custom options
- HTML5
- CSS3 (with Flexbox and Grid)
- Bootstrap 5
- JavaScript (ES6+)
- Font Awesome Icons
- LocalStorage API
This project is excellent for:
- Understanding the concept of LocalStorage and how it persists data
- Learning modern web development techniques
- Practicing JavaScript DOM manipulation
- Contributing to open-source during Hacktoberfest
- Building a portfolio project
- Clone or download this repository
- Open
index.htmlin your web browser - Start creating blog posts by clicking the "New Article" button
- Click the "New Article" button in the navbar or on the main page
- Fill in the form with:
- Image URL (use a valid image URL)
- Blog Title
- Category (select from dropdown or enter custom)
- Content (your blog post content)
- Click "Publish Article"
- Click the green edit button (pencil icon) on any blog card
- Edit the title, category, or content directly in the card
- Click the "Save Changes" button to save your changes
- Click the red delete button (trash icon) on any blog card
- Confirm the deletion in the popup dialog
- Click the "Read" button on any blog card
- View the full blog post in a modal window
- Use the search box to find articles by title, content, or category
- Filter articles by category using the filter buttons
- Sort articles by newest, oldest, or title using the sort dropdown
This project is part of Hacktoberfest! We welcome contributions from the community. Here's how you can contribute:
- Fork this repository
- Clone your forked repository to your local machine
- Create a new branch for your feature or bug fix
- Make your changes
- Commit your changes with a descriptive commit message
- Push your changes to your forked repository
- Create a Pull Request to the main repository
We're looking for contributions in the following areas:
-
New Features
- Add search functionality
- Implement blog categories/tags
- Add a dark/light mode toggle
- Implement blog sharing capabilities
- Add blog post statistics (views, likes)
- Implement draft saving functionality
-
UI/UX Improvements
- Improve animations and transitions
- Add more visual feedback
- Enhance mobile responsiveness
- Add keyboard shortcuts
- Improve accessibility (ARIA labels, screen reader support)
-
Functionality Enhancements
- Add export/import functionality (PDF, Markdown)
- Implement blog post sorting options
- Add rich text editing for blog content
- Implement pagination for blog lists
- Add blog post filtering by category
-
Code Quality
- Refactor existing code for better performance
- Add more comprehensive error handling
- Improve code documentation
- Add unit tests
- Implement design patterns
-
Documentation
- Improve this README file
- Add user guides
- Create setup instructions
- Add contribution guidelines
- Create API documentation
- Ensure your code follows the existing style and conventions
- Write clear, descriptive commit messages
- Test your changes thoroughly
- Update documentation if needed
- Be respectful and constructive in all interactions
- Ensure any install or build dependencies are removed before the end of the layer when doing a build
- Update the README.md with details of changes to the interface, if applicable
- Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent
- Your Pull Request will be reviewed by maintainers, who may request changes before merging
Blog Application/
├── index.html
├── style.css
├── script.js
├── README.md
└── Screenshots/
└── kshitizscreenshot/
├── dashboard.png
├── create-article.png
├── article-preview.png
└── article-management.png
This project is open source and available under the MIT License.
- Bootstrap for the CSS framework
- Font Awesome for icons
- All contributors to this project
If you like this project, please give it a ⭐️ on GitHub!
Made with ❤️ for Hacktoberfest 2023



