This project is a modern, responsive front-end application for a personal blog, built with Angular 18.1.4. It provides a user-friendly interface for creating, viewing, and interacting with blog posts.
- View all blog posts
- Create new blog posts
- Search posts by title
- View individual post details
- Like posts
- Comment on posts
- Responsive design for mobile and desktop
- Angular 18.1.4
- Angular Material
- RxJS
- TypeScript
- Node.js (LTS version recommended)
- npm (comes with Node.js)
- Clone the repository:
git clone https://github.com/your-username/personal-blog-front.git - Navigate to the project directory:
cd personal-blog-front - Install dependencies:
npm install
Run ng serve for a dev server. Navigate to http://localhost:4200/. The application will automatically reload if you change any of the source files.
Run ng build to build the project. The build artifacts will be stored in the dist/ directory.
Run ng test to execute the unit tests via Karma.
Run ng e2e to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.
src/app/components: Contains all Angular componentssrc/app/services: Contains services for API communicationsrc/app/modules: Contains custom Angular modulessrc/app/pipes: Contains custom pipes
CreatePostComponent: Allows users to create new blog postsViewAllPostComponent: Displays a list of all blog postsViewPostComponent: Shows details of a single blog postSearchPostComponent: Enables users to search for posts by title
PostService: Handles all API calls related to blog postsCommentService: Manages API calls for post comments
The project uses Angular Material for UI components and custom SCSS for additional styling. The global styles can be found in src/styles.scss.
Contributions are welcome! Please feel free to submit a Pull Request.
To get more help on the Angular CLI use ng help or go check out the Angular CLI Overview and Command Reference page.
This project is licensed under the MIT License - see the LICENSE.md file for details.