{"id":24586774,"url":"https://github.com/herikerbeth/personal-blogging-platform-api","last_synced_at":"2025-03-17T19:15:39.695Z","repository":{"id":252137932,"uuid":"839503362","full_name":"herikerbeth/personal-blogging-platform-API","owner":"herikerbeth","description":"This is a RESTful API for a personal blogging platform. It allows users to create, read, update, and delete blog posts. The API is built with Java and Spring Boot to create the server, Spring HATEOAS to write hypermedia-driven outputs, and uses PostgreSQL for data storage.","archived":false,"fork":false,"pushed_at":"2024-09-02T18:50:50.000Z","size":116,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-24T06:14:22.840Z","etag":null,"topics":["api","backend","java","java-spring","junit","unit-testing"],"latest_commit_sha":null,"homepage":"https://personal-blogging-platform-api.up.railway.app/swagger-ui/index.html","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/herikerbeth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-07T18:36:43.000Z","updated_at":"2024-09-10T14:58:07.000Z","dependencies_parsed_at":"2024-08-07T23:40:40.198Z","dependency_job_id":"2157bc8b-731d-4a35-9833-5eeaeba7ca73","html_url":"https://github.com/herikerbeth/personal-blogging-platform-API","commit_stats":null,"previous_names":["herikerbeth/personal-blogging-platform-api"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herikerbeth%2Fpersonal-blogging-platform-API","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herikerbeth%2Fpersonal-blogging-platform-API/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herikerbeth%2Fpersonal-blogging-platform-API/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/herikerbeth%2Fpersonal-blogging-platform-API/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/herikerbeth","download_url":"https://codeload.github.com/herikerbeth/personal-blogging-platform-API/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244094276,"owners_count":20397020,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","backend","java","java-spring","junit","unit-testing"],"created_at":"2025-01-24T06:14:24.597Z","updated_at":"2025-03-17T19:15:39.660Z","avatar_url":"https://github.com/herikerbeth.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Personal Blogging Platform API \n[![NPM](https://img.shields.io/npm/l/react)](https://github.com/herikerbeth/personal-blogging-platform-API/blob/edit-readme/LICENSE) \n\nThis is a RESTful API for a personal blogging platform. It allows users to create, read, update, and delete blog posts. The API is built with Java and Spring Boot to create the server, Spring HATEOAS to write hypermedia-driven outputs, and uses PostgreSQL for data storage. Additionally, the API now supports filtering blog posts by publication date and tag name.\n\n## API Documentation\nFor detailed API documentation, please visit the [Swagger UI](https://personal-blogging-platform-api.up.railway.app/swagger-ui/index.html).\n\n# 💻 Technologies\n## Backend\n- Java\n- Spring Boot\n- Spring Data JPA\n- Spring HATEOAS\n- Maven\n- Lombok\n## Testing\n- JUnit\n- Mockito\n## Production Deployment\n- Backend: Railway\n- Database: PostgreSQL\n## Documentation\n- Swagger UI\n\n# 🚀 Getting started\n\nWhat You Need:\n- Java 17 or later\n- PostgreSQL\n\n## Installing the project\n\nFirst you must clone the repository.\n```bash\n# clone repository\n$ git clone https://github.com/herikerbeth/personal-blogging-platform-API.git\n\n# enter the project folder\n$ cd personal-blogging-platform-API\n```\nNow, inside IntelliJ, we will install the dependencies with Maven\n\n\u003cimg width=\"300px\" src=\"https://github.com/herikerbeth/assets/blob/main/install-dependencies.png?raw=true\"\u003e\n\n## Configuring Database Credentials\nIn the `/src/main/resources/` directory, open `application.properties` and replace the placeholders with your PostgreSQL database details (host, port, database name, user, and password):\n```properties\n${PGHOST}=your database host\n${PGPORT}=your database port\n${POSTGRES_DB}=your database name\n${POSTGRES_USER}=your database user\n${POSTGRES_PASSWORD}=your database password\n```\n## Starting\nFinally, navigate to the Application class file to run the project.\n\n\u003cimg width=\"300px\" src=\"https://github.com/herikerbeth/assets/blob/main/run-application.png?raw=true\"\u003e\n\n\n## Test the Service\nNow that the service is up, visit Swagger UI to explore the API documentation.\nhttp://localhost:8080/swagger-ui/index.html\n\n# Author\n\nHerik Erbeth\n\nhttps://www.linkedin.com/in/herik-erbeth\n\n## Contributing\nContributions are welcome! Please fork the repository and submit a pull request.\n\n1. Fork the repository\n2. Create a new branch (`git checkout -b feature/your-feature`)\n3. Commit your changes (`git commit -m 'Add some feature'`)\n4. Push to the branch (`git push origin feature/your-feature`)\n5. Open a pull request\n\n## License\nThis project is licensed under the MIT License - see the [LICENSE](https://github.com/herikerbeth/personal-blogging-platform-API/blob/edit-readme/LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherikerbeth%2Fpersonal-blogging-platform-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fherikerbeth%2Fpersonal-blogging-platform-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fherikerbeth%2Fpersonal-blogging-platform-api/lists"}