Skip to content

DevSkillsHQ/transaction-management-backend-level-1

Repository files navigation

Transaction Management Backend - Level 1

Your task is to build a backend app that fulfills the Transaction Management API and make the provided API tests pass.

Please agree with your hiring team regarding the tech stack choice.

Before you get started

If you run into a problem

Head over to our community on GitHub to get assistance.

Import a boilerplate project

We have created a set of boilerplate projects for different tech stacks to help you get started quicker.

To import a boilerplate project:

  1. Check out this list to pick a desired boilerplate and copy its name (e.g., backend-boilerplate-php-laravel).
  2. Go to the "Actions" tab of your GitHub repository and select the "Setup boilerplate" workflow in the left side panel.
  3. In the "Run workflow" dropdown, paste the previously copied boilerplate name along with the branch name where you want the boilerplate to be imported (e.g., implementation) and click the "Run workflow" button.
  4. After the workflow has finished, your selected boilerplate will be imported to the specified branch, and you can continue with your task there.
If you instead want to use a custom setup, complete the steps below to make the E2E tests run correctly.
  1. Update the apiUrl (where your backend runs) in cypress.json.
  2. Update the build and start scripts in package.json to respectively build and start your app.

Working in a Gitpod environment

If you prefer to avoid installing dependencies like npm on your local machine, Gitpod offers a handy solution. It provides free access to preconfigured, in-browser IDEs that are ready for immediate use.

To utilize this for your repository, here's what you need to do:

  1. Go to 'https://gitpod.io/#your-repo-url', replacing 'your-repo-url' with the actual URL of your repository. For instance, 'https://gitpod.io/#https://github.com/octocat/Hello-World'.
  2. Authenticate using your GitHub account.

By following these steps, you'll quickly find yourself in an environment tailored for your coding test.

Try running the API tests

Remotely on the GitHub Actions pipeline

Push your code to the new implementation branch (create it if it doesn't exist), which will trigger a new pipeline run that will run the tests.

Check the 'Actions' tab to see the historical runs.

Locally with npm

Prerequisites

  1. Install node
  2. Start your app

Run the tests

 npm run test

You can either use the console output or generated screenshots/videos (check the newly created files that appear after a test run) to troubleshoot the test results.

What we expect from you

  1. Make the provided API tests pass.
  2. Keep server data in a SQLite database. We want to see how you design the database schema and SQL queries.
  3. Push your code to the new implementation branch. We encourage you to commit and push your changes regularly as it's a good way for you to showcase your thinking process.
  4. Create a new pull request, but please do not merge it.
  5. Document the tech decisions you've made by creating a new review on your PR (see how).
  6. Await further instructions from the hiring team.

Time estimate

Between 1-3 hours depending on your experience level + the time to set up the project/environment (go with one of the provided boilerplates to move quicker).

Also, there is no countdown. The estimate is for you to plan your time.


Authored by Alva Labs.

About

No description or website provided.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published