diff --git a/.github/workflows/ai-deploy-request.yml b/.github/workflows/ai-deploy-request.yml new file mode 100644 index 000000000..4ae188a70 --- /dev/null +++ b/.github/workflows/ai-deploy-request.yml @@ -0,0 +1,45 @@ +--- +########################### +########################### +## Deployment AI generation testing ## +########################### +########################### + +name: Hackathon Deployment Request + +###################################################### +# Start the job on a "deployment" to hackathon-test or other branch # +###################################################### + +on: + workflow_dispatch: + inputs: + target_branch: + description: "Target branch to send PR to (e.g., main, stage, etc)" + type: string + required: false + default: "hackathon-test" + +############### +# Set the Job # +############### + +jobs: + ai-metadata-update: + name: AI Metadata Update on Deployment + uses: AdobeDocs/adp-devsite-workflow/.github/workflows/ai-deploy-metadata.yml@app-builder-test + with: + FILE_NAME: "all_pages_content.txt" + secrets: + AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }} + AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }} + + lint: + name: Lint + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Lint + run: npx --yes github:AdobeDocs/adp-devsite-utils#add-lint-check runLint -v diff --git a/.github/workflows/ai-pr-request.yml b/.github/workflows/ai-pr-request.yml new file mode 100644 index 000000000..e738dea27 --- /dev/null +++ b/.github/workflows/ai-pr-request.yml @@ -0,0 +1,40 @@ +--- +########################### +########################### +## Pull request testing ## +########################### +########################### +name: Hackathon Pull Request + +# Documentation: +# - Workflow: https://help.github.com/en/articles/workflow-syntax-for-github-actions +# - SuperLinter: https://github.com/github/super-linter +# - Markdown linter: https://github.com/DavidAnson/markdownlint +# - Link validation: https://github.com/remarkjs/remark-validate-links + +###################################################### +# Start the job on a pull request to the hackathon-test branch # +###################################################### +on: + pull_request: + branches: [hackathon-test] + paths: + - 'src/pages/**' + +############### +# Set the Job # +############### +jobs: + call_reusable_workflow: + name: Generate AI Metadata + # Skip if PR title starts with "[AI PR] Metadata Update" or branch name starts with "ai-metadata" + if: >- + !startsWith(github.event.pull_request.title, '[AI PR] Metadata Update') || + !startsWith(github.event.pull_request.head.ref, 'ai-metadata') + uses: AdobeDocs/adp-devsite-workflow/.github/workflows/ai-pr-request-metadata.yml@app-builder-test + with: + PR_ID: ${{ github.event.pull_request.number }} + FILE_NAME: "pr_content.txt" + secrets: + AZURE_OPENAI_ENDPOINT: ${{ secrets.AZURE_OPENAI_ENDPOINT }} + AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }} diff --git a/src/pages/get_started/adobe-express (1).svg b/src/pages/get_started/adobe-express (1).svg new file mode 100644 index 000000000..b7f4834d4 --- /dev/null +++ b/src/pages/get_started/adobe-express (1).svg @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/src/pages/get_started/random.json b/src/pages/get_started/random.json new file mode 100644 index 000000000..190cbf3ed --- /dev/null +++ b/src/pages/get_started/random.json @@ -0,0 +1,385 @@ +{ + "total": 1, + "offset": 0, + "limit": 1, + "data": [ + { + "SignIn": { + "title": "Get credentials", + "paragraph": "Create unique credentials that you will use to call multiple APIs from your application.", + "buttonText": "Sign in to create credentials" + }, + "Form": { + "title": "Get credentials", + "paragraph": "Create unique credentials that you will use to call multiple APIs from your application.", + "className": "formClass", + "components": { + "CredentialName": { + "label": "Credential name", + "description": "Credential name must be unique and between 6 and 45 characters long and must not contain any special characters. A project will be automatically created with the same name in Adobe Developer Console.", + "range": "45" + }, + "AllowedOrigins": { + "label": "Allowed domains (up to 5)", + "contextHelp": true, + "contextHelpHeading": "What are allowed domains", + "placeholder": "Example: www.domain-1.com, www.domain-2.com, *.my-domain.com, localhost:5000", + "contextHelpText": "To prevent a third party from using your client ID on their own website, the use of your client ID is restricted to a list of domains that you specifically authorize.", + "contextHelpLink": "https://www.adobe.com/", + "contextHelpLabelForLink": "Learn more in our documentation", + "description": "Use wildcards to enter multiple subdomains (*.my-domain.com) or commas to separate multiple domains (www.domain-1.com, www.domain-2.com). During local development, you can include ports greater than 1023 with localhost (e.g. localhost:3000). Standard ports (80, 443) will be used for non-localhost domains." + }, + "Products": { + "label": "Included products and services", + "items": [ + { + "Product": { + "label": "Adobe Express Embed SDK", + "icon": "creativeCloud" + } + } + ] + }, + "Downloads": { + "label": "Download a personalized code sample", + "contextHelp": true, + "contextHelpHeading": "Select Language", + "items": [ + { + "Download": { + "title": "JavaScript", + "href": "https://acrobatservices.adobe.com/dc-integration-creation-app-cdn/8bab684/files/samples_q3_2023/PROD/dc-pdf-services-sdk-java-samples.zip" + } + }, + { + "Download": { + "title": ".Net", + "href": "/Net.zip" + } + }, + { + "Download": { + "title": "Python", + "href": "https://python.zip/" + } + }, + { + "Download": { + "title": "Ruby", + "href": "https://www.ruby.zip/" + } + } + ] + }, + "AdobeDeveloperConsole": { + "label": "By checking this box, you agree to", + "linkText": "Adobe Developer Terms of Use", + "href": "https://wwwimages2.adobe.com/content/dam/cc/en/legal/servicetou/Adobe-Developer-Additional-Terms_en-US_20230822.pdf" + }, + "Side": { + "content": { + "style": { + "display": "flex", + "gap": "16px", + "flexDirection": "column" + }, + "elements": [ + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeS side-header", + "text": "API key credential" + }, + { + "type": "p", + "className": "spectrum-Body spectrum-Body--sizeM", + "text": "Submitting this form creates an API Key credential. The API key credential identifies your application to Adobe servers and can help accept or reject requests originating from certain domains." + }, + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeS side-header", + "text": "Learn more" + }, + { + "type": "a", + "className": "side-documentation", + "style": { + "color": "#0265DC" + }, + "href": "https://some_help_link", + "text": "Authentication documentation" + }, + { + "type": "a", + "className": "side-documentation", + "style": { + "color": "#0265DC" + }, + "href": "https://some_help_link", + "text": "Express Embed SDK documentation" + } + ] + } + } + } + }, + "UnknownError": { + "helpLink": "https://some_help_link", + "helpLinkText": "Get Help", + "className": "unKnownError" + }, + "Card": { + "title": "Your credential is ready to use", + "paragraph": "Check the downloads section of your browser for the ZIP file, or find it where you save downloads on your machine.", + "className": "card_developer_console", + "nextStepsLabel": "Next steps", + "nextStepsHref": "/credentials/nextsteps", + "isCollapsable": "true", + "components": { + "Side": { + "content": { + "style": { + "display": "flex", + "gap": "16px", + "flexDirection": "column" + }, + "elements": [ + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeS side-header", + "text": "API key credential" + }, + { + "type": "p", + "className": "spectrum-Body spectrum-Body--sizeM", + "text": "Submitting this form creates an API Key credential. The API key credential identifies your application to Adobe servers and can help accept or reject requests originating from certain domains." + }, + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeS side-header", + "text": "Learn more" + }, + { + "type": "a", + "className": "side-documentation", + "style": { + "color": "#0265DC" + }, + "href": "https://some_help_link", + "text": "Authentication documentation" + }, + { + "type": "a", + "className": "side-documentation", + "style": { + "color": "#0265DC" + }, + "href": "https://some_help_link", + "text": "Express Embed SDK documentation" + } + ] + } + }, + "Products": { + "label": "Included products and services", + "items": [ + { + "Product": { + "label": "Adobe Express Embed SDK", + "icon": "creativeCloud" + } + } + ] + }, + "DevConsoleLink": { + "heading": "Developer Console Project" + }, + "CredentialDetails": { + "heading": "Credential details", + "orderBy": "APIKey,OrganizationName,ImsOrgID,AllowedOrigins", + "components": { + "APIKey": { + "heading": "API Key" + }, + "AllowedOrigins": { + "heading": "Allowed domains" + }, + "OrganizationName": { + "heading": "Organization" + }, + "ImsOrgID": { + "heading": "IMS Organization ID" + } + } + } + } + }, + "Return": { + "title": "Previously created projects", + "paragraph": "Select a project and access your existing credentials for Firefly - Firefly and Creative Cloud Automation.", + "className": "card_developer_console", + "nextStepsLabel": "Next steps", + "nextStepsHref": "/credentials/nextsteps", + "isCollapsable": "true", + "components": { + "Side": { + "components": { + "Custom": { + "content": { + "style": { + "display": "flex", + "gap": "15px", + "flexDirection": "column", + "width": "100%" + }, + "elements": [ + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeM", + "text": "Welcome back" + }, + { + "type": "p", + "className": "spectrum-Body spectrum-Body--sizeM", + "text": "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation." + } + ] + } + }, + "NewCredential": { + "heading": "Need another credential?", + "buttonLabel": "Create new credential" + } + } + }, + "CredentialDetails": { + "heading": "Credential details", + "orderBy": "APIKey,OrganizationName,ImsOrgID,AllowedOrigins", + "components": { + "APIKey": { + "heading": "API Key" + }, + "AllowedOrigins": { + "heading": "Allowed domains" + }, + "OrganizationName": { + "heading": "Organization" + }, + "ImsOrgID": { + "heading": "IMS Organization ID" + } + } + }, + "ProjectsDropdown": { + "label": "Projects", + "subHeading": "Only your projects that contain credentials are shown" + }, + "ManageDeveloperConsole": { + "label": "Manage all your projects and credentials on Adobe Developer Console", + "direction": "/console/projects" + }, + "DevConsoleLink": { + "heading": "Developer Console Project" + }, + "Products": { + "label": "Included products and services", + "items": [ + { + "Product": { + "label": "Adobe Express Embed SDK", + "icon": "creativeCloud" + } + } + ] + } + } + }, + "RequestAccess": { + "title": "Get credentials", + "paragraph": "Create unique credentials that you will use to call multiple APIs from your application.", + "components": { + "EdgeCase": { + "components": { + "NoProduct": { + "title": "Your organization does not have access to Express Embed SDK", + "buttonLabel": "Contact us to learn more", + "buttonLink": "#someLink" + }, + "NotMember": { + "title": "Access to Express Embed SDK APIs is not available at this time.", + "buttonLabel": "Learn more about Express Embed SDK", + "buttonLink": "#someLink" + }, + "NotSignUp": { + "title": "Express Embed SDK APIs is available as part of the beta program. Sign up for the program or log in to an account that has access.", + "buttonLabel": "Sign up for the beta", + "buttonLink": "#someLink" + } + } + }, + "RestrictedAccess": { + "title": "Restricted Access", + "buttonLabel": "Request access", + "components": { + "Products": { + "label": "Included products and services", + "items": [ + { + "Product": { + "label": "Adobe Express Embed SDK", + "icon": "creativeCloud" + } + } + ] + } + } + }, + "RequestAccessSide": { + "content": { + "style": { + "display": "flex", + "gap": "16px", + "flexDirection": "column" + }, + "elements": [ + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeS side-header", + "text": "API key credential" + }, + { + "type": "p", + "className": "spectrum-Body spectrum-Body--sizeM", + "text": "Submitting this form creates an API Key credential. The API key credential identifies your application to Adobe servers and can help accept or reject requests originating from certain domains." + }, + { + "type": "h3", + "className": "spectrum-Heading spectrum-Heading--sizeS side-header", + "text": "Learn more" + }, + { + "type": "a", + "className": "side-documentation", + "style": { + "color": "#0265DC" + }, + "href": "https://some_help_link", + "text": "Authentication documentation" + }, + { + "type": "a", + "className": "side-documentation", + "style": { + "color": "#0265DC" + }, + "href": "https://some_help_link", + "text": "Express Embed SDK documentation" + } + ] + } + } + } + } + } + ], + ":type": "sheet" +} \ No newline at end of file diff --git a/src/pages/getting_started/page-with-component.md b/src/pages/getting_started/page-with-component.md new file mode 100644 index 000000000..25ec6b18b --- /dev/null +++ b/src/pages/getting_started/page-with-component.md @@ -0,0 +1,12 @@ +[//]: # (Copied from https://github.com/AdobeDocs/cis-photoshop-api-docs/blob/119eb74473b3eeac12ea6e8f4630a8f59971b49d/src/pages/index.md?plain=1#L15-L21, https://developer.adobe.com/firefly-services/docs/photoshop/) +[//]: # (Other examples: https://stage--adp-devsite-stage--adobedocs.aem.page/github-actions-test/test/test-file) + + + +![Hero image](../../../assets/hero.png) + +# Adobe Photoshop and Lightroom API + +Unlock the potential of Photoshop, Lightroom, and cutting edge Sensei services through an easy-to-use RESTful API. + +[Get the SDKs](https://developer.adobe.com/console/servicesandapis/ae) \ No newline at end of file diff --git a/src/pages/hackathon-images/aep-foundation.png b/src/pages/hackathon-images/aep-foundation.png new file mode 100644 index 000000000..3d831be45 Binary files /dev/null and b/src/pages/hackathon-images/aep-foundation.png differ diff --git a/src/pages/images/banner.png b/src/pages/hackathon-images/banner.png similarity index 100% rename from src/pages/images/banner.png rename to src/pages/hackathon-images/banner.png