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 allows the recording of financial transactions and viewing the transaction history.

It should implement the Transaction Management API specification, which is defined in the Open API format.

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

Additional requirements

  • Do your best to make the provided E2E tests pass.
  • Keep server data in a SQLite database. We want to see how you design the database schema and SQL queries.

Getting started

If you run into a problem

Navigate to our community on GitHub to get assistance.

Import a starter project

We have created a set of starter projects with different tech stacks to help you get started quickly.

To import a starter project:

  1. Go to the "Actions" tab of your GitHub repository and select the "Setup boilerplate" workflow in the left side panel.
  2. In the "Run workflow" dropdown, select the desired boilerplate along with the branch name where you want the boilerplate to be imported (e.g., implementation) and click the "Run workflow" button (you can find all starter projects' definitions here).

After the workflow has finished, your selected boilerplate will be imported to the specified branch, and you can continue from there.

⚠️ Custom setup

If you instead want to set up a custom project, complete the steps below to make the E2E tests run correctly:

  1. Update the baseUrl (where your frontend runs) in cypress.config.js.
  2. Update the build and start scripts in package.json to respectively build and start your app.
Prepare for coding

To get this repository to your local machine, clone it with git clone.

Alternatively, spin up a pre-configured in-browser IDE by clicking on the "Code" tab in this repository and then "Create codespace on {branch_name}".

CleanShot 2023-10-13 at 00 00 32@2x

Running the E2E tests

⚠️ Before executing the tests, ensure Node is installed and your app is running.

npm install
npm run test

Submitting your solution for review

  1. Create a new implementation branch on this repository and push your code there.
  2. Create a new pull request from implementation without merging it.
  3. Document the tech decisions you've made by creating a new review on your PR (see how).
  4. Await further instructions from the hiring team.

Time estimate

Between 1 - 3 hours + the time to set up the project/environment (we suggest importing one of the provided project starters to save time).

However, 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