This is the application for the Shopify Backend Developer Intern Challenge - Fall 2021.
You can see it running here.
This application was made using AdonisJS
After beeing registered, you can add image to your account with a price and chose to sell it, you can also edit/delete images. Images to sell are displayed on the front page and you can buy them if you have enough in your balance. You start with $100 in your balance.
SQLite was used for the database. It eases the local setup of the application and was good enough for this.
If you wish to run it locally, you need to
- Clone the repository
- Install the dependencies:
npm install
- Run the migrations:
node ace migration:run
- Run the development server:
npm run dev
There is also tests and tests coverage that you can run with npm run test
and npm run coverage
.
A quick overview of the project structure. This project follow the MVC principle so you will find Models, Controllers, Views and a Router.
app/controllers
: the controllers of the applicationapp/models
: the models of the applicationresources/views
: the views of the applicationstart/routes.ts
: this is where we register our routesdatabase/migrations
: the migrations for the database schematest
: test folder