GithubHelp home page GithubHelp logo

clarencepenz / ably-docs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ably/docs

0.0 0.0 0.0 201.83 MB

Ably Realtime API documentation

Home Page: https://ably.com/docs

License: Apache License 2.0

Shell 0.46% JavaScript 19.00% TypeScript 76.98% CSS 1.77% HTML 1.25% Procfile 0.01% MDX 0.54%

ably-docs's Introduction

Ably Documentation

Ably is the platform that powers synchronized digital experiences in realtime. Whether attending an event in a virtual venue, receiving realtime financial information, or monitoring live car performance data – consumers simply expect realtime digital experiences as standard. Ably provides a suite of APIs to build, extend, and deliver powerful digital experiences in realtime for more than 250 million devices across 80 countries each month. Organizations like Bloomberg, HubSpot, Verizon, and Hopin depend on Ably’s platform to offload the growing complexity of business-critical realtime data synchronization at global scale.

New Toolchain: Gatsby Documentation Repository

This is a static site generated using Gatsby and documentation written in:

Run

Install node & npm.

If you use ASDF or compatible tooling to manage your Ruby runtime versions, we have included a .tool-versions file. Note that if you brew installed your asdf installation instead of git cloneing it, npm may not be installed correctly.

npm i

If Gatsby CLI is not already installed:

npm install -g gatsby-cli

Environment variables setup

If you have not yet set up your local .env.development environment variables, run:

npm run develop:env-setup

Editors:

npm run edit

Developers:

To develop locally run:

npm run develop

Visit localhost:8000 for homepage.

Visit localhost:8000/docs/${relativePath} for documentation pages, e.g. localhost:8000/docs/client-lib-development-guide/documentation-formatting-guide.

To build and serve locally:

npm run rebuild

Visit localhost:8000 for homepage.

Redirects

Redirects are currently implemented using Gatsby's in-built redirect functionality.

To set up a redirect, add the following to the frontmatter of the page that you want to be the destination of the redirect:

redirect_from:
  - /redirect-from-this-path/

You can also add a single redirect, however while this is supported it is not the principal way to add redirects; adding a YAML array, as shown above, is the most stable and predictable way to add a redirect.

redirect_from: /redirect-from-this-single-path/

If a redirect is not already prepended with /docs, /docs will be prepended to the redirect source URL; if you need a redirect from the main website to a docs page, Gatsby currently cannot handle this.

Otherwise, the redirect will be left intact.

Redirects added in this way are also added to a file at ./config/nginx-redirects.conf, and used to create a map of nginx redirects at build time.

Other one-off instances of redirects may be added to additional config files, and imported in a similar way. See:

  • ./config/website-redirects.conf
  • ./config/client-lib-development-guide-redirects.conf
  • ./config/nginx.conf.erb

For how to create and include these redirects.

Environment Variables

Note that any env variables needed to show in the browser must be prefixed with GATSBY_ in order to appear.

  • GATSBY_DOCS_SIGNED_IN - set to any string to force APIKeyMenuSelector & MultilineCodeContent to behave as though you are logged in
  • GATSBY_ABLY_MAIN_WEBSITE - the URL from which basic user data and API keys can be retrieved, and from which we can generate sitemap links and so on

GATSBY_ABLY_MAIN_WEBSITE can also be changed to point to staging or a local running website instance.

Place these in .env.development to run locally.

Further Information

Documentation is included throughout this repository in the form of README.md files at folder level. These are intended to:

  1. Aid navigation through the repository, so documentation contributors and developers can easily see if they are in the right place
  2. Support documentation contributors in understanding the expected results from their work
  3. Explain the thinking behind the application structure and conscious choices made, so that improvements can be made with increased confidence when a wrong choice has been made
    1. Ensure that where there is an alternative option, especially an obvious alternative option, the reasons for not selecting that option are made clear
  4. Support new & external developers in quickly understanding how separate parts of the application are expected to work

We have selected folder-level README files instead of the alternative of a dedicated documentation folder because we think it enables points 1 and 4 more directly, especially with the support from GitHub. The aim is to make browsing the repository much more clear even if you have no context for the repository.

Optional Setup Steps

If you would like to run linting and tests automatically before every commit and run npm install automatically after every branch checkout, run npm run repo-githooks. If you would like to remove this behaviour, run npm run no-githooks.

To understand the data ingestion and parsing steps, please check the READMEs in the /data folder.

Help and contact

If you have any questions or suggestions, please get in touch.

ably-docs's People

Contributors

mattheworiordan avatar tbedford avatar tomczoink avatar m-hulbert avatar srushtika avatar simonwoolf avatar mymmij avatar stevenappleby avatar kennethkalmer avatar aralovelace avatar fliptopbox avatar tcard avatar lawrence-forooghian avatar snikidev avatar paddybyers avatar ben-xd avatar sapples avatar franrob-projects avatar owenpearson avatar dependabot[bot] avatar axefrog avatar marto83 avatar cjbatin avatar denissellu avatar samuelayo avatar dpiatek avatar quintinwillison avatar thisisjofrank avatar duncanedwards avatar renatodeleao avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.