{"id":13397173,"url":"https://github.com/SoftInstigate/restheart","last_synced_at":"2025-03-13T23:32:14.268Z","repository":{"id":23361591,"uuid":"26722690","full_name":"SoftInstigate/restheart","owner":"SoftInstigate","description":"Open Source Low-code API development framework Featuring ready-to-go Security and MongoDB API","archived":false,"fork":false,"pushed_at":"2024-05-21T18:27:11.000Z","size":42808,"stargazers_count":791,"open_issues_count":11,"forks_count":170,"subscribers_count":45,"default_branch":"master","last_synced_at":"2024-05-22T11:01:23.031Z","etag":null,"topics":["data-persistence","database","docker","framework","graphql","java","microservice","microservices","mongodb","nosql","rest","rest-api","restheart","webservice","websockets"],"latest_commit_sha":null,"homepage":"http://softinstigate.github.io/restheart/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SoftInstigate.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"security/LICENSE.txt","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["SoftInstigate"]}},"created_at":"2014-11-16T18:01:01.000Z","updated_at":"2024-06-06T11:29:33.666Z","dependencies_parsed_at":"2023-11-13T13:41:44.979Z","dependency_job_id":"9eb73f6e-bda8-41d0-8a8c-3e43d6e47b69","html_url":"https://github.com/SoftInstigate/restheart","commit_stats":{"total_commits":4241,"total_committers":41,"mean_commits":103.4390243902439,"dds":0.365008252770573,"last_synced_commit":"06638ecd59118dcbb8055ceb967dc3bb81bd5d67"},"previous_names":[],"tags_count":233,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SoftInstigate%2Frestheart","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SoftInstigate%2Frestheart/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SoftInstigate%2Frestheart/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SoftInstigate%2Frestheart/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SoftInstigate","download_url":"https://codeload.github.com/SoftInstigate/restheart/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242895020,"owners_count":20203091,"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":["data-persistence","database","docker","framework","graphql","java","microservice","microservices","mongodb","nosql","rest","rest-api","restheart","webservice","websockets"],"created_at":"2024-07-30T18:01:12.127Z","updated_at":"2025-03-13T23:32:14.254Z","avatar_url":"https://github.com/SoftInstigate.png","language":"Java","readme":"# RESTHeart\n\nRESTHeart is a __Java__ backend framework that facilitates the rapid development of __REST__, __GraphQL__, and __WebSocket__ APIs, leveraging __MongoDB__ for data storage.\n\n[![GitHub last commit](https://img.shields.io/github/last-commit/softinstigate/restheart)](https://github.com/SoftInstigate/restheart/commits/master)\n[![Build snapshot release](https://github.com/SoftInstigate/restheart/actions/workflows/branch.yml/badge.svg)](https://github.com/SoftInstigate/restheart/actions/workflows/branch.yml)\n[![Github stars](https://img.shields.io/github/stars/SoftInstigate/restheart?label=Github%20Stars)](https://github.com/SoftInstigate/restheart)\n[![Maven Central Version](https://img.shields.io/maven-central/v/org.restheart/restheart)](https://central.sonatype.com/namespace/org.restheart)\n[![Docker Pulls](https://img.shields.io/docker/pulls/softinstigate/restheart.svg?maxAge=2592000)](https://hub.docker.com/r/softinstigate/restheart/)\n[![Join the chat on Slack](https://img.shields.io/badge/chat-on%20slack-orange)](https://join.slack.com/t/restheart/shared_invite/zt-1olrhtoq8-5DdYLBWYDonFGEALhmgSXQ)\n\n### Who Benefits from RESTHeart?\n\nRESTHeart is designed for:\n- __Developers__ seeking a low-code solution to build scalable, secure, and high-performance APIs.\n- __Teams__ aiming to reduce development time and complexity when working with MongoDB.\n- __Businesses__ looking for a reliable and efficient way to expose data through REST or GraphQL APIs.\n\n---\n\n### ⚠ NEWS\n\nMongoDB has [officially announced](https://www.mongodb.com/docs/atlas/app-services/data-api/data-api-deprecation/) the **deprecation of the Atlas Data API and HTTPS Endpoints** for Atlas App Services, with complete removal scheduled for September 30, 2025. If your applications rely on these features, [RESTHeart is an alternative solutions](https://www.softinstigate.com/en/blog/posts/mongodb-deprecates-data-api/) to ensure uninterrupted service.\n\n---\n\n## Key Features\n\n✅ **Low-Code Development**: Create APIs with minimal coding effort.  \n✅ **Seamless MongoDB Integration**: Instantly expose your MongoDB collections via REST, GraphQL, and WebSocket APIs.  \n✅ **Built-in Security**: Provides declarative authentication and authorization mechanisms.  \n✅ **High Performance**: Utilizes Java 21 Virtual Threads for efficient concurrency.  \n✅ **Customizable**: Flexible architecture that adapts to your specific needs.  \n\n## Compatible Databases\n\n- [MongoDB](https://www.mongodb.com/)\n- [MongoDB Atlas Cloud Database](https://www.mongodb.com/products/platform/atlas-database)\n- [Percona Server for MongoDB](https://www.percona.com/mongodb/software/percona-server-for-mongodb)\n- [FerretDB](https://www.ferretdb.com/) (*)\n- [Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/what-is.html) (*)\n- [Microsoft Azure CosmosDB](https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/) (*)\n\n\u003e (*) Might be partially compatibile with MongoDB.\n\n## Default Configuration\n\n- The [default configuration](https://restheart.org/docs/default-configuration) connects to a local MongoDB instance using the connection string `mongodb://127.0.0.1`.  \n- To prevent unintentional exposure of all your data, the API root (`\"/\"`) is, by default, mapped to a database named `\"restheart\"`. If you want to expose existing databases and collections through the API, you must [update your configuration](https://restheart.org/docs/configuration) by replacing the default admin password and explicitly mapping your own databases to API endpoints.\n\n## Ask Sophia AI!\n\nBefore digging the [full documentation](https://restheart.org/docs/), our AI assistant [Sophia](https://sophia.restheart.com/) can quickly help you with any question about RESTHeart. \n\n## Quick Start with Docker Compose\n\n1. Run both RESTHeart and MongoDB with Docker Compose using the following one-liner:\n\n```sh\ncurl https://raw.githubusercontent.com/SoftInstigate/restheart/master/docker-compose.yml \\\n  --output docker-compose.yml \\\n  \u0026\u0026 docker compose up --pull=always --attach restheart\n```\n\n1. Call RESTHeart's ping service with [curl](https://curl.se/) to verify it's running:\n\n```sh\ncurl -i localhost:8080/ping\n\nHTTP/1.1 200 OK\nConnection: keep-alive\nAccess-Control-Allow-Origin: *\nX-Powered-By: restheart.org\nAccess-Control-Allow-Credentials: true\nAccess-Control-Expose-Headers: Location, ETag, Auth-Token, Auth-Token-Valid-Until, Auth-Token-Location, X-Powered-By\nContent-Type: text/plain\nContent-Length: 25\nDate: Wed, 07 Aug 2024 10:48:23 GMT\n\nGreetings from RESTHeart!\n```\n\n## Running Without Docker\n\n1. Download a pre-built binary of RESTHeart from the [Releases](https://github.com/SoftInstigate/restheart/releases) page.\n2. Uncompress the `restheart.tar.gz` or `restheart.zip` archive\n3. `cd restheart`\n4. Start MongoDB on `localhost:27017` and then run RESTHeart with its default configuration:\n   \n```sh\njava -jar restheart.jar\n```\n\n\u003e To connect to a MongoDB server running in a remote host, you can quickly [modify the configuration with the RHO env var](https://restheart.org/docs/configuration#modify-the-configuration-with-the-rho-env-var).\n\n## Build from Source\n\nTo build from source or to run the integration tests suite look at [BUILD.md](BUILD.md).\n\n## Documentation\n\nThe full documentation is available on [restheart.org/docs](https://restheart.org/docs/).\n\nTo explore the APIs, start with:\n- [The REST Data API Tutorial](https://restheart.org/docs/mongodb-rest/tutorial)\n- [The GraphQL Data API Tutorial](https://restheart.org/docs/mongodb-graphql/tutorial)\n\n## Community Support\n\n- Open an [issue on GitHub](https://github.com/SoftInstigate/restheart/issues/new) to report a specific problem.\n- Ask technical questions on [Stack Overflow](https://stackoverflow.com/questions/ask?tags=restheart).\n- Chat with other users on [Slack](https://join.slack.com/t/restheart/shared_invite/zt-1olrhtoq8-5DdYLBWYDonFGEALhmgSXQ).\n- Book a [free 1-to-1 demo](https://calendly.com/restheart) with us.\n\n## Sponsors\n\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"middle\"\u003e\n        \u003ca href=\"https://www.softinstigate.com\" target=\"_blank\"\u003e\n          \u003cimg width=\"222px\" src=\"https://www.softinstigate.com/images/logo.png\"\u003e\n        \u003c/a\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\nIf you enjoy using this open-source project, you can support the development of RESTHeart via the [GitHub Sponsor program](https://github.com/sponsors/SoftInstigate).\n\n---\n\n_Made with :heart: by [SoftInstigate](https://www.softinstigate.com). Follow us on [Twitter](https://twitter.com/softinstigate)_.\n","funding_links":["https://github.com/sponsors/SoftInstigate"],"categories":["Java","数据库、分布存储相关","开发框架"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSoftInstigate%2Frestheart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSoftInstigate%2Frestheart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSoftInstigate%2Frestheart/lists"}