{"id":24409472,"url":"https://github.com/brayanalmengor04/postify-backend","last_synced_at":"2026-04-09T10:00:17.434Z","repository":{"id":270609414,"uuid":"910900361","full_name":"brayanalmengor04/postify-backend","owner":"brayanalmengor04","description":"publishing system. System that allows the functionality of social network publications.","archived":false,"fork":false,"pushed_at":"2025-02-27T22:08:41.000Z","size":45,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T07:08:27.658Z","etag":null,"topics":["docker","docker-compose","dockerfile","java","spring-boot"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/brayanalmengor04.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2025-01-01T18:20:57.000Z","updated_at":"2025-02-27T22:08:44.000Z","dependencies_parsed_at":"2025-01-01T19:36:50.379Z","dependency_job_id":"de79483a-2bac-4a51-90a4-7d60eff9a07c","html_url":"https://github.com/brayanalmengor04/postify-backend","commit_stats":null,"previous_names":["brayanalmengor04/postify-backend"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brayanalmengor04%2Fpostify-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brayanalmengor04%2Fpostify-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brayanalmengor04%2Fpostify-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/brayanalmengor04%2Fpostify-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/brayanalmengor04","download_url":"https://codeload.github.com/brayanalmengor04/postify-backend/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243380405,"owners_count":20281765,"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":["docker","docker-compose","dockerfile","java","spring-boot"],"created_at":"2025-01-20T05:58:04.769Z","updated_at":"2025-12-26T09:35:58.839Z","avatar_url":"https://github.com/brayanalmengor04.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 Postify - Share \u0026 Connect\n\nWelcome to **Postify - Share \u0026 Connect**, an interactive web application where users can create posts, comment, and participate in raffles. Engage with others, customize your profile, and enjoy a seamless social experience. 💬🎉\n\n---\n\n## 📌 Features\n- ✍️ **Create \u0026 Share**: Post your thoughts and engage with others.\n- 💬 **Comments \u0026 Replies**: Interact with posts through comments and replies.\n- 🎟️ **Raffles \u0026 Rewards**: Participate in exciting raffles.\n- 🎨 **Customizable Profiles**: Personalize your experience.\n\n---\n\n## 📂 Project Structure\n```\n└── 📁src  \n    └── 📁main  \n        └── 📁java  \n            └── 📁com  \n                └── 📁brayanalmengor04  \n                    └── 📁postifyv1  // 📌 Main backend package  \n                        └── 📁config  // 🔒 Security and system configurations  \n                            └── SecurityConfig.java  \n                        └── 📁controller  // 🌐 Handles HTTP requests  \n                            └── AuthController.java  // Authentication  \n                            └── CommentController.java  // Comments management  \n                            └── ReplyController.java  // Replies management  \n                            └── RoleController.java  // Roles and permissions  \n                            └── UserController.java  // User operations  \n                        └── 📁dto  // 📌 Data transfer objects (DTOs)  \n                            └── CommentDTO.java  \n                            └── ReplyDTO.java  \n                            └── UserDTO.java  \n                        └── 📁entity  // 📌 Database entities  \n                            └── Comment.java  \n                            └── Reply.java  \n                            └── Role.java  \n                            └── User.java  \n                        └── 📁enums  // 🎭 Enum definitions  \n                            └── Permission.java  \n                        └── Postifyv1Application.java  // 🚀 Main Spring Boot application  \n                        └── 📁repository  // 🗄️ Database access interfaces  \n                            └── CommentRepository.java  \n                            └── ReplyRepository.java  \n                            └── RoleRepository.java  \n                            └── UserRepository.java  \n                        └── 📁security  // 🔐 Security implementations  \n                        └── 📁seeder  // 🌱 Initial database data  \n                            └── DatabaseSeeder.java  \n                        └── 📁service  // ⚙️ Business logic  \n                            └── CommentService.java  \n                            └── ICommentService.java  \n                            └── ImageService.java  \n                            └── IReplyService.java  \n                            └── IRoleService.java  \n                            └── IUserService.java  \n                            └── ReplyService.java  \n                            └── RoleService.java  \n                            └── UserService.java  \n                        └── 📁util  // 🔧 Utility functions  \n        └── 📁resources  // 📌 Configuration and static resources  \n            └── application.properties  // System settings  \n            └── logback-spring.xml  // Logging configuration  \n            └── 📁static  // Static assets (images, CSS, JS)  \n            └── 📁templates  // View templates  \n    └── 📁test  // ✅ Unit and integration tests  \n        └── 📁java  \n            └── 📁com  \n                └── 📁brayanalmengor04  \n                    └── 📁postifyv1  \n                        └── Postifyv1ApplicationTests.java  \n\n```\n\n---\n\n## ⚙️ Tech Stack\n| **Category**    | **Technologies**             |\n|----------------|-----------------------------|\n| **Frontend**   | React, TailwindCSS          |\n| **Backend**    | Spring Boot, REST API       |\n| **Database**   | MySQL 8.0.3                  |\n\n---\n\n## 🚀 Getting Started\n### 1️⃣ Clone the repositories\n```bash\ngit clone https://github.com/brayanalmengor04/postify-backend.git\ncd postify\n```\nFor the frontend, clone the repository:\n```bash\ngit clone https://github.com/brayanalmengor04/postify-frontend.git\n```\n\n### 2️⃣ Backend Setup\n```bash\ncd backend\nmvn spring-boot:run\n```\n\n### 3️⃣ Frontend Setup\n```bash\ncd frontend\nnpm install\nnpm run dev\n```\n---\n## 🖼️ Screenshots\n### 🔐 Login Page\n![Login Page](github/demo/login.jpg)  \n_Users can log in using their credentials to access the platform._\n\n### 📊 Dashboard\n![Dashboard](github/demo/dasboard.png)\n_Overview of user activities, including posts, comments, and interactions._\n\n### 💬 Comments Section\n![Comments](github/demo/comentarios.png)\n_Users can comment on posts and engage in discussions._\n\n### 🆕 New User Registration\n![New User](github/demo/newuser.png)\n_New users can sign up and create an account to start posting._\n\n---\n\n## 📜 API Endpoints\n### 🔐 Authentication\n| Method | Endpoint               | Description   |\n|--------|------------------------|---------------|\n| POST   | /auth/signin           | User login    |\n| POST   | /auth/signup           | User signup   |\n\n### 💬 Comments\n| Method | Endpoint              | Description          |\n|--------|----------------------|----------------------|\n| GET    | /comment             | Fetch all comments  |\n| POST   | /comment-add         | Create a comment    |\n| PUT    | /comment/{id}        | Update a comment    |\n| DELETE | /comment/{id}        | Delete a comment    | \n\n### 💬 Replies\n| Method | Endpoint             | Description           |\n|--------|----------------------|-----------------------|\n| GET    | /reply/all           | Fetch all replies     |\n| POST   | /reply/user          | Create a reply        |\n| GET    | /reply/user/{userId} | Fetch reply by userID |\n\n### 🛡️ Roles\n| Method | Endpoint             | Description       |\n|--------|----------------------|-------------------|\n| GET    | /role               | Get all roles    |\n| POST   | /role-add           | Add a new role   |\n| GET    | /role/{id}          | Get role by ID   |\n| PUT    | /role/{id}          | Update a role    |\n| DELETE | /role/{id}          | Delete a role    |\n\n---\n## 💡 Contributing\nWe welcome contributions to make **Postify** more efficient, clean, and maintainable! 🚀\n\n### 🛠️ How You Can Help\nWe aim for a **clean code** approach, prioritizing readability, simplicity, and performance. Contributions can include:\n\n- **Refactoring code** to enhance clarity and maintainability.\n- **Optimizing database queries** for better performance.\n- **Improving API efficiency** to reduce response times.\n- **Enhancing security** by following best practices.\n- **Writing comprehensive tests** to ensure stability.\n\n### 📝 Contribution Guidelines\n1. **Fork** the repository 🍴\n2. **Create a feature branch** (`git checkout -b improve-backend`) 🌱\n3. **Follow best practices** (SOLID principles, DRY, KISS) 📜\n4. **Document your changes** clearly in the code 💡\n5. **Commit changes** (`git commit -m 'Optimized backend query handling'`) 💾\n6. **Push to branch** (`git push origin improve-backend`) 🚀\n7. **Submit a Pull Request** with a clear explanation 📩\n\nWe encourage meaningful discussions and improvements. Let’s build a scalable and efficient platform together! 🔥\n---\n## 📜 License\nThis project is licensed under the **MIT License**. See the [LICENSE](LICENSE) file for details.\n\n---\n\n**🚀 Join us and start sharing today! Let’s build something amazing together! 🔥**\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrayanalmengor04%2Fpostify-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbrayanalmengor04%2Fpostify-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbrayanalmengor04%2Fpostify-backend/lists"}