{"id":49453673,"url":"https://github.com/oslabs-beta/Atlantis","last_synced_at":"2026-06-02T05:00:46.712Z","repository":{"id":48954754,"uuid":"370753672","full_name":"oslabs-beta/Atlantis","owner":"oslabs-beta","description":"Lightweight server-side caching solution for GraphQL.","archived":false,"fork":false,"pushed_at":"2021-08-13T03:54:22.000Z","size":67864,"stargazers_count":65,"open_issues_count":0,"forks_count":10,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-12-26T00:37:24.107Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/oslabs-beta.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}},"created_at":"2021-05-25T16:09:18.000Z","updated_at":"2024-08-03T02:10:53.000Z","dependencies_parsed_at":"2022-09-02T03:22:18.127Z","dependency_job_id":null,"html_url":"https://github.com/oslabs-beta/Atlantis","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/oslabs-beta/Atlantis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FAtlantis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FAtlantis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FAtlantis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FAtlantis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oslabs-beta","download_url":"https://codeload.github.com/oslabs-beta/Atlantis/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oslabs-beta%2FAtlantis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33806987,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-02T02:00:07.132Z","response_time":109,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-04-30T04:01:03.703Z","updated_at":"2026-06-02T05:00:46.706Z","avatar_url":"https://github.com/oslabs-beta.png","language":"JavaScript","funding_links":[],"categories":["📦 Legacy \u0026 Inactive Projects"],"sub_categories":[],"readme":"\u003cdiv  align=\"center\"\u003e\n\n\u003cimg src=\"https://github.com/oslabs-beta/Atlantis/blob/master/Readme_banner.png\" width=\"800px\" align=\"center\"/\u003e\n\n  \u003ch1\u003eAtlantis-Cache\u003c/h1\u003e\n\n  \u003cp\u003eLight-weight server-side caching solution for GraphQL.\u003c/p\u003e\n\u003ca href=\"https://github.com/oslabs-beta/Atlantis/blob/main/LICENSE\"\u003e\u003cimg alt=\"GitHub license\" src=\"https://img.shields.io/github/license/oslabs-beta/Atlantis\"\u003e\u003c/a\u003e\n \u003ca href=\"https://www.npmjs.com/package/atlantis-cache\"\u003e \u003cimg alt=\"npm\" src=\"https://img.shields.io/npm/v/atlantis-cache\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/oslabs-beta/Atlantis/issues\"\u003e\u003cimg alt=\"GitHub issues\" src=\"https://img.shields.io/github/issues/oslabs-beta/Atlantis\"\u003e\u003c/a\u003e\n\n\u003c/div\u003e\n\n\n## About\n\nAtlantis is a light-weight library that solves the issue of storing and maintaining deeply-nested GraphQL queries. This ensures the client always receives the most relevant data as mutations are made to the database.\nAtlantis leverages Redis’s ‘in-memory’ quick lookup time to rapidly serve up cached graphQL responses regardless of size or structure.Redis integration along with Pub/Sub architecture also allows for scaling as your needs grow and you require more cache space or backup cache workers. New queries that bare resemblance to previous queries, are intelligently pulled from the existing cached nesting instead of creating a new key/value entry.\n\nThis package is meant to work in conjunction with Redis. For more information about Redis: check out: \u003ca href =\"https://redis.io/\"\u003eRedis\u003c/a\u003e\n\n  \u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;\u0026nbsp;![atlantis_demo](https://user-images.githubusercontent.com/36866275/122622799-79457e00-d05f-11eb-9d00-564df61f9289.gif)\n\n\n## Getting Started\n\n### 1. Installing and Connecting to a Redis Server\n\n- Mac-HomeBrew:\n\n  - At the terminal, `brew install redis`\n  - Start redis server with `redis-server`\n  - Test if redis server is running: `redis-cli ping`. If it replies “PONG”, then it’s good to go!\n  - Default port is `6379` (Keep note of the port)\n\n- Linux or non-Homebrew:\n  - Download appropriate version of Redis from [redis.io/download](redis.io/download)\n  - Follow the instructions\n  - Once installation is completed, start redis server with `redis-server`\n  - Default port is `6379` (Keep note of the port)\n\n### 2. Installing Atlantis-Cache\n\nInstall Atlantis-Cache as an npm module and save it to your package.json as a dependency.\n\n`npm i atlantis-cache`\n\n## How to Use Atlantis-Cache\n\n```js\nconst express = require('express');\nconst redis = require('redis');\nconst { graphql } = require('graphql');\nconst schema = require('./schema/schema');\nconst { atlantis } = require('atlantis-cache');\n\nconst app = express();\n\n// Configure your redis client\nconst redisClient = redis.createClient({\n  host: 'localhost',\n  port: 6379,\n});\n\n// Define your endpoint for graphQL queries and pass in your redis, and schema\napp.use('/graphql', atlantis(redisClient, schema), async (req, res) =\u003e {\n  return res.status(202).json({ data: res.locals.graphQLResponse });\n});\n```\n\n## Contributors:\n\n- Coral Fussman - [Github](https://github.com/coralfussman) | [Linkedin](https://www.linkedin.com/in/coral-fussman-21721538/)\n- Sett Hein -[Github](https://github.com/settnaing199) | [Linkedin](https://www.linkedin.com/in/sett-hein/)\n- Erik Matevosyan - [Github](https://github.com/erik-matevosyan) | [Linkedin](https://www.linkedin.com/in/erik-matevosyan/)\n- Erik Rogel - [Github](https://github.com/erikjrogel) | [Linkedin](https://www.linkedin.com/in/erikjrogel/)\n\n## License\n\nThis product is licensed under the MIT License - see the LICENSE.md file for details.‌\n\nThis product is accelerated by OS Labs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foslabs-beta%2FAtlantis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foslabs-beta%2FAtlantis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foslabs-beta%2FAtlantis/lists"}