Skip to content

Latest commit

 

History

History
68 lines (42 loc) · 3.45 KB

README.md

File metadata and controls

68 lines (42 loc) · 3.45 KB

Finance App Trial Project

This project proposal has been put together to help developers who are applying for new positions but don't have any sample code to provide during the hiring process.

We've put together a basic Laravel starter app, which includes authentication scaffolding. To get started, run the following commands:

composer install
php artisan migrate
npm install
npm run dev

After signing up, you'll be redirected to the user's dashboard. This is a static HTML representation of the dashboard mockup built using Tailwind CSS.

Requirements

The trial project should be built using Laravel and Vue.js and should demonstrate your abilities with these frameworks. The project is split into two deliverables: a CRUD app and a CSV import feature.

Phase 1 - CRUD

Dashboard

A list of the user's balance entries should be shown by default. Entries should be grouped by date. Although pagination is missing from the mockups, feel free to add basic pagination if you get time.

Add Entry

A user should be able to add single balance entries. Adding a new entry should update the balance list and the total balance.

Edit & Delete Entry

Hovering over an entry should show the edit and delete links.

Clicking 'Delete' should remove the entry from the list and update the total balance. Clicking 'Edit' should reveal the edit form.

Clicking 'Update Entry' should update the balance list and update the total balance.

Phase 2 - Import Entries

A CSV file of entries can be imported. The import should happen in the background. The 'Add Entry' and 'Import CSV' buttons should be disabled while the import is working, however, existing entries can be edited or deleted.

Imported entries should not appear in the balance list, until the entire import has completed. When the import is running, a notice should be shown with the count of entries currently being imported.

Get Started

  1. Please track your time to give me an idea of how long it takes you to complete each phase of the project.
  2. Clone this repo and then push it to your own separate GitHub repo under your account (please don't fork this repo)
  3. Create a new phase1 branch off of the main branch and make all your commits for Phase 1 to that branch
  4. When it's ready for review, push the branch to your GitHub repo
  5. Open a pull request (PR) against your repo (not spinupwp/finance-app-trial-project) to merge your branch into the main branch
  6. Reply to our email thread and let me know that Phase 1 is ready for review with a link to the PR and how much time you've put in so far
  7. Now you can either wait for our code review or continue with Phase 2, completely up to you
  8. When you're ready to proceed with Phase 2, create a new phase2 branch off of the phase1 branch
  9. When it's ready for review, push the branch to your GitHub repo and open another PR to merge the branch into the phase1 branch
  10. Reply to our email thread and let me know that Phase 2 is ready for review with a link to the PR and how much time you've put in so far
  11. If you make your repo private, grant access to the following users: @georgefehr, @bradt, @Jamesclark32