- Clone this repository.
- Complete exercises below by creating/modifying code. You can architect the project how you like re: folder structure, how you name your files, etc. Use your best judgement as a developer.
- Push the code to your own public Git repository, and send the link to your recruiter / rep.
- Pretend your code is going into a
PRODUCTIONenvironment, or that you are writing a pull request for an established open source project. Do not rush these exercises or cut corners in the name of speed. We aren't interested in the code you can write under pressure; no one writes amazing code when they are rushing. This is your chance to show off. Write your best code. - This exercise is to be completed without coaching or other outside assistance. Obviously, you may feel free to use whatever online resources you like --
StackOverflowetc. -- but it is not acceptable to utilize other developers to help you finish this task.
A form has the following fields: First Name, Last Name, Age, Country and a Submit button. A validation check is done when the user enters details and clicks on submit button. For the validation, fetch the node details /etc/age, having min and max age. If the user entered age lies in between the min and max value, all the user details will be saved inside JCR (under /var/anf-code-challenge) otherwise, an error message will be displayed with following text You are not eligible.
- Fetch node details from /etc/age having properties:
minAgeandmaxAge. - When submit button is clicked, validate the age and save the user details on a node under
/var/anf-code-challengeafter successful validation. - Populate the dialog dropdown (country component) dynamically using
JSONin DAM.
- Please refer to
exercises/Exercise-1folder and deployExercise-1.ziponto yourAEM 6.5.0 - Please make use of skeleton code in
custombutton.jsto handle the submit button click and callUserServlet.javato perform the required validations.
Every news feed item displays the following attributes:
- Title
- Author
- Current date
- Text/Description
- Image
- Create news feed component following Adobe’s best practices.
- Read the news data under
/var/commerce/products/anf-code-challenge/newsDataand display it in the component. - Write Unit test cases for the backend code using AEM Mocks
- Please refer to
exercises/Exercise-2folder and deployExercise-2.ziponto yourAEM 6.5.0
Fetch the first 10 pages under a given path /content/anf-code-challenge/us/en based on a property anfCodeChallenge.
- Write a query to fetch first 10 pages, be it:
XPath,SQL2orQueryBuilder. - Follow Adobe's best practices for better performance.
- Please refer to
exercises/Exercise-3folder and deployExercise-3.ziponto yourAEM 6.5.0
When a page is created, a property is saved at the page level.
- Create a page under
/content/anf-code-challenge/us/en. - As soon as the page is created, a property
pageCreated: {Boolean}trueshould be saved on it.



