Projects

Throughout my journey as a Software Engineer, I have had the opportunity to create and contribute to various projects. Some of these include:

This website

Douglasgoulart.com is my personal space. This is where I like to share some cool stuff I learn along my way as a software engineer. It's also where you can find some additional information about me, including all my links.

  • Architected, created and developed the entire application;
  • Designed the UI from scratch on Figma;
  • Built all the front-end components;
  • Used Next.js API routes to integrate with external APIs like Spotify and Mailchimp;
  • Wrote unit tests using Jest and React Testing Library;
  • Used MDX to write customized and rich blog posts;
  • Used Storybook to build and display UI components in isolation;
Tech stack: TypeScript, Next.js, React.js, Storybook, Styled-Components, Jest, React Testing Library, ESLint, Prettier.

Appointful

Appointful is an API made in Node.js to manage dentist appointments. There you can list dentists and appointments, schedule appointments, cancel appointments and much more.

  • Applied design patterns such as Factory, Adapter, Composite and many more;
  • Applied SOLID principles;
  • Wrote unit and end-to-end tests with Vitest to assert that everything works flawlessly;
  • Documented API routes with Swagger;
  • Used Prisma with PostgreSQL to persist and retrieve data;
  • Deployed both database and application to production with Render.com;
Tech stack: TypeScript, Node.js, Express.js, PostgreSQL, Prisma, ESLint, Prettier, Vitest, Swagger.

React Native Sortable Gallery

A React Native component that allows you to sort a gallery of images. This component allows you to keep track of the order of your images and be able to organize them in an easy and performative way.

  • Developed the entire project;
  • Used React Native with Expo to build the application;
  • Used React Native Reanimated and React Native Gesture Handler to allow users to drag and drop images in a clean, performative way;
  • Used ESLint and Prettier to ensure code quality and enforce coding standards;
  • Used Husky and lint-staged to make sure that code standards are maintained before pushing to production;
  • Used TypeScript to ensure type-safety;
Tech stack: TypeScript, React Native, Expo, React Native Reanimated, React Native Gesture Handler, ESLint, Prettier, Husky, lint-staged.
See all my projects