Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lucasfontesgaspareto/nlw-setup-ignite

NLW Setup - Ignite - Habit to life
https://github.com/lucasfontesgaspareto/nlw-setup-ignite

expo fastify heroicons-react nlw-setup nodejs prisma reactjs reactnative rocketseat sqlite tailwindcss typescript vitejs

Last synced: 4 days ago
JSON representation

NLW Setup - Ignite - Habit to life

Awesome Lists containing this project

README

        


Taught by Rocketseat
Forks
Stars

![](./.github/cover.png)




# Habitto.life ๐Ÿ’ช

## ๐Ÿงช Technologies

This project was developed using the following technologies:

- [NodeJS](https://nodejs.org/)
- [TypeScript](https://www.typescriptlang.org/)
- [Fastify](https://www.fastify.io/)
- [Prisma](https://www.prisma.io/)
- [ViteJS](https://vitejs.dev/)
- [ReactJS](https://reactjs.org/)
- [TailwindCSS](https://tailwindcss.com/)
- [React Native](https://reactnative.dev/)
- [Expo](https://expo.io/)

## ๐Ÿงช SOLID

Principles:

- Single Responsibility Principle: Each class has a unique responsibility;
- Open/Closed Principle: Application classes must be open for extension but closed for modification;
- Liskov Substitution Principle: We should be able to replace a parent class with an inheritance from it and everything still works;
- Interface Segregation Principle: Segregate Interfaces;
- Dependency Inversion Principle: Instead of the class fetching the dependencies it needs, the context informs the class of the required dependencies;

## ๐Ÿš€ Getting started

Clone the project and access the folder.

```bash
$ git clone https://github.com/lucasfontesgaspareto/nlw-setup-ignite.git
$ cd nlw-setup-ignite
```

Follow the steps below:

### Web

```bash
# Install the web dependencies
$ cd web
$ npm install

# Start the web project
$ npm start
```

### Server

```bash
# Install the server dependencies
$ cd server
$ npm install

# Start the server project
$ npx prisma migrate deploy
$ npm run dev
```

### Mobile

```bash
# Install the mobile dependencies
$ cd mobile
$ npm install

# Start the mobile project
$ npm start
```

## ๐Ÿ”– Layout

You can view the project layout through the links below:

- [Layout]()

Remembering that you need to have a [Figma](http://figma.com/) account to access it.

---

Made with ๐Ÿ’œ by [lucasfontesgaspareto](https://github.com/lucasfontesgaspareto)๐Ÿ‘‹