{"id":27598072,"url":"https://github.com/akuniutka/bookmark-it-vanilla-spring","last_synced_at":"2026-05-01T04:40:43.239Z","repository":{"id":288920865,"uuid":"969515765","full_name":"akuniutka/bookmark-it-vanilla-spring","owner":"akuniutka","description":"Backend for bookmarks keeping service (vanilla Spring Framework)","archived":false,"fork":false,"pushed_at":"2025-04-20T12:52:41.000Z","size":13,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-20T13:37:34.475Z","etag":null,"topics":["java","rest","spring"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/akuniutka.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,"zenodo":null}},"created_at":"2025-04-20T10:27:06.000Z","updated_at":"2025-04-20T12:58:21.000Z","dependencies_parsed_at":"2025-04-20T13:53:03.018Z","dependency_job_id":null,"html_url":"https://github.com/akuniutka/bookmark-it-vanilla-spring","commit_stats":null,"previous_names":["akuniutka/bookmark-it-vanilla-spring"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akuniutka%2Fbookmark-it-vanilla-spring","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akuniutka%2Fbookmark-it-vanilla-spring/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akuniutka%2Fbookmark-it-vanilla-spring/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akuniutka%2Fbookmark-it-vanilla-spring/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akuniutka","download_url":"https://codeload.github.com/akuniutka/bookmark-it-vanilla-spring/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250255700,"owners_count":21400410,"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":["java","rest","spring"],"created_at":"2025-04-22T14:10:29.577Z","updated_at":"2026-05-01T04:40:43.234Z","avatar_url":"https://github.com/akuniutka.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bookmark It (vanilla Spring version)\n\nHere I am building the backend for a bookmarks keeping service. This \nservice users will be able to save and manage links to anything they \nlike on the internet: sites, images, video. The backend is implemented \nusing vanilla Spring Framework, therefore, developers may compare it to \nservices built on Spring Boot. Based on my student project at Yandex \nPracticum.\n\n## Table of Contents\n\n1. [About service](#about-service)\n2. [API Specification](#api-specification)\n3. [System Requirements](#system-requirements) \n4. [Building Project](#building-project)\n5. [Testing with Postman](#testing-with-postman)\n6. [Running with docker-compose](#running-with-docker-compose)\n7. [What's Next](#whats-next)\n8. [Contacts](#contacts)\n9. [License](#license)\n\n## About Service\n\nIf it sometimes happens that you need to save a some idea, a link to \na post, a picture while browsing the internet, this service will help \nyou to do so. Registered users may save links to different media, they \nmeet: articles, posts, images, video. Also, users may add their own \ntags to these links and then filter links by tags.\n\nNow the backend supports managing of users: registering, listing, \ndeactivating, deleting. Support for operations with links will follow.  \n\nStack used:\n- Java 21\n- Spring Framework\n- Hibernate\n- PostgreSQL\n- REST API\n- Docker\n- Postman\n- Maven\n\n## API Specification\n\nOpenAPI specification for the backend is available in \n[bookmark-it-api-spec.json](bookmark-it-api-spec.json).\n\n## System Requirements\n\nTo build and run the project you need:\n- JDK (version 21 or later)\n- Docker (28.0.4 or later)\n\n## Building project\n\nTo build the project:\n```bash\n./mvnw clean package\n```\n\nTo run tests:\n```bash\n./mvnw verify -P check,coverage\n```\n\nTo build a Docker image for the backend:\n```bash\n./mvnw clean package \u0026\u0026 docker build . -t bookmark-it\n```\n\n## Testing with Postman\n\nProject also contains API tests for [Postman](https://www.postman.com/) \nin [postman/bookmark-it-backend.json](postman/bookmark-it-backend.json).\n\n## Running with docker-compose\n\nTo run the [Docker image](#building-project) using `docker-compose`:\n```bash\ndocker-compose up -d \n```\nThe backend will be available at port `8080`.\n\nTo stop:\n```bash\ndocker-compose down\n```\n\n## What's Next\n\nThe next step is to add support for operations with links and tags.\n\n## Contacts\n\nHave you any ideas or comments to share, contact me via email\n[akuniutka@gmail.com](mailto:akuniutka@gmail.com), Telegram\n[@akuniutka](https://t.me/akuniutka), or just leave an \n[issue](https://github.com/akuniutka/bookmark-it-vanilla-spring/issues).\n\n## License\n\nThis project is released under version 2.0 of \n[Apache License](https://www.apache.org/licenses/LICENSE-2.0)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakuniutka%2Fbookmark-it-vanilla-spring","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakuniutka%2Fbookmark-it-vanilla-spring","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakuniutka%2Fbookmark-it-vanilla-spring/lists"}