station 0.0.0 → 0.0.93
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.buildpacks +1 -0
- data/.editorconfig +23 -0
- data/.env.example +33 -0
- data/.gitignore +37 -22
- data/CODE_OF_CONDUCT.md +46 -0
- data/CONTRIBUTING.md +46 -0
- data/Dockerfile +68 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +14 -0
- data/LICENSE.md +400 -20
- data/LICENSE.txt +9 -0
- data/Procfile +1 -0
- data/README.md +54 -20
- data/app.json +24 -0
- data/babel.config.js +74 -0
- data/bin/nexmo-developer +112 -0
- data/docs/Getting-Started.md +39 -0
- data/docs/How-To-Use.md +272 -0
- data/docs/_config.yml +5 -0
- data/docs/index.md +46 -0
- data/lib/nexmo_developer/.disallowed_words +2 -0
- data/lib/nexmo_developer/.dockerignore +1 -0
- data/lib/nexmo_developer/.eslintrc.js +6 -0
- data/lib/nexmo_developer/.nvmrc +1 -0
- data/lib/nexmo_developer/.postcssrc.yml +4 -0
- data/lib/nexmo_developer/.pre-commit-config.yaml +8 -0
- data/lib/nexmo_developer/.rspec +3 -0
- data/lib/nexmo_developer/.rubocop.yml +273 -0
- data/lib/nexmo_developer/.ruby-version +1 -0
- data/lib/nexmo_developer/Dockerfile +28 -0
- data/lib/nexmo_developer/Gemfile +192 -0
- data/lib/nexmo_developer/Gemfile.lock +630 -0
- data/lib/nexmo_developer/Guardfile +109 -0
- data/lib/nexmo_developer/Procfile +2 -0
- data/lib/nexmo_developer/Rakefile +6 -0
- data/lib/nexmo_developer/Runbook.md +69 -0
- data/lib/nexmo_developer/app/admin/active_admin_feedback_author.rb +23 -0
- data/lib/nexmo_developer/app/admin/active_admin_redirect.rb +22 -0
- data/lib/nexmo_developer/app/admin/active_admin_session.rb +34 -0
- data/lib/nexmo_developer/app/admin/admin_building_block_event.rb +31 -0
- data/lib/nexmo_developer/app/admin/admin_event.rb +40 -0
- data/lib/nexmo_developer/app/admin/admin_feedback_feedback.rb +54 -0
- data/lib/nexmo_developer/app/admin/admin_feedback_resource.rb +42 -0
- data/lib/nexmo_developer/app/admin/admin_user.rb +37 -0
- data/lib/nexmo_developer/app/assets/config/manifest.js +5 -0
- data/lib/nexmo_developer/app/assets/fonts/Lato-Black.woff +0 -0
- data/lib/nexmo_developer/app/assets/fonts/Lato-Black.woff2 +0 -0
- data/lib/nexmo_developer/app/assets/fonts/Lato-Regular.woff +0 -0
- data/lib/nexmo_developer/app/assets/fonts/Lato-Regular.woff2 +0 -0
- data/lib/nexmo_developer/app/assets/fonts/Lato-Semibold.woff +0 -0
- data/lib/nexmo_developer/app/assets/fonts/Lato-Semibold.woff2 +0 -0
- data/lib/nexmo_developer/app/assets/fonts/icomoon.eot +0 -0
- data/lib/nexmo_developer/app/assets/fonts/icomoon.json +1257 -0
- data/lib/nexmo_developer/app/assets/fonts/icomoon.svg +55 -0
- data/lib/nexmo_developer/app/assets/fonts/icomoon.ttf +0 -0
- data/lib/nexmo_developer/app/assets/fonts/icomoon.woff +0 -0
- data/lib/nexmo_developer/app/assets/fonts/nexmo-developer.json +36483 -0
- data/lib/nexmo_developer/app/assets/images/.keep +0 -0
- data/lib/nexmo_developer/app/assets/images/logo@3x.png +0 -0
- data/lib/nexmo_developer/app/assets/images/logo_vonage.png +0 -0
- data/lib/nexmo_developer/app/assets/images/nexmo-developer-logo.svg +25 -0
- data/lib/nexmo_developer/app/assets/images/nexmo-logo-collapsed.svg +10 -0
- data/lib/nexmo_developer/app/assets/images/nexmo-vonage-white.svg +79 -0
- data/lib/nexmo_developer/app/assets/images/posters/chatapp.jpg +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/chatapp_small.png +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/nexmo.jpg +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/numberinsight.jpg +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/numberinsight_small.png +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/sms.jpg +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/sms_small.png +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/verify.jpg +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/verify_small.png +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/voice.jpg +0 -0
- data/lib/nexmo_developer/app/assets/images/posters/voice_small.png +0 -0
- data/lib/nexmo_developer/app/assets/images/select-dropdown.png +0 -0
- data/lib/nexmo_developer/app/assets/images/slack.svg +33 -0
- data/lib/nexmo_developer/app/assets/images/themes/ea/topography.png +0 -0
- data/lib/nexmo_developer/app/assets/javascripts/active_admin.js.coffee +1 -0
- data/lib/nexmo_developer/app/assets/javascripts/application.js +19 -0
- data/lib/nexmo_developer/app/assets/javascripts/stats.js +14 -0
- data/lib/nexmo_developer/app/assets/regex/matching_chars.rb +1 -0
- data/lib/nexmo_developer/app/assets/regex/sequence_diagram_regex.rb +1 -0
- data/lib/nexmo_developer/app/assets/regex/stats_regex.rb +1 -0
- data/lib/nexmo_developer/app/assets/regex/webfont_regex.rb +1 -0
- data/lib/nexmo_developer/app/assets/stylesheets/active_admin.scss +17 -0
- data/lib/nexmo_developer/app/assets/stylesheets/application.css +1 -0
- data/lib/nexmo_developer/app/channels/application_cable/channel.rb +4 -0
- data/lib/nexmo_developer/app/channels/application_cable/connection.rb +4 -0
- data/lib/nexmo_developer/app/constraints/documentation_constraint.rb +25 -0
- data/lib/nexmo_developer/app/constraints/landing_page_constraint.rb +18 -0
- data/lib/nexmo_developer/app/constraints/locale_constraint.rb +17 -0
- data/lib/nexmo_developer/app/constraints/open_api_constraint.rb +49 -0
- data/lib/nexmo_developer/app/controllers/admin_api/code_snippets_controller.rb +45 -0
- data/lib/nexmo_developer/app/controllers/admin_api/feedback_controller.rb +11 -0
- data/lib/nexmo_developer/app/controllers/admin_api_controller.rb +17 -0
- data/lib/nexmo_developer/app/controllers/api_controller.rb +33 -0
- data/lib/nexmo_developer/app/controllers/api_errors_controller.rb +82 -0
- data/lib/nexmo_developer/app/controllers/application_controller.rb +93 -0
- data/lib/nexmo_developer/app/controllers/careers_controller.rb +9 -0
- data/lib/nexmo_developer/app/controllers/concerns/.keep +0 -0
- data/lib/nexmo_developer/app/controllers/dashboard_controller.rb +216 -0
- data/lib/nexmo_developer/app/controllers/extend_controller.rb +45 -0
- data/lib/nexmo_developer/app/controllers/feedback/feedbacks_controller.rb +85 -0
- data/lib/nexmo_developer/app/controllers/feeds_controller.rb +20 -0
- data/lib/nexmo_developer/app/controllers/jobs_controller.rb +64 -0
- data/lib/nexmo_developer/app/controllers/markdown_controller.rb +160 -0
- data/lib/nexmo_developer/app/controllers/search_controller.rb +35 -0
- data/lib/nexmo_developer/app/controllers/sessions_controller.rb +12 -0
- data/lib/nexmo_developer/app/controllers/slack_controller.rb +61 -0
- data/lib/nexmo_developer/app/controllers/static_controller.rb +195 -0
- data/lib/nexmo_developer/app/controllers/tutorial_controller.rb +113 -0
- data/lib/nexmo_developer/app/controllers/usage/ab_result_controller.rb +10 -0
- data/lib/nexmo_developer/app/controllers/usage/code_snippet_controller.rb +19 -0
- data/lib/nexmo_developer/app/controllers/use_case_controller.rb +65 -0
- data/lib/nexmo_developer/app/extensions/nokogiri/html/document.rb +23 -0
- data/lib/nexmo_developer/app/helpers/application_helper.rb +66 -0
- data/lib/nexmo_developer/app/helpers/date_range_helper.rb +9 -0
- data/lib/nexmo_developer/app/helpers/navigation_helper.rb +56 -0
- data/lib/nexmo_developer/app/helpers/parameter_values_helper.rb +5 -0
- data/lib/nexmo_developer/app/helpers/video_helper.rb +20 -0
- data/lib/nexmo_developer/app/jobs/application_job.rb +2 -0
- data/lib/nexmo_developer/app/mailers/application_mailer.rb +4 -0
- data/lib/nexmo_developer/app/middleware/nexmo_developer/building_block_redirect.rb +18 -0
- data/lib/nexmo_developer/app/middleware/nexmo_developer/visitor_id.rb +13 -0
- data/lib/nexmo_developer/app/models/api_error.rb +31 -0
- data/lib/nexmo_developer/app/models/application_record.rb +3 -0
- data/lib/nexmo_developer/app/models/concerns/.keep +0 -0
- data/lib/nexmo_developer/app/models/concerns/publishable.rb +13 -0
- data/lib/nexmo_developer/app/models/event.rb +38 -0
- data/lib/nexmo_developer/app/models/feedback.rb +5 -0
- data/lib/nexmo_developer/app/models/feedback/author.rb +5 -0
- data/lib/nexmo_developer/app/models/feedback/config.rb +16 -0
- data/lib/nexmo_developer/app/models/feedback/feedback.rb +34 -0
- data/lib/nexmo_developer/app/models/feedback/resource.rb +45 -0
- data/lib/nexmo_developer/app/models/product.rb +22 -0
- data/lib/nexmo_developer/app/models/redirect.rb +2 -0
- data/lib/nexmo_developer/app/models/session.rb +9 -0
- data/lib/nexmo_developer/app/models/tutorial.rb +189 -0
- data/lib/nexmo_developer/app/models/tutorial/file_loader.rb +28 -0
- data/lib/nexmo_developer/app/models/tutorial/metadata.rb +54 -0
- data/lib/nexmo_developer/app/models/tutorial/prerequisite.rb +31 -0
- data/lib/nexmo_developer/app/models/tutorial/task.rb +45 -0
- data/lib/nexmo_developer/app/models/usage.rb +5 -0
- data/lib/nexmo_developer/app/models/usage/code_snippet_event.rb +7 -0
- data/lib/nexmo_developer/app/models/user.rb +14 -0
- data/lib/nexmo_developer/app/presenters/card.rb +20 -0
- data/lib/nexmo_developer/app/presenters/career.rb +40 -0
- data/lib/nexmo_developer/app/presenters/feedback_presenter.rb +31 -0
- data/lib/nexmo_developer/app/presenters/footer.rb +88 -0
- data/lib/nexmo_developer/app/presenters/head.rb +96 -0
- data/lib/nexmo_developer/app/presenters/header.rb +56 -0
- data/lib/nexmo_developer/app/presenters/improve_page_presenter.rb +19 -0
- data/lib/nexmo_developer/app/presenters/languages_dropdown_presenter.rb +19 -0
- data/lib/nexmo_developer/app/presenters/locale_switcher_presenter.rb +36 -0
- data/lib/nexmo_developer/app/presenters/navigation.rb +44 -0
- data/lib/nexmo_developer/app/presenters/page_title.rb +38 -0
- data/lib/nexmo_developer/app/presenters/product_dropdown_presenter.rb +39 -0
- data/lib/nexmo_developer/app/presenters/sidenav.rb +64 -0
- data/lib/nexmo_developer/app/presenters/sidenav_item.rb +58 -0
- data/lib/nexmo_developer/app/presenters/sidenav_resolver.rb +136 -0
- data/lib/nexmo_developer/app/presenters/sidenav_subitem.rb +71 -0
- data/lib/nexmo_developer/app/presenters/title_normalizer.rb +25 -0
- data/lib/nexmo_developer/app/presenters/topnav.rb +23 -0
- data/lib/nexmo_developer/app/presenters/topnav_item.rb +19 -0
- data/lib/nexmo_developer/app/presenters/tutorial_list_item.rb +99 -0
- data/lib/nexmo_developer/app/screenshots/webhook-url-for-delivery-receipt.js +44 -0
- data/lib/nexmo_developer/app/screenshots/webhook-url-for-inbound-message.js +44 -0
- data/lib/nexmo_developer/app/services/diff.rb +146 -0
- data/lib/nexmo_developer/app/services/email_validator.rb +6 -0
- data/lib/nexmo_developer/app/services/feedback_slack_notifier.rb +141 -0
- data/lib/nexmo_developer/app/services/greenhouse.rb +45 -0
- data/lib/nexmo_developer/app/services/load_config.rb +14 -0
- data/lib/nexmo_developer/app/services/locale_redirector.rb +29 -0
- data/lib/nexmo_developer/app/services/not_found_notifier.rb +34 -0
- data/lib/nexmo_developer/app/services/open_api_definition_resolver.rb +25 -0
- data/lib/nexmo_developer/app/services/redirector.rb +33 -0
- data/lib/nexmo_developer/app/services/search/article.rb +39 -0
- data/lib/nexmo_developer/app/services/search/document.rb +37 -0
- data/lib/nexmo_developer/app/services/search_terms.rb +27 -0
- data/lib/nexmo_developer/app/services/smartling_api.rb +72 -0
- data/lib/nexmo_developer/app/services/translator/file_translator.rb +61 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/base.rb +54 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/create_batch.rb +48 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/create_job.rb +44 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/download_file.rb +44 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/file_status.rb +43 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/file_uris.rb +46 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api/upload_file.rb +67 -0
- data/lib/nexmo_developer/app/services/translator/smartling/api_requests_generator.rb +64 -0
- data/lib/nexmo_developer/app/services/translator/smartling/token_generator.rb +16 -0
- data/lib/nexmo_developer/app/services/translator/smartling_coordinator.rb +56 -0
- data/lib/nexmo_developer/app/services/translator/smartling_downloader.rb +57 -0
- data/lib/nexmo_developer/app/services/translator/translation_request.rb +11 -0
- data/lib/nexmo_developer/app/services/translator/translator_coordinator.rb +33 -0
- data/lib/nexmo_developer/app/services/translator/utils.rb +42 -0
- data/lib/nexmo_developer/app/services/tutorial_list.rb +39 -0
- data/lib/nexmo_developer/app/views/admin/feedbacks/_steps.html.erb +44 -0
- data/lib/nexmo_developer/app/views/admin_api/code_snippets/index.json.erb +1 -0
- data/lib/nexmo_developer/app/views/admin_api/feedback/index.json.jbuilder +3 -0
- data/lib/nexmo_developer/app/views/api/show.html.erb +1 -0
- data/lib/nexmo_developer/app/views/api_errors/_error_example.html.erb +9 -0
- data/lib/nexmo_developer/app/views/api_errors/_error_table.html.erb +30 -0
- data/lib/nexmo_developer/app/views/api_errors/index.html.erb +45 -0
- data/lib/nexmo_developer/app/views/api_errors/show.html.erb +27 -0
- data/lib/nexmo_developer/app/views/careers/index.html.erb +76 -0
- data/lib/nexmo_developer/app/views/code_languages/_icon.html.erb +11 -0
- data/lib/nexmo_developer/app/views/contribute/administration/page-links.md +179 -0
- data/lib/nexmo_developer/app/views/contribute/code-snippets/how-to-update-code-snippets.md +89 -0
- data/lib/nexmo_developer/app/views/contribute/code-snippets/sample-code-snippet.md +42 -0
- data/lib/nexmo_developer/app/views/contribute/guides/code-examples.md +190 -0
- data/lib/nexmo_developer/app/views/contribute/guides/introduction.md +32 -0
- data/lib/nexmo_developer/app/views/contribute/guides/landing-pages.md +556 -0
- data/lib/nexmo_developer/app/views/contribute/guides/markdown-guide.md +420 -0
- data/lib/nexmo_developer/app/views/contribute/guides/platform.md +220 -0
- data/lib/nexmo_developer/app/views/contribute/guides/tutorials-and-use-cases.md +64 -0
- data/lib/nexmo_developer/app/views/contribute/guides/writing-style-guide.md +278 -0
- data/lib/nexmo_developer/app/views/contribute/overview.md +39 -0
- data/lib/nexmo_developer/app/views/contribute/structure/content-types/code-snippets.md +140 -0
- data/lib/nexmo_developer/app/views/contribute/structure/content-types/guides.md +14 -0
- data/lib/nexmo_developer/app/views/contribute/structure/content-types/overviews.md +34 -0
- data/lib/nexmo_developer/app/views/contribute/structure/content-types/tutorials.md +59 -0
- data/lib/nexmo_developer/app/views/contribute/structure/content-types/use-cases.md +18 -0
- data/lib/nexmo_developer/app/views/contribute/structure/overview.md +55 -0
- data/lib/nexmo_developer/app/views/contribute/tutorials-and-use-cases/tutorials.md +197 -0
- data/lib/nexmo_developer/app/views/contribute/tutorials-and-use-cases/use-cases.md +22 -0
- data/lib/nexmo_developer/app/views/dashboard/_performance_table.html.erb +18 -0
- data/lib/nexmo_developer/app/views/dashboard/coverage.html.erb +169 -0
- data/lib/nexmo_developer/app/views/dashboard/stats.html.erb +134 -0
- data/lib/nexmo_developer/app/views/dashboard/stats_summary.html.erb +62 -0
- data/lib/nexmo_developer/app/views/extend/index.html.erb +33 -0
- data/lib/nexmo_developer/app/views/extend/show.html.erb +31 -0
- data/lib/nexmo_developer/app/views/layouts/api.html.erb +24 -0
- data/lib/nexmo_developer/app/views/layouts/application.html.erb +15 -0
- data/lib/nexmo_developer/app/views/layouts/documentation-index.html.erb +16 -0
- data/lib/nexmo_developer/app/views/layouts/documentation.html.erb +26 -0
- data/lib/nexmo_developer/app/views/layouts/landing.html.erb +17 -0
- data/lib/nexmo_developer/app/views/layouts/mailer.html.erb +13 -0
- data/lib/nexmo_developer/app/views/layouts/mailer.text.erb +1 -0
- data/lib/nexmo_developer/app/views/layouts/open-api.html.erb +10 -0
- data/lib/nexmo_developer/app/views/layouts/page-full.html.erb +9 -0
- data/lib/nexmo_developer/app/views/layouts/page.html.erb +15 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_feedback.html.erb +14 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_footer.html.erb +50 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_head.html.erb +139 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_header.html.erb +57 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_improve_this_page.html.erb +16 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_locale_switcher.html.erb +28 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_notices.html.erb +29 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_post-body-tags.html.erb +4 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_product_dropdown.html.erb +30 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_programming_languages_dropdown.html.erb +29 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_sidenav.html.erb +3 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_sidenav_item.html.erb +18 -0
- data/lib/nexmo_developer/app/views/layouts/partials/_sidenav_subitem.html.erb +34 -0
- data/lib/nexmo_developer/app/views/layouts/partials/api/_voice.html.erb +84 -0
- data/lib/nexmo_developer/app/views/layouts/static.html.erb +33 -0
- data/lib/nexmo_developer/app/views/markdown/show.html.erb +1 -0
- data/lib/nexmo_developer/app/views/markdown/wip.html.erb +5 -0
- data/lib/nexmo_developer/app/views/product-lifecycle/beta.md +28 -0
- data/lib/nexmo_developer/app/views/product-lifecycle/dev-preview.md +22 -0
- data/lib/nexmo_developer/app/views/search/_result.html.erb +31 -0
- data/lib/nexmo_developer/app/views/search/results.html.erb +26 -0
- data/lib/nexmo_developer/app/views/sessions/set_user_locale.js.erb +1 -0
- data/lib/nexmo_developer/app/views/slack/join.html.erb +25 -0
- data/lib/nexmo_developer/app/views/static/404.html.erb +26 -0
- data/lib/nexmo_developer/app/views/static/_career.html.erb +15 -0
- data/lib/nexmo_developer/app/views/static/_community.html.erb +24 -0
- data/lib/nexmo_developer/app/views/static/_dotnet.html.erb +26 -0
- data/lib/nexmo_developer/app/views/static/_event.html.erb +7 -0
- data/lib/nexmo_developer/app/views/static/_products.html.erb +450 -0
- data/lib/nexmo_developer/app/views/static/_profile.html.erb +9 -0
- data/lib/nexmo_developer/app/views/static/_slack.html.erb +2 -0
- data/lib/nexmo_developer/app/views/static/_xwithy.html.erb +33 -0
- data/lib/nexmo_developer/app/views/static/default_landing.html.erb +22 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_action_button.html.erb +13 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_api_list.html.erb +30 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_call_to_action.html.erb +35 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_career.html.erb +3 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_client_sdk_card.html.erb +17 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_contact_community.html.erb +15 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_contact_support.html.erb +14 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_event_search_results.js.erb +2 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_event_search_results_content.html.erb +9 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_event_search_results_map_content.html.erb +10 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_events.html.erb +80 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_featured_session.html.erb +18 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_github_repo.html.erb +31 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_header.html.erb +24 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_headshot.html.erb +43 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_html.html.erb +3 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_join_slack.html.erb +3 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_line_divider.html.erb +5 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_linked_image.html.erb +10 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_migrate_details.html.erb +57 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_products.html.erb +1 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_section_header.html.erb +10 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_sessions.html.erb +30 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_structured_text.html.erb +24 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_submit_your_idea_form.html.erb +58 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_table.html.erb +25 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_team_members.html.erb +5 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_text.html.erb +5 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_tutorial.html.erb +30 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_unordered_list.html.erb +11 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_warning_callout.html.erb +8 -0
- data/lib/nexmo_developer/app/views/static/default_landing/partials/_write_for_nexmo.html.erb +12 -0
- data/lib/nexmo_developer/app/views/static/documentation.html.erb +1 -0
- data/lib/nexmo_developer/app/views/static/landing.html.erb +47 -0
- data/lib/nexmo_developer/app/views/static/past_events.html.erb +19 -0
- data/lib/nexmo_developer/app/views/static/podcast.html.erb +40 -0
- data/lib/nexmo_developer/app/views/static/robots.txt.erb +4 -0
- data/lib/nexmo_developer/app/views/tools/concatenation.html +1 -0
- data/lib/nexmo_developer/app/views/tutorial/_prerequisites.html.erb +23 -0
- data/lib/nexmo_developer/app/views/tutorial/index.html.erb +81 -0
- data/lib/nexmo_developer/app/views/tutorial/list.html.erb +63 -0
- data/lib/nexmo_developer/app/views/tutorial/single.html.erb +1 -0
- data/lib/nexmo_developer/app/views/use_case/_index.html.erb +53 -0
- data/lib/nexmo_developer/app/views/use_case/index.html.erb +12 -0
- data/lib/nexmo_developer/app/views/use_case/list/plain.html.erb +5 -0
- data/lib/nexmo_developer/app/views/use_case/show.html.erb +8 -0
- data/lib/nexmo_developer/app/webpacker/javascript/api_status/index.js +20 -0
- data/lib/nexmo_developer/app/webpacker/javascript/careers/index.js +134 -0
- data/lib/nexmo_developer/app/webpacker/javascript/code_snippet_events/index.js +89 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/concatenation/Concatenation.vue +96 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/concatenation/character_counter.js +112 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/Feedback.vue +155 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/FeedbackPath.vue +56 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/eventHub.js +3 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/step/FieldSet.vue +78 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/step/Plain.vue +26 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/step/RadioGroup.vue +65 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/step/TextArea.vue +86 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/step/base.vue +53 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/feedback/store.js +50 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/jwt_generator/JwtGenerator.vue +220 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/search/NDPArticle.vue +38 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/search/Search.vue +182 -0
- data/lib/nexmo_developer/app/webpacker/javascript/components/search/ZendeskArticle.vue +30 -0
- data/lib/nexmo_developer/app/webpacker/javascript/format/index.js +36 -0
- data/lib/nexmo_developer/app/webpacker/javascript/github_cards/index.js +16 -0
- data/lib/nexmo_developer/app/webpacker/javascript/locale_switcher/index.js +40 -0
- data/lib/nexmo_developer/app/webpacker/javascript/notices/index.js +52 -0
- data/lib/nexmo_developer/app/webpacker/javascript/scroll/index.js +25 -0
- data/lib/nexmo_developer/app/webpacker/javascript/sidenav/index.js +251 -0
- data/lib/nexmo_developer/app/webpacker/javascript/spotlight/index.js +12 -0
- data/lib/nexmo_developer/app/webpacker/javascript/volta/tooltip.min.js +5 -0
- data/lib/nexmo_developer/app/webpacker/javascript/volta/volta.js +2145 -0
- data/lib/nexmo_developer/app/webpacker/javascript/volta_tabbed_examples/index.js +106 -0
- data/lib/nexmo_developer/app/webpacker/javascript/volta_tabbed_examples/user_preference.js +78 -0
- data/lib/nexmo_developer/app/webpacker/packs/application.js +136 -0
- data/lib/nexmo_developer/app/webpacker/src/application.css +0 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/application.scss +62 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/custom/_core.scss +196 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/custom/_mixins.scss +51 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/custom/_syntax.scss +63 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/custom/_typography.scss +248 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/custom/_variables.scss +23 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_api.scss +166 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_careers.scss +29 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_community.scss +70 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_feedback.scss +16 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_footer.scss +113 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_header.scss +207 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_hero.scss +16 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_print.scss +14 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_search.scss +115 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/layout/_team.scss +36 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_building-block.scss +32 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_card.scss +150 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_collapsible.scss +18 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_content-block.scss +24 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_extend.scss +49 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_focus.scss +5 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_icons.scss +334 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_js-sequence-diagram.scss +9 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_navigation.scss +113 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_notices.scss +49 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_tabs.scss +35 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_use_cases.scss +29 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/objects/_video.scss +14 -0
- data/lib/nexmo_developer/app/webpacker/stylesheets/themes/_ea.scss +32 -0
- data/lib/nexmo_developer/bin/initiate +23 -0
- data/lib/nexmo_developer/bin/rails +4 -0
- data/lib/nexmo_developer/bin/setup +36 -0
- data/lib/nexmo_developer/bin/update +31 -0
- data/lib/nexmo_developer/bin/webpack +19 -0
- data/lib/nexmo_developer/bin/webpack-dev-server +19 -0
- data/lib/nexmo_developer/bin/yarn +11 -0
- data/lib/nexmo_developer/config.ru +5 -0
- data/lib/nexmo_developer/config/application.rb +44 -0
- data/lib/nexmo_developer/config/boot.rb +4 -0
- data/lib/nexmo_developer/config/cable.yml +10 -0
- data/lib/nexmo_developer/config/credentials.yml.enc +1 -0
- data/lib/nexmo_developer/config/database.yml +91 -0
- data/lib/nexmo_developer/config/dynamic_content.yml +1 -0
- data/lib/nexmo_developer/config/environment.rb +7 -0
- data/lib/nexmo_developer/config/environments/development.rb +63 -0
- data/lib/nexmo_developer/config/environments/production.rb +102 -0
- data/lib/nexmo_developer/config/environments/staging.rb +86 -0
- data/lib/nexmo_developer/config/environments/test.rb +48 -0
- data/lib/nexmo_developer/config/feedback.yml +104 -0
- data/lib/nexmo_developer/config/initializers/active_admin.rb +295 -0
- data/lib/nexmo_developer/config/initializers/algolia.rb +30 -0
- data/lib/nexmo_developer/config/initializers/application_controller_renderer.rb +8 -0
- data/lib/nexmo_developer/config/initializers/assets.rb +16 -0
- data/lib/nexmo_developer/config/initializers/backtrace_silencers.rb +7 -0
- data/lib/nexmo_developer/config/initializers/bugsnag.rb +8 -0
- data/lib/nexmo_developer/config/initializers/content_security_policy.rb +25 -0
- data/lib/nexmo_developer/config/initializers/cookies_serializer.rb +5 -0
- data/lib/nexmo_developer/config/initializers/devise.rb +279 -0
- data/lib/nexmo_developer/config/initializers/doc_finder.rb +10 -0
- data/lib/nexmo_developer/config/initializers/filter_parameter_logging.rb +4 -0
- data/lib/nexmo_developer/config/initializers/geocoder.rb +24 -0
- data/lib/nexmo_developer/config/initializers/gravatar_image_tag.rb +5 -0
- data/lib/nexmo_developer/config/initializers/greenhouse_io.rb +7 -0
- data/lib/nexmo_developer/config/initializers/inflections.rb +16 -0
- data/lib/nexmo_developer/config/initializers/locale.rb +6 -0
- data/lib/nexmo_developer/config/initializers/mime_types.rb +4 -0
- data/lib/nexmo_developer/config/initializers/recaptcha.rb +6 -0
- data/lib/nexmo_developer/config/initializers/session_store.rb +3 -0
- data/lib/nexmo_developer/config/initializers/slack_safety_check.rb +29 -0
- data/lib/nexmo_developer/config/initializers/split.rb +5 -0
- data/lib/nexmo_developer/config/initializers/wrap_parameters.rb +14 -0
- data/lib/nexmo_developer/config/initializers/zeitwerk.rb +7 -0
- data/lib/nexmo_developer/config/master.key +1 -0
- data/lib/nexmo_developer/config/newrelic.yml +35 -0
- data/lib/nexmo_developer/config/puma.rb +41 -0
- data/lib/nexmo_developer/config/redirects.yml +280 -0
- data/lib/nexmo_developer/config/repos.yml +27 -0
- data/lib/nexmo_developer/config/routes.rb +108 -0
- data/lib/nexmo_developer/config/secrets.yml +25 -0
- data/lib/nexmo_developer/config/spring.rb +6 -0
- data/lib/nexmo_developer/config/stitch-redirects.yml +145 -0
- data/lib/nexmo_developer/config/storage.yml +34 -0
- data/lib/nexmo_developer/config/tutorials/.gitkeep +0 -0
- data/lib/nexmo_developer/config/tutorials/en/app-to-app.yml +49 -0
- data/lib/nexmo_developer/config/tutorials/en/app-to-phone.yml +43 -0
- data/lib/nexmo_developer/config/tutorials/en/create-and-retrieve-a-report.yml +24 -0
- data/lib/nexmo_developer/config/tutorials/en/create-report-using-graphical-tools.yml +20 -0
- data/lib/nexmo_developer/config/tutorials/en/get-json-records-cli.yml +20 -0
- data/lib/nexmo_developer/config/tutorials/en/ifttt-to-sms.yml +10 -0
- data/lib/nexmo_developer/config/tutorials/en/in-app-messaging.yml +4 -0
- data/lib/nexmo_developer/config/tutorials/en/in-app-messaging/javascript.yml +50 -0
- data/lib/nexmo_developer/config/tutorials/en/in-app-messaging/kotlin.yml +52 -0
- data/lib/nexmo_developer/config/tutorials/en/in-app-messaging/objective_c.yml +50 -0
- data/lib/nexmo_developer/config/tutorials/en/in-app-messaging/swift.yml +50 -0
- data/lib/nexmo_developer/config/tutorials/en/number-insight-api-aspnet.yml +11 -0
- data/lib/nexmo_developer/config/tutorials/en/phone-to-app.yml +4 -0
- data/lib/nexmo_developer/config/tutorials/en/phone-to-app/javascript.yml +38 -0
- data/lib/nexmo_developer/config/tutorials/en/receive-sms-dotnet.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/receive-sms-with-java.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/receive-sms-with-php.yml +10 -0
- data/lib/nexmo_developer/config/tutorials/en/receive-sms-with-ruby.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/send-facebook-message-with-failover.yml +41 -0
- data/lib/nexmo_developer/config/tutorials/en/send-fbm-message.yml +42 -0
- data/lib/nexmo_developer/config/tutorials/en/send-sms-with-dotnet.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/send-sms-with-flask.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/send-sms-with-java.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/send-sms-with-messages.yml +38 -0
- data/lib/nexmo_developer/config/tutorials/en/send-sms-with-php.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/send-sms-with-ruby.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/send-viber-message.yml +40 -0
- data/lib/nexmo_developer/config/tutorials/en/send-whatsapp-message.yml +40 -0
- data/lib/nexmo_developer/config/tutorials/en/sms-browser-notifications.yml +10 -0
- data/lib/nexmo_developer/config/tutorials/en/sms-dlr-with-dotnet.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/sms-dlr-with-php.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/sms-dlr-with-ruby.yml +9 -0
- data/lib/nexmo_developer/config/tutorials/en/sms-fortune-cookies-with-ibm-cloud.yml +10 -0
- data/lib/nexmo_developer/config/tutorials/en/two-factor-authentication-dotnet-verify-api.yml +11 -0
- data/lib/nexmo_developer/config/webpack/development.js +3 -0
- data/lib/nexmo_developer/config/webpack/environment.js +18 -0
- data/lib/nexmo_developer/config/webpack/loaders/vue.js +6 -0
- data/lib/nexmo_developer/config/webpack/production.js +3 -0
- data/lib/nexmo_developer/config/webpack/staging.js +4 -0
- data/lib/nexmo_developer/config/webpack/test.js +3 -0
- data/lib/nexmo_developer/config/webpacker.yml +82 -0
- data/lib/nexmo_developer/db/migrate/20170215101603_create_events.rb +15 -0
- data/lib/nexmo_developer/db/migrate/20170413143802_enable_uuid_ossp_extension.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20170413154102_change_event_id_to_uuid.rb +7 -0
- data/lib/nexmo_developer/db/migrate/20170413154510_create_sessions.rb +13 -0
- data/lib/nexmo_developer/db/migrate/20170831144035_create_feedback_feedbacks.rb +18 -0
- data/lib/nexmo_developer/db/migrate/20170831150024_create_feedback_resources.rb +10 -0
- data/lib/nexmo_developer/db/migrate/20170901093402_sorcery_core.rb +17 -0
- data/lib/nexmo_developer/db/migrate/20170907172926_create_feedback_authors.rb +10 -0
- data/lib/nexmo_developer/db/migrate/20170908112821_create_active_admin_comments.rb +19 -0
- data/lib/nexmo_developer/db/migrate/20170908153555_change_events_start_at_and_end_at_to_date_type.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20170914145346_add_code_language_to_feedback.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20170915081222_correct_uri_of_resources.rb +31 -0
- data/lib/nexmo_developer/db/migrate/20170919151243_add_langugage_set_filters_to_feedbacks.rb +9 -0
- data/lib/nexmo_developer/db/migrate/20170920153649_add_resolved_to_feedback_feedbacks.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20170921120626_drop_users.rb +5 -0
- data/lib/nexmo_developer/db/migrate/20170921121218_devise_create_users.rb +44 -0
- data/lib/nexmo_developer/db/migrate/20171030115603_add_api_key_and_api_secret_to_users.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20180125163023_add_api_secret_to_users.rb +18 -0
- data/lib/nexmo_developer/db/migrate/20180306142355_create_careers.rb +14 -0
- data/lib/nexmo_developer/db/migrate/20180306161650_add_summary_and_icon_to_careers.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20180306184030_create_friendly_id_slugs.rb +15 -0
- data/lib/nexmo_developer/db/migrate/20180306184642_add_slug_to_career.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20180306185340_add_description_short_to_careers.rb +5 -0
- data/lib/nexmo_developer/db/migrate/20180308101927_add_role_group_to_careers.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20180403111850_add_product_to_feedback_resources.rb +41 -0
- data/lib/nexmo_developer/db/migrate/20180404124814_add_published_to_sessions.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20180827133110_usage_building_block_events.rb +16 -0
- data/lib/nexmo_developer/db/migrate/20181006144242_create_redirects.rb +8 -0
- data/lib/nexmo_developer/db/migrate/20190220092207_add_city_country_to_events.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20190306130440_add_latitude_longitude_to_events.rb +6 -0
- data/lib/nexmo_developer/db/migrate/20190415162421_rename_usage_building_block_events.rb +7 -0
- data/lib/nexmo_developer/db/migrate/20190711141227_drop_careers_table.rb +21 -0
- data/lib/nexmo_developer/db/migrate/20190711143408_drop_friendly_id_slugs_table.rb +16 -0
- data/lib/nexmo_developer/db/migrate/20191022100247_add_foreign_key_to_active_storage_for_blob_id.rb +10 -0
- data/lib/nexmo_developer/db/migrate/20200402092734_add_remote_to_events.rb +5 -0
- data/lib/nexmo_developer/db/migrate/20201016102902_create_feedback_config.rb +10 -0
- data/lib/nexmo_developer/db/migrate/20201016110604_add_details_to_feedback_feedback.rb +7 -0
- data/lib/nexmo_developer/db/schema.rb +152 -0
- data/lib/nexmo_developer/db/seeds.rb +70 -0
- data/lib/nexmo_developer/docker-compose.yml +43 -0
- data/lib/nexmo_developer/github_deploy_key.enc +0 -0
- data/lib/nexmo_developer/lib/common_errors.rb +5 -0
- data/lib/nexmo_developer/lib/tasks/.keep +0 -0
- data/lib/nexmo_developer/lib/tasks/cache.rake +6 -0
- data/lib/nexmo_developer/lib/tasks/careers.rake +8 -0
- data/lib/nexmo_developer/lib/tasks/ci.rake +171 -0
- data/lib/nexmo_developer/lib/tasks/diff.rake +40 -0
- data/lib/nexmo_developer/lib/tasks/documentation.rake +18 -0
- data/lib/nexmo_developer/lib/tasks/generate_search_terms.rake +39 -0
- data/lib/nexmo_developer/lib/tasks/links.rake +135 -0
- data/lib/nexmo_developer/lib/tasks/move.rake +58 -0
- data/lib/nexmo_developer/lib/tasks/repos.rake +57 -0
- data/lib/nexmo_developer/lib/tasks/screenshots.rake +11 -0
- data/lib/nexmo_developer/lib/tasks/section.rake +146 -0
- data/lib/nexmo_developer/lib/tasks/smartling.rake +65 -0
- data/lib/nexmo_developer/lib/tasks/test.rake +22 -0
- data/lib/nexmo_developer/nexmo_developer.rb +1 -0
- data/lib/nexmo_developer/public/404.html +67 -0
- data/lib/nexmo_developer/public/422.html +67 -0
- data/lib/nexmo_developer/public/500.html +66 -0
- data/lib/nexmo_developer/public/android-chrome-192x192.png +0 -0
- data/lib/nexmo_developer/public/android-chrome-512x512.png +0 -0
- data/lib/nexmo_developer/public/apple-touch-icon-precomposed.png +0 -0
- data/lib/nexmo_developer/public/apple-touch-icon.png +0 -0
- data/lib/nexmo_developer/public/browserconfig.xml +9 -0
- data/lib/nexmo_developer/public/favicon-16x16.png +0 -0
- data/lib/nexmo_developer/public/favicon-32x32.png +0 -0
- data/lib/nexmo_developer/public/favicon.ico +0 -0
- data/lib/nexmo_developer/public/fonts/Lato-Heavy.woff +0 -0
- data/lib/nexmo_developer/public/fonts/Lato-Heavy.woff2 +0 -0
- data/lib/nexmo_developer/public/fonts/Lato-Regular.woff +0 -0
- data/lib/nexmo_developer/public/fonts/Lato-Regular.woff2 +0 -0
- data/lib/nexmo_developer/public/fonts/Lato-Semibold.woff +0 -0
- data/lib/nexmo_developer/public/fonts/Lato-Semibold.woff2 +0 -0
- data/lib/nexmo_developer/public/manifest.json +17 -0
- data/lib/nexmo_developer/public/mstile-144x144.png +0 -0
- data/lib/nexmo_developer/public/mstile-150x150.png +0 -0
- data/lib/nexmo_developer/public/nexmo-developer-logo.svg +25 -0
- data/lib/nexmo_developer/public/nexmo-vonage-white.svg +79 -0
- data/lib/nexmo_developer/public/packs-test/css/application-5047da33.chunk.css +14950 -0
- data/lib/nexmo_developer/public/packs-test/css/application-5047da33.chunk.css.map +1 -0
- data/lib/nexmo_developer/public/packs-test/css/application-a5fa0fdb.chunk.css +15085 -0
- data/lib/nexmo_developer/public/packs-test/css/application-a5fa0fdb.chunk.css.map +1 -0
- data/lib/nexmo_developer/public/packs-test/css/application-f92656e6.chunk.css +13 -0
- data/lib/nexmo_developer/public/packs-test/css/application-f92656e6.chunk.css.map +1 -0
- data/lib/nexmo_developer/public/packs-test/css/application-f9d1bdbc.chunk.css +13 -0
- data/lib/nexmo_developer/public/packs-test/css/application-f9d1bdbc.chunk.css.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/0-e58f598fb97314a89835.chunk.js +59763 -0
- data/lib/nexmo_developer/public/packs-test/js/0-e58f598fb97314a89835.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/application-21483bf220c794127fa9.chunk.js +6405 -0
- data/lib/nexmo_developer/public/packs-test/js/application-21483bf220c794127fa9.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/application-6e53f67bc3230c42f9dd.chunk.js +7839 -0
- data/lib/nexmo_developer/public/packs-test/js/application-6e53f67bc3230c42f9dd.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/application-76d5a80c3775a7e2327a.chunk.js +6405 -0
- data/lib/nexmo_developer/public/packs-test/js/application-76d5a80c3775a7e2327a.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/application-c6f3e7a9d98562f76890.chunk.js +6619 -0
- data/lib/nexmo_developer/public/packs-test/js/application-c6f3e7a9d98562f76890.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/application-d280e78dd4f9d3d9b466.chunk.js +6405 -0
- data/lib/nexmo_developer/public/packs-test/js/application-d280e78dd4f9d3d9b466.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/runtime~application-1c11a8c601900ade80b6.js +155 -0
- data/lib/nexmo_developer/public/packs-test/js/runtime~application-1c11a8c601900ade80b6.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-6518249ed8d7aa985a8b.chunk.js +61849 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-6518249ed8d7aa985a8b.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-bc967911d70f3f4a5151.chunk.js +59077 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-bc967911d70f3f4a5151.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-d2bde7a8e622fafdeb1d.chunk.js +61843 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-d2bde7a8e622fafdeb1d.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-eb13e7814c54bf76b364.chunk.js +62431 -0
- data/lib/nexmo_developer/public/packs-test/js/vendors~application-eb13e7814c54bf76b364.chunk.js.map +1 -0
- data/lib/nexmo_developer/public/packs-test/manifest.json +85 -0
- data/lib/nexmo_developer/public/safari-pinned-tab.svg +1 -0
- data/lib/nexmo_developer/public/symbol/volta-brand-icons.svg +1 -0
- data/lib/nexmo_developer/public/symbol/volta-icons.svg +1 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/.keep +0 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/jquery-scrolltofixed.js +567 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/mermaid.js +49 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/underscore.js +5 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/addons/jquery.tablesorter.js +1031 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/addons/prism.js +22 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/side-navigation/volta.menu.js +377 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/volta.accordion.js +249 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/volta.dropdown.js +145 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/volta.flash.js +175 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/volta.modal.js +312 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/volta.tab.js +203 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/components/volta.tooltip.js +71 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/popper.min.js +5 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/svgxuse.min.js +12 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/tooltip.min.js +5 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/volta.core.js +238 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/volta.js +2141 -0
- data/lib/nexmo_developer/vendor/assets/javascripts/volta/volta.min.js +1 -0
- data/lib/nexmo_developer/vendor/assets/stylesheets/.keep +0 -0
- data/lib/nexmo_developer/version.rb +3 -0
- data/package.json +124 -0
- data/station.gemspec +87 -42
- data/yarn.lock +13919 -0
- metadata +1885 -55
- data/.document +0 -5
- data/Rakefile +0 -61
- data/VERSION +0 -1
- data/lib/station.rb +0 -3
@@ -0,0 +1,32 @@
|
|
1
|
+
---
|
2
|
+
title: Introduction to contributing content
|
3
|
+
navigation_weight: 1
|
4
|
+
---
|
5
|
+
|
6
|
+
# Introduction to contributing content
|
7
|
+
|
8
|
+
The easiest ways to contribute to Nexmo Developer can be found in the footer of most pages. You can either comment on the documentation usefulness or propose changes to improve the content.
|
9
|
+
|
10
|
+
## Feedback
|
11
|
+
|
12
|
+
Providing feedback on Nexmo Developer helps our documentation team identify which pages require improvements and help us understand which pages are providing clear and effective documentation.
|
13
|
+
|
14
|
+
![Feedback links in page footer](/assets/images/contributing/footer.png)
|
15
|
+
|
16
|
+
## Suggesting changes
|
17
|
+
|
18
|
+
Many pages have an ***Improve this page*** link that takes you to the source [Markdown](https://en.wikipedia.org/wiki/Markdown) document in GitHub. You can then click edit [icon="pencil"] to propose changes to the document.
|
19
|
+
|
20
|
+
![Propose file change](/assets/images/contributing/propose-file-change.png)
|
21
|
+
|
22
|
+
Once you've made your edits to the document you can commit it by pressing ***Propose file change***, providing a short description of the changes being made.
|
23
|
+
|
24
|
+
![Create a pull request](/assets/images/contributing/create-a-pull-request.png)
|
25
|
+
|
26
|
+
You'll then get to see a preview of the changes, if you're happy to proceed you should submit them for review by creating a pull request by clicking ***Create pull request***.
|
27
|
+
|
28
|
+
![Complete a pull request](/assets/images/contributing/complete-pull-request.png)
|
29
|
+
|
30
|
+
Finally, you can optionally provide a bit more context and complete the creation of a pull request by clicking **Create pull request**.
|
31
|
+
|
32
|
+
The Nexmo team will then review the changes and either publish or comment on the proposed changes as appropriate.
|
@@ -0,0 +1,556 @@
|
|
1
|
+
---
|
2
|
+
title: Landing Pages
|
3
|
+
navigation_weight: 6
|
4
|
+
---
|
5
|
+
|
6
|
+
# Config Driven Landing Pages on Nexmo Developer
|
7
|
+
|
8
|
+
## Table of Contents
|
9
|
+
|
10
|
+
- [Table of Contents](#table-of-contents)
|
11
|
+
- [Introduction](#introduction)
|
12
|
+
- [Defining the Layout of the Config File](#defining-the-layout-of-the-config-file)
|
13
|
+
- [Content Types](#content-types)
|
14
|
+
- [Action Button](#action-button)
|
15
|
+
- [API List](#api-list)
|
16
|
+
- [Call To Action](#call-to-action)
|
17
|
+
- [Client SDK Card](#client-sdk-card)
|
18
|
+
- [Contact Support](#contact-support)
|
19
|
+
- [Events](#events)
|
20
|
+
- [GitHub Repo](#github-repo)
|
21
|
+
- [Header](#header)
|
22
|
+
- [Headshot](#headshot)
|
23
|
+
- [HTML](#html)
|
24
|
+
- [Join Slack](#join-slack)
|
25
|
+
- [Line Divider](#line-divider)
|
26
|
+
- [Linked Image](#linked-image)
|
27
|
+
- [Products](#products)
|
28
|
+
- [Section Header](#section-header)
|
29
|
+
- [Sessions](#sessions)
|
30
|
+
- [Structured Text](#structured-text)
|
31
|
+
- [Submit your Idea Form](#submit-your-idea-form)
|
32
|
+
- [Table](#table)
|
33
|
+
- [Team Members](#team-members)
|
34
|
+
- [Text](#text)
|
35
|
+
- [Tutorial](#tutorial)
|
36
|
+
- [Unordered List](#unordered-list)
|
37
|
+
- [Warning Callout](#warning-callout)
|
38
|
+
- [Write for Nexmo](#write-for-nexmo)
|
39
|
+
|
40
|
+
## Introduction
|
41
|
+
|
42
|
+
Config driven landing pages allow you to create pages with the content you need quickly and painlessly. Each landing page is generated from a [YAML](https://yaml.org/start.html) file in `/config/landing_pages/`. The name of the YAML file should be the same name as the URL you want for the landing page. For example, if you want a PHP language landing page that can be accessed at `https://developer.nexmo.com/php` then you need to name your YAML file `php.yml`.
|
43
|
+
|
44
|
+
Event landing pages should be added to `/config/landing_pages/e`, unless it is a Vonage event, in that case it can be added to `/config/landing_pages` directly. The event landing pages added to the `/e` sub-folder can be accessed at `https://developer.nexmo.com/e/#{name-of-event}`.
|
45
|
+
|
46
|
+
The config file represents rows and columns on a website with pre-defined content blocks. You can design your landing page with the visual layout that best works for your information and use the pre-defined content blocks to give your content shape and design.
|
47
|
+
|
48
|
+
Let's explore the building of a config file and then we will detail each content block and the data it accepts.
|
49
|
+
|
50
|
+
## Defining the Layout of the Config File
|
51
|
+
|
52
|
+
<img src="/assets/images/contributing/landing_page_screenshots/landing_page_layout.png" width=400>
|
53
|
+
|
54
|
+
Each config file represents the visual layout of a landing page, including the number of rows and the amount of columns in each row, along with the actual information in the landing page. A config file begins with `page:` that designate the `key` name of `page` and the colon is the division between the `key` name and the `value`. Within a YAML file, to specify an array of data one uses the `-` before the `key` name. This is an important element of the config file, as the data of `page` and `row` are held in arrays. Thus, the following will produce a single row with two columns:
|
55
|
+
|
56
|
+
```yaml
|
57
|
+
|
58
|
+
page:
|
59
|
+
- row:
|
60
|
+
- width: 2
|
61
|
+
column:
|
62
|
+
- column:
|
63
|
+
|
64
|
+
```
|
65
|
+
|
66
|
+
A column can either begin with the keyword of `column` or the `key: value` pair of `width: integer`. The `width` value specifies how much of the row you would like that column to fill. Width is designated as a number between 1-4. If you do not specify a `width` the layout will default to a dynamically rendered arrangement of each column taking up an equal amount of space. The `column` keyword, unlike the `width` keyword is mandatory, so even if you specify a `width` value, you still must begin the next line with `column`.
|
67
|
+
|
68
|
+
What about other layout possibilities? This is how you would define a layout of 2 rows with 3 columns in the first and 1 column in the second:
|
69
|
+
|
70
|
+
```yaml
|
71
|
+
|
72
|
+
page:
|
73
|
+
- row:
|
74
|
+
- width: 1
|
75
|
+
column:
|
76
|
+
- width: 2
|
77
|
+
column:
|
78
|
+
- width: 1
|
79
|
+
column:
|
80
|
+
- row:
|
81
|
+
- column:
|
82
|
+
|
83
|
+
```
|
84
|
+
|
85
|
+
At this point we are ready to detail each content block type and the data associated with it.
|
86
|
+
|
87
|
+
## Content Types
|
88
|
+
|
89
|
+
### Action Button
|
90
|
+
|
91
|
+
<img src="/assets/images/contributing/landing_page_screenshots/action_button.png" width=200>
|
92
|
+
|
93
|
+
The `action_button` content block creates a clickable linked HTML button you can add to the landing page. The YAML config for an action button is the following:
|
94
|
+
|
95
|
+
```yaml
|
96
|
+
|
97
|
+
- type: action_button
|
98
|
+
action_button:
|
99
|
+
text: # Text for the button (i.e. "Apply now!")
|
100
|
+
url: # The URL for the button (i.e. "#submit-your-idea")
|
101
|
+
|
102
|
+
```
|
103
|
+
|
104
|
+
The `action_button` supports the following optional parameters:
|
105
|
+
|
106
|
+
```yaml
|
107
|
+
|
108
|
+
type: # "secondary" or "primary", with "primary" being the default.
|
109
|
+
large: # true or false, with false being the default.
|
110
|
+
center_button: # true or false, with false being the default.
|
111
|
+
|
112
|
+
```
|
113
|
+
|
114
|
+
### API List
|
115
|
+
|
116
|
+
The `api_list` content block allows you to render a list of APIs you wish to show. It is suitable for an index type view of a collection of APIs.
|
117
|
+
|
118
|
+
The content block takes the following required parameters:
|
119
|
+
|
120
|
+
```yaml
|
121
|
+
- type: api_list
|
122
|
+
api_list:
|
123
|
+
header:
|
124
|
+
title: # Header title for the view
|
125
|
+
num_of_columns: # The number of columns you wish to split the API listings into (i.e. 2 or 3)
|
126
|
+
categories:
|
127
|
+
- new_column:
|
128
|
+
- title: # The category title for a collection of APIs, (i.e. 'Messaging')
|
129
|
+
icon:
|
130
|
+
color: # The color of the icon to represent the category (i.e. purple)
|
131
|
+
name: # The name of the Volta icon (i.e. 'Vlt-icon-message')
|
132
|
+
apis: # A list of the APIs wto show in this category collection
|
133
|
+
- title: # Name of the API (i.e. 'Messages API')
|
134
|
+
path: # The relative path to the API documentation (i.e. 'api/messages-olympus')
|
135
|
+
description: # A body of text to describe the API
|
136
|
+
```
|
137
|
+
|
138
|
+
Additionally, you can optionally add a badge next to the name of each API representing a special status like "Beta" or "Developer Preview", You do so by adding two more keys in the API category:
|
139
|
+
|
140
|
+
```yaml
|
141
|
+
apis:
|
142
|
+
- title:
|
143
|
+
path:
|
144
|
+
description:
|
145
|
+
badge:
|
146
|
+
name: Beta
|
147
|
+
color: green
|
148
|
+
```
|
149
|
+
|
150
|
+
### Call To Action
|
151
|
+
|
152
|
+
<img src="/assets/images/contributing/landing_page_screenshots/call_to_action.png" width=200>
|
153
|
+
|
154
|
+
The `call_to_action` content block creates a specific layout of text with an icon. You might want to use the `call_to_action` to draw attention to a featured area of Nexmo Developer, like our SDKs and Tools, for example. The `call_to_action` block requires the following parameters:
|
155
|
+
|
156
|
+
```yaml
|
157
|
+
|
158
|
+
- type: call_to_action
|
159
|
+
call_to_action:
|
160
|
+
title: # Title for the content (i.e. "SDKs and Tools")
|
161
|
+
icon:
|
162
|
+
name: # Name of icon to use (i.e. "icon-design-tools")
|
163
|
+
color: # Color of icon (i.e. "blue-dark")
|
164
|
+
url: # Link the call to action directs to (i.e. "/tools")
|
165
|
+
|
166
|
+
```
|
167
|
+
|
168
|
+
In addition, you can also specify an optional `subtitle` parameter that gives you the opportunity to provide more descriptive text for your call to action. (_Note: You can use markdown in the `subtitle` to further style the content_.) For example, the following would render with a line break between `with` and `Nexmo APIs`:
|
169
|
+
|
170
|
+
```yaml
|
171
|
+
|
172
|
+
subtitle: "The Nexmo libraries allow you to get up and running with<br> Nexmo APIs quickly in your language of choice."`
|
173
|
+
|
174
|
+
```
|
175
|
+
|
176
|
+
### Client SDK Card
|
177
|
+
|
178
|
+
The `client_sdk_card` content block provides a Client SDK card to display client SDK information. The content block renders a title, icon and text and link to SDK documentation. All content types are required.
|
179
|
+
|
180
|
+
```yaml
|
181
|
+
|
182
|
+
- type: client_sdk_card
|
183
|
+
client_sdk_card:
|
184
|
+
name:
|
185
|
+
content:
|
186
|
+
color:
|
187
|
+
icon:
|
188
|
+
name:
|
189
|
+
text:
|
190
|
+
content:
|
191
|
+
documentation_url:
|
192
|
+
|
193
|
+
```
|
194
|
+
|
195
|
+
|
196
|
+
### Contact Support
|
197
|
+
|
198
|
+
<img src="/assets/images/contributing/landing_page_screenshots/contact_support.png" width=400>
|
199
|
+
|
200
|
+
The `contact_support` content block is a pre-defined set of information that takes no parameters. Once you add it to your config file, it will populate with information about getting in touch with Nexmo for support. To add it to your config file, just reference it:
|
201
|
+
|
202
|
+
```yaml
|
203
|
+
|
204
|
+
- type: contact_support
|
205
|
+
|
206
|
+
```
|
207
|
+
|
208
|
+
### Events
|
209
|
+
|
210
|
+
<img src="/assets/images/contributing/landing_page_screenshots/events.png" width=400>
|
211
|
+
|
212
|
+
The `events` content block is a pre-defined set of information that takes no parameters. Once you add it to your config file, it will populate with information on upcoming DevRel Community events, with a generated Google Maps with markers for each event. To add it to your config file, just reference it:
|
213
|
+
|
214
|
+
```yaml
|
215
|
+
|
216
|
+
- type: events
|
217
|
+
|
218
|
+
```
|
219
|
+
|
220
|
+
### GitHub Repo
|
221
|
+
|
222
|
+
<img src="/assets/images/contributing/landing_page_screenshots/github_repo.png" width=200>
|
223
|
+
|
224
|
+
The `github_repo` content block lets you reference a GitHub repository on your landing page. It will display the name of the repository, the language, the number of stars and number of forks. The block will link to the repository directly on GitHub. It requires the following parameters:
|
225
|
+
|
226
|
+
```yaml
|
227
|
+
|
228
|
+
- type: github_repo
|
229
|
+
github_repo:
|
230
|
+
repo_url: # Link to repository on GitHub
|
231
|
+
github_repo_title: # Name of repository (i.e. "Nexmo REST API client for .NET")
|
232
|
+
language: # Language of code in repository (i.e. ".NET")
|
233
|
+
|
234
|
+
```
|
235
|
+
|
236
|
+
Optionally, you can also provide a `badge_url` to link to the Version Badge of the library. The parameter can be provided in the following manner:
|
237
|
+
|
238
|
+
```yaml
|
239
|
+
|
240
|
+
- type: github_repo
|
241
|
+
github_repo:
|
242
|
+
repo_url:
|
243
|
+
badge_url: # Example: //badge.fury.io/gh/nexmo%2Fnexmo-java.svg
|
244
|
+
github_repo_title:
|
245
|
+
language:
|
246
|
+
|
247
|
+
```
|
248
|
+
|
249
|
+
### Header
|
250
|
+
|
251
|
+
<img src="/assets/images/contributing/landing_page_screenshots/header.png" width=200>
|
252
|
+
|
253
|
+
The `header` block provides you with the layout for the landing page header content. The content consists of a title, with an icon, and an optional subtitle. You can specify the required parameters with the following:
|
254
|
+
|
255
|
+
```yaml
|
256
|
+
|
257
|
+
- type: header
|
258
|
+
header:
|
259
|
+
title:
|
260
|
+
text: # The header title text (i.e. "Write for Nexmo!")
|
261
|
+
icon:
|
262
|
+
name: # Name of icon to use (i.e. "icon-rocket")
|
263
|
+
color: # Color of icon (i.e. "blue")
|
264
|
+
|
265
|
+
```
|
266
|
+
|
267
|
+
There are also optional parameters for the `header` content block. You only need to specify values for these optional parameters if you want to change their defaults.
|
268
|
+
|
269
|
+
```yaml
|
270
|
+
|
271
|
+
title:
|
272
|
+
text: # Header title
|
273
|
+
align: # Text alignment, default is left-aligned if not defined (i.e. "center")
|
274
|
+
subtitle:
|
275
|
+
text: # Subtitle text (i.e. "Teach others, grow as a writer, and help us build the next go-to destination...")
|
276
|
+
align: # Subtitle text alignment, default is left-aligned if not defined (i.e. "center")
|
277
|
+
type: # "large" or "small", default is small if not defined
|
278
|
+
|
279
|
+
```
|
280
|
+
|
281
|
+
Lastly, like the `call_to_action` subtitle, the text in the `header` subtitle is also capable of rendering markdown content.
|
282
|
+
|
283
|
+
### Headshot
|
284
|
+
|
285
|
+
<img src="/assets/images/contributing/landing_page_screenshots/headshot.png" width=200>
|
286
|
+
|
287
|
+
The `headshot` block provides a way of rendering a headshot on your landing page. The content consists of an image, an external url which the image is linked to, a name and a short description. You can specify the required parameters with the following:
|
288
|
+
|
289
|
+
```yaml
|
290
|
+
|
291
|
+
- type: headshot
|
292
|
+
headshot:
|
293
|
+
name: # Name of the person in the image
|
294
|
+
url: # Link to url
|
295
|
+
img_src: # Link to image
|
296
|
+
intro: # Short text rendered below the image
|
297
|
+
|
298
|
+
```
|
299
|
+
|
300
|
+
The `headshot` supports the following optional parameters:
|
301
|
+
|
302
|
+
```yaml
|
303
|
+
|
304
|
+
twitter: # twitter handle
|
305
|
+
github: # github handle
|
306
|
+
location: # where the person is based
|
307
|
+
|
308
|
+
```
|
309
|
+
|
310
|
+
### HTML
|
311
|
+
|
312
|
+
<img src="/assets/images/contributing/landing_page_screenshots/html.png" width=400>
|
313
|
+
|
314
|
+
The `HTML` content block provides you with a place to insert HTML code that does not fit any of the pre-defined content blocks. Its only required parameter is `content`:
|
315
|
+
|
316
|
+
```yaml
|
317
|
+
|
318
|
+
- type: html
|
319
|
+
html:
|
320
|
+
content: # Put HTML here (i.e. "This is a <strong>HTML</strong> example")
|
321
|
+
|
322
|
+
```
|
323
|
+
|
324
|
+
### Join Slack
|
325
|
+
|
326
|
+
<img src="/assets/images/contributing/landing_page_screenshots/join_slack.png" width=200>
|
327
|
+
|
328
|
+
The `join_slack` content block is a pre-defined styled invitation to join the Nexmo community Slack. It takes no parameters.
|
329
|
+
|
330
|
+
```yaml
|
331
|
+
|
332
|
+
- type: join_slack
|
333
|
+
|
334
|
+
```
|
335
|
+
|
336
|
+
### Line Divider
|
337
|
+
|
338
|
+
<img src="/assets/images/contributing/landing_page_screenshots/line_divider.png" width=400>
|
339
|
+
|
340
|
+
The `line_divider` content block is a pre-defined rendered line that can be used to visually divide a page. It takes no parameters.
|
341
|
+
|
342
|
+
```yaml
|
343
|
+
|
344
|
+
- type: line_divider
|
345
|
+
|
346
|
+
```
|
347
|
+
|
348
|
+
### Linked Image
|
349
|
+
|
350
|
+
<img src="/assets/images/contributing/landing_page_screenshots/linked_image.png" width=200>
|
351
|
+
|
352
|
+
The `linked_image` content block provides you with a format for an image that is linked to a URL. It takes the following parameters:
|
353
|
+
|
354
|
+
```yaml
|
355
|
+
|
356
|
+
- type: linked_image
|
357
|
+
linked_image:
|
358
|
+
image: # Link to image
|
359
|
+
url: # Link to URL
|
360
|
+
alt_text: # Alternate text if image cannot be rendered
|
361
|
+
|
362
|
+
```
|
363
|
+
|
364
|
+
### Products
|
365
|
+
|
366
|
+
<img src="/assets/images/contributing/landing_page_screenshots/products.png" width=200>
|
367
|
+
|
368
|
+
The `products` content block is a pre-defined listing of all of Nexmo's API products. It displays each one with links to tutorials, guides, code snippets and API reference. It takes no parameters.
|
369
|
+
|
370
|
+
```yaml
|
371
|
+
|
372
|
+
- type: products
|
373
|
+
|
374
|
+
```
|
375
|
+
|
376
|
+
### Section Header
|
377
|
+
|
378
|
+
<img src="/assets/images/contributing/landing_page_screenshots/section_header.png" width=200>
|
379
|
+
|
380
|
+
The `section_header` content block is used to create a header for a new section of content on your landing page. It renders a title with an icon. It takes the following parameters:
|
381
|
+
|
382
|
+
```yaml
|
383
|
+
|
384
|
+
- type: section_header
|
385
|
+
section_header:
|
386
|
+
title: # Title text goes here (i.e. "This is my title!")
|
387
|
+
icon:
|
388
|
+
name: # Name of icon (i.e. "icon-app")
|
389
|
+
color: # Color of icon (i.e. "yellow")
|
390
|
+
|
391
|
+
```
|
392
|
+
|
393
|
+
### Sessions
|
394
|
+
|
395
|
+
<img src="/assets/images/contributing/landing_page_screenshots/sessions.png" width=400>
|
396
|
+
|
397
|
+
The `sessions` content block is a pre-defined set of information that takes no parameters. Once you add it to your config file, it will populate with links to past DevRel presentations. To add it to your config file, just reference it:
|
398
|
+
|
399
|
+
```yaml
|
400
|
+
|
401
|
+
- type: sessions
|
402
|
+
|
403
|
+
```
|
404
|
+
|
405
|
+
### Structured Text
|
406
|
+
|
407
|
+
<img src="/assets/images/contributing/landing_page_screenshots/structured_text.png" width=400>
|
408
|
+
|
409
|
+
The `structured_text` content block provides the styling for a block of text content that features a title and subsequent paragraphs of text. The text `content` can render markdown formatting. It takes the following required parameters:
|
410
|
+
|
411
|
+
```yaml
|
412
|
+
|
413
|
+
- type: structured_text
|
414
|
+
structured_text:
|
415
|
+
header: # Header text (i.e. "Who Owns Your Work?")
|
416
|
+
text:
|
417
|
+
- content: # Text content here, including markdown formatting (i.e. "You do!...")
|
418
|
+
type: # "large" or "small"
|
419
|
+
|
420
|
+
```
|
421
|
+
|
422
|
+
You can specify as many `text` blocks as you would like. Each `text` block consists of `content` and `type`.
|
423
|
+
|
424
|
+
There is also an optional icon parameter for the `structured_text` content block. You can include it with the following:
|
425
|
+
|
426
|
+
```yaml
|
427
|
+
|
428
|
+
icon:
|
429
|
+
name: # Icon name (i.e. "icon-merge")
|
430
|
+
color: # Icon color (i.e. "blue")
|
431
|
+
|
432
|
+
```
|
433
|
+
|
434
|
+
### Submit your Idea Form
|
435
|
+
<img src="/assets/images/contributing/landing_page_screenshots/submit_your_idea_form.png" width=400>
|
436
|
+
|
437
|
+
The `submit_your_idea_form` content block creates a form that submits to a zapier's hook.
|
438
|
+
It requires the following parameters:
|
439
|
+
|
440
|
+
```yaml
|
441
|
+
- type: submit_your_idea_form
|
442
|
+
submit_your_idea_form:
|
443
|
+
header: "Submit Your Idea"
|
444
|
+
icon:
|
445
|
+
name: "icon-envelope"
|
446
|
+
color: blue
|
447
|
+
```
|
448
|
+
|
449
|
+
### Table
|
450
|
+
|
451
|
+
<img src="/assets/images/contributing/landing_page_screenshots/table_partial.png" width=400>
|
452
|
+
|
453
|
+
The `table` content block provides you with the ability to insert a table into your landing page, including with markdown formatting for the data in the table body. It is structured as follows:
|
454
|
+
|
455
|
+
```yaml
|
456
|
+
- type: table
|
457
|
+
table:
|
458
|
+
head:
|
459
|
+
- content: # First column header
|
460
|
+
- content: # Second column header
|
461
|
+
body:
|
462
|
+
- row:
|
463
|
+
- column: # First row, first column text
|
464
|
+
- column: # First row, second column text
|
465
|
+
- row:
|
466
|
+
- column: # Second row, first column text
|
467
|
+
- column: # Second row, second column text
|
468
|
+
```
|
469
|
+
|
470
|
+
You can specify as many header `content` and body row `column` blocks as you would like.
|
471
|
+
|
472
|
+
### Team Members
|
473
|
+
|
474
|
+
The `team_members` content block provides you with a graphical representation of all the team members inside the `config/team.yml` file.
|
475
|
+
|
476
|
+
```yaml
|
477
|
+
|
478
|
+
- type: team_members
|
479
|
+
|
480
|
+
```
|
481
|
+
|
482
|
+
### Text
|
483
|
+
|
484
|
+
<img src="/assets/images/contributing/landing_page_screenshots/text.png" width=200>
|
485
|
+
|
486
|
+
The `text` content block provides you a space to insert plain text into your landing page, including with markdown formatting. It is structured as follows:
|
487
|
+
|
488
|
+
```yaml
|
489
|
+
|
490
|
+
- type: text
|
491
|
+
text:
|
492
|
+
content: # Text goes here (i.e. "This is a **Text** example")
|
493
|
+
|
494
|
+
```
|
495
|
+
|
496
|
+
### Tutorial
|
497
|
+
|
498
|
+
<img src="/assets/images/contributing/landing_page_screenshots/tutorial.png" width=200>
|
499
|
+
|
500
|
+
The `tutorial` content block lets you link to a tutorial and show a tutorial image, if one exists, and a tutorial title and description. The only parameter it requires is the `name` of the tutorial file on Nexmo Developer. The renderer will retrieve the rest of the details from the tutorial file itself:
|
501
|
+
|
502
|
+
```yaml
|
503
|
+
|
504
|
+
- type: tutorial
|
505
|
+
tutorial:
|
506
|
+
name: # Name of tutorial (i.e. two-factor-authentication-dotnet-verify-api)
|
507
|
+
|
508
|
+
```
|
509
|
+
|
510
|
+
### Unordered List
|
511
|
+
|
512
|
+
<img src="/assets/images/contributing/landing_page_screenshots/unordered_list.png" width=400>
|
513
|
+
|
514
|
+
The `unordered_list` content block lets you create a list of items and specify the shape of the list bullet item symbol. It accepts the following required parameters:
|
515
|
+
|
516
|
+
```yaml
|
517
|
+
|
518
|
+
- type: unordered_list
|
519
|
+
unordered_list:
|
520
|
+
list:
|
521
|
+
- item: # First item in list
|
522
|
+
- item: # Second item in list
|
523
|
+
- item: # Third item in list
|
524
|
+
- item: # Fourth item in list
|
525
|
+
|
526
|
+
```
|
527
|
+
|
528
|
+
As mentioned, you can also specify the shape of the bullet symbol with the `bullet_shape` parameter:
|
529
|
+
|
530
|
+
```yaml
|
531
|
+
|
532
|
+
bullet_shape: # Shape of bullet, if not defined it will default to a circle (i.e square)
|
533
|
+
|
534
|
+
```
|
535
|
+
|
536
|
+
### Warning Callout
|
537
|
+
|
538
|
+
The `warning_callout` content block provides an element to render a warning message. The block consists of a bordered message with an "i" information icon on the left-hand side and the warning text provided in the `content` parameter:
|
539
|
+
|
540
|
+
```yaml
|
541
|
+
|
542
|
+
- type: warning_callout
|
543
|
+
warning_callout:
|
544
|
+
content: # Warning message goes here
|
545
|
+
|
546
|
+
```
|
547
|
+
|
548
|
+
### Write for Nexmo
|
549
|
+
|
550
|
+
The `write_for_nexmo` content block will provide a call to action element to Write for Nexmo with a Developer Spotlight graphic on the left-hand side and text advertising the Write for Nexmo program on the left-hand side.
|
551
|
+
|
552
|
+
```yaml
|
553
|
+
|
554
|
+
- type: write_for_nexmo
|
555
|
+
|
556
|
+
```
|