-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Add professional blog app #943
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
kshitiz79
wants to merge
3
commits into
Ayushparikh-code:main
from
kshitiz79:add-professional-blog-app
Open
Changes from all commits
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Binary file modified
.DS_Store
Binary file not shown.
Binary file added
Blog Application/.DS_Store
Binary file not shown.
190 changes: 174 additions & 16 deletions
Blog Application/README.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,33 +1,191 @@ | ||
| # Blog Application | ||
| # Professional Blog Application | ||
|
|
||
| ## Description | ||
| Blog Application is an application where user can add a new blog, edit it, delete it as well as view other blogs and make changes in them. | ||
| 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. | ||
|
|
||
| Application uses LocalStorage, the localStorage object stores data with no expiration date. The data will not be deleted when the browser is closed, and will be available when the user comes again. | ||
| This enhanced version includes a modern UI design, improved functionality, and a better user experience, making it perfect for Hacktoberfest contributions. | ||
|
|
||
| ## Stacks Used | ||
| * HTML & CSS | ||
| * Bootstrap - A CSS Framework | ||
| * JavaScript -> LocalStorage | ||
| ## Features | ||
| - β¨ 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 | ||
|
|
||
| ## Technologies Used | ||
| - HTML5 | ||
| - CSS3 (with Flexbox and Grid) | ||
| - Bootstrap 5 | ||
| - JavaScript (ES6+) | ||
| - Font Awesome Icons | ||
| - LocalStorage API | ||
|
|
||
| ## Use of Project | ||
| This project is excellent for: | ||
| 1. Understanding the concept of LocalStorage and how it persists data | ||
| 2. Learning modern web development techniques | ||
| 3. Practicing JavaScript DOM manipulation | ||
| 4. Contributing to open-source during Hacktoberfest | ||
| 5. Building a portfolio project | ||
|
|
||
| ## How to Use | ||
|
|
||
| 1. Clone or download this repository | ||
| 2. Open `index.html` in your web browser | ||
| 3. Start creating blog posts by clicking the "New Article" button | ||
|
|
||
| ### Creating a Blog Post | ||
| 1. Click the "New Article" button in the navbar or on the main page | ||
| 2. 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) | ||
| 3. Click "Publish Article" | ||
|
|
||
| ### Editing a Blog Post | ||
| 1. Click the green edit button (pencil icon) on any blog card | ||
| 2. Edit the title, category, or content directly in the card | ||
| 3. Click the "Save Changes" button to save your changes | ||
|
|
||
| ### Deleting a Blog Post | ||
| 1. Click the red delete button (trash icon) on any blog card | ||
| 2. Confirm the deletion in the popup dialog | ||
|
|
||
| ### Viewing a Blog Post | ||
| 1. Click the "Read" button on any blog card | ||
| 2. View the full blog post in a modal window | ||
|
|
||
| ### Searching and Filtering | ||
| 1. Use the search box to find articles by title, content, or category | ||
| 2. Filter articles by category using the filter buttons | ||
| 3. Sort articles by newest, oldest, or title using the sort dropdown | ||
|
|
||
| ## Screenshots | ||
|
|
||
| ### Main Dashboard with Statistics | ||
|  | ||
|
|
||
| ### Create New Article Modal | ||
|  | ||
|
|
||
| ### Article Preview Modal | ||
|  | ||
|
|
||
| ### Article Management | ||
|  | ||
|
|
||
| ## Contributing to Hacktoberfest | ||
|
|
||
| This project is part of Hacktoberfest! We welcome contributions from the community. Here's how you can contribute: | ||
|
|
||
| ### Getting Started | ||
| 1. Fork this repository | ||
| 2. Clone your forked repository to your local machine | ||
| 3. Create a new branch for your feature or bug fix | ||
| 4. Make your changes | ||
| 5. Commit your changes with a descriptive commit message | ||
| 6. Push your changes to your forked repository | ||
| 7. Create a Pull Request to the main repository | ||
|
|
||
| ### Ideas for Contributions | ||
|
|
||
| We're looking for contributions in the following areas: | ||
|
|
||
| 1. **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 | ||
|
|
||
| 2. **UI/UX Improvements** | ||
| - Improve animations and transitions | ||
| - Add more visual feedback | ||
| - Enhance mobile responsiveness | ||
| - Add keyboard shortcuts | ||
| - Improve accessibility (ARIA labels, screen reader support) | ||
|
|
||
| 3. **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 | ||
|
|
||
| 4. **Code Quality** | ||
| - Refactor existing code for better performance | ||
| - Add more comprehensive error handling | ||
| - Improve code documentation | ||
| - Add unit tests | ||
| - Implement design patterns | ||
|
|
||
| 5. **Documentation** | ||
| - Improve this README file | ||
| - Add user guides | ||
| - Create setup instructions | ||
| - Add contribution guidelines | ||
| - Create API documentation | ||
|
|
||
| ### Contribution Guidelines | ||
|
|
||
| 1. Ensure your code follows the existing style and conventions | ||
| 2. Write clear, descriptive commit messages | ||
| 3. Test your changes thoroughly | ||
| 4. Update documentation if needed | ||
| 5. Be respectful and constructive in all interactions | ||
|
|
||
| ### Pull Request Process | ||
|
|
||
| 1. Ensure any install or build dependencies are removed before the end of the layer when doing a build | ||
| 2. Update the README.md with details of changes to the interface, if applicable | ||
| 3. Increase the version numbers in any examples files and the README.md to the new version that this Pull Request would represent | ||
| 4. Your Pull Request will be reviewed by maintainers, who may request changes before merging | ||
|
|
||
| ## Project Structure | ||
|
|
||
| To understand the concept of the localstorage, how localstorage persist the data, even the tab is closed or user refersh the page. | ||
| ``` | ||
| Blog Application/ | ||
| βββ index.html | ||
| βββ style.css | ||
| βββ script.js | ||
| βββ README.md | ||
| βββ Screenshots/ | ||
| βββ kshitizscreenshot/ | ||
| βββ dashboard.png | ||
| βββ create-article.png | ||
| βββ article-preview.png | ||
| βββ article-management.png | ||
| ``` | ||
|
|
||
| ## ScreenShot | ||
| ## License | ||
|
|
||
| <img src="https://github.com/khushi-purwar/Web-dev-mini-projects/blob/main/Blog%20Application/Screenshots/ss1.png?raw=true" /> | ||
| This project is open source and available under the [MIT License](LICENSE). | ||
|
|
||
| Click on the `Add New`, UI looks like: | ||
| ## Author | ||
|
|
||
| [Kshitiz Maurya](https://github.com/kshitizmaurya) | ||
|
|
||
| <img src="https://github.com/khushi-purwar/Web-dev-mini-projects/blob/main/Blog%20Application/Screenshots/ss2.png?raw=true" /> | ||
| ## Acknowledgements | ||
|
|
||
| Click on the `Open Blog`, UI looks like: | ||
| - [Bootstrap](https://getbootstrap.com/) for the CSS framework | ||
| - [Font Awesome](https://fontawesome.com/) for icons | ||
| - All contributors to this project | ||
|
|
||
| ## Support | ||
|
|
||
| <img src="https://github.com/khushi-purwar/Web-dev-mini-projects/blob/main/Blog%20Application/Screenshots/ss3.png?raw=true" /> | ||
| If you like this project, please give it a βοΈ on GitHub! | ||
|
|
||
| ## Live Demo | ||
| --- | ||
|
|
||
| <img src="https://github.com/khushi-purwar/Web-dev-mini-projects/blob/main/Blog%20Application/Screenshots/demo.gif?raw=true" /> | ||
| Made with β€οΈ for Hacktoberfest 2023 |
Binary file added
Blog Application/Screenshots/.DS_Store
Binary file not shown.
Binary file added
Blog Application/Screenshots/kshitizscreenshot/.DS_Store
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
[γγ¬γΌγ ]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
[γγ¬γΌγ ]
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.