The following are programming languages and technology that DeerX mobile application uses. This list is sorted increasing order of complexity.
All the topics in this article is a subset of the Frontend Engineer roadmap, available at roadmap.sh/frontend. You can find the Youtube channel explaining all the topics in the Roadmap site here at @roadmapsh. If you want to learn more, we encourage you to dig deeper on each of the topic listed here, starting on the Roadmap website.
- Programming Language and Technology Hierachy
- Table of content
- Git
- HTML, CSS, JS
- Terminal / Shell
- Typescript
- TailwindCSS
- ReactJS
- Typescript With ReactJS
- React Native
A basic knowledge of Git is recommended to setup the development environment. Check out the video below for a brief overview of what Git is.
A basic understanding of HTML, CSS, and Javascript is required to understand more advanced technology and how it fits in. These youtube video provides brief overview knowledge of what they are.
Extra resources:
- JavaScript for the Haters
- 100+ JavaScript Concepts you Need to Know
- JavaScript Promise in 100 Seconds
It is recommended that you know some basic usage of the Shell - which usually Bash, or anything syntactically similar like zsh. A common way to access a Shell on your computer is the Terminal application if you're using MacOS.
DeerX is developed mainly using Typescript, which is a superset of the Javascript programing language infused with static type check. You can learn more about those language using the following introduction videos. Watch the introduction videos in the order below, feel free to google any terminology in those video that you don't fully understand (feel free to message me).
TailwindCSS is a way of writing CSS in HTML as classes. DeerX mobile application uses Tailwind as the main way to style the UI.
Extra resources:
A prerequiresites for the main technology behind DeerX mobile application: React Native.
Extra resources:
- React for the Haters in 100 Seconds
- 10 React Hooks Explained // Plus Build your own from Scratch
- 10 React Antipatterns to Avoid
By default, as the name suggests, React is JS library. All of the Mobile Application team's code is written in Typescript, so it is required to understand how to write React code in Typescript.
React Native is syntactically similar to ReactJS. These 2 technologies shares a plenty of concepts and design patterns. With a solid background in ReactJS, React Native should be straight forwards to wrap your head around.