Skip to content

bbarcesaj125/todone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

toDone - a Full Stack React/Node Todo App

License: MIT Repository Size

toDone Logo

This is a simple Todo application that is entirely written in TypeScript.

Introduction

toDone is a full stack Todo application that I wrote using the PERN stack (PostgreSQL, ExpressJS, ReactJS, NodeJS). The PERN stack is one of the most widely used JavaScript stacks in the Web development industry. I chose this stack because I have some familiarity with it as I already used it to create projects.

Technical details

toDone is a hybrid Web application. By hybrid, I mean that the application has a dual operating mode. It can run either as a client-side only application or as a typical full stack application with a client/server architecture. This behavior is controlled by environments variables. For example, if you want to run toDone as a client-side only application, you can put the following line in your .env file:

REACT_APP_SERVER=false

On the other hand, if you want to run it as full stack application, you can set the REACT_APP_SERVER environment variable to true.

If toDone is used as client-side only application, it will use Local Storage to store and update the tasks. If you opted for the full stack option, the application will then store the tasks in a PostgreSQL database using a NodeJS server.

Used technologies

  • ReactJS
  • NodeJS
  • PostgreSQL
  • ExpressJS
  • Styled components
  • TypeORM
  • Jest

The application also has a Dark Mode which I implemented using Styled Components. I am a big fan of this mode, so I thought it would be cool to have it in my application:

toDone light mode

toDone dark mode