DEV Community

Anna Wijetunga
Anna Wijetunga

Posted on

1

JavaScript Project

Thank you for being here! Originally publish in March of 2020!

This project is a single page application (SPA) built using a JavaScript frontend and a Rails API backend.

Why a home maintenance app?

As a home owner, there are more projects than days of the year - most of which aren't urgent but do need attention. Say hello to Fixit, a home maintenance app designed for renters or owners to track what needs to be attended to around the home.

Language and skills implemented

I built this project using a Rails API for the backend and JavaScript for the frontend. My toolset included Visual Studio Code (editor/terminal), GitHub (to store my repository), as well as Postgres for my database.

Feature Highlight

Each user who interacts with this app gets to add their family (or roommate) information as well as any home projects that need attention. It's a very simple way to store tasks that might not get done immediately but do need to get done. A user can update the status of any project - whether it's complete or incomplete - and have a very quick look at which project they'd like to target next.

Hurdles Jumped

I thought building a Rails app was complex, but I think this one took the cake. Troubleshooting this app's code was a real hunt at times, and I found it hard to get into a routine.

The biggest hurdle was making sure I understood exactly where the issue was located. When an error message appeared or when the app wasn't responding in the intended way, I first had to ask, is this a backend or frontend issue? If it had to do with models, controllers, serializers or routes, check the backend. If it had to do with the app's behavior or what a button should be doing, check the frontend.

Toggling back and forth between backend and frontend meant moving more slowly and taking baby steps to figure out 1) where to look and 2) how to solve the issue. There was only one thing that really helped me keep moving:

Experiment.

I didn't always know where to look or what to look for, so I told myself to just try something. Any movement means progress - even if I'm figuring out what's not the issue, at least it's one clue.

What's Next

My ultimate goal was to build a program that was relatively functional all along. But my secondary goal was to add an interative quality - and the pop-up buttons served that purpose. Something to really showcase that the page didn't need to refresh to show new data.

Having accomplished both, I do have a wish-list for when time becomes more abundant:

1) All families and all projects are accessible to anyone. To make this more private and more accessible to more families, I would create a login so you could only see your own family name and your own projects.

To see it for yourself, head here: GitHub

Thanks so much for reading through! To comment or get in touch, please see the links below. - Anna

Connect with Me Twitter LinkedIn

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

SurveyJS custom survey software

Simplify data collection in your JS app with a fully integrated form management platform. Includes support for custom question types, skip logic, integrated CCS editor, PDF export, real-time analytics & more. Integrates with any backend system, giving you full control over your data and no user limits.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay