Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stefanosaffran/fastfeet
FastFeet - A fictitious logistics company
https://github.com/stefanosaffran/fastfeet
javascript nodejs omnistack react-native reactjs rocketseat
Last synced: 17 days ago
JSON representation
FastFeet - A fictitious logistics company
- Host: GitHub
- URL: https://github.com/stefanosaffran/fastfeet
- Owner: StefanoSaffran
- License: mit
- Created: 2020-03-17T10:05:57.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-12-15T02:53:44.000Z (11 months ago)
- Last Synced: 2024-10-13T08:12:31.797Z (about 1 month ago)
- Topics: javascript, nodejs, omnistack, react-native, reactjs, rocketseat
- Language: JavaScript
- Homepage:
- Size: 4.55 MB
- Stars: 14
- Watchers: 2
- Forks: 2
- Open Issues: 40
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
FastFeet Fullstack app
💻 Project |
🚀 Built with |
ℹ️ Getting Started |
📃 License |
📬 Get in touch## :computer: Project
Fastfeet is a fictitious logistics company and the application consists of an api in NodeJS, a web app in ReactJS, that allows the admin to manage recipients, deliverymen and deliveries and a mobile app in React Native, that allows the deliveryman to see and update the status of his deliveries and inform if there are any problems with it.
## :rocket: Built with
This project was developed with the following technologies:
- [Node.js](https://nodejs.org/)
- [Express](https://expressjs.com/)
- [ReactJS](https://reactjs.org/)
- [React Native](https://facebook.github.io/react-native/)
- [Redux](https://redux.js.org/)
- [Redux-Saga](https://redux-saga.js.org/)
- [Redux-persist](https://github.com/rt2zz/redux-persist)
- [Styled-components](https://www.styled-components.com/)
- [React Navigation](https://reactnavigation.org/)
- [JWT](https://jwt.io/)
- [Immer](https://github.com/immerjs/immer)
- [Axios](https://github.com/axios/axios)
- [React-icons](https://react-icons.netlify.com/)
- [React-toastify](https://github.com/fkhadra/react-toastify)
- [Reactotron](https://infinite.red/reactotron)
- [Polished](https://polished.js.org/)
- [Yup](https://www.npmjs.com/package/yup)
- [Date-fns](https://date-fns.org/)
- [AWS S3](https://aws.amazon.com/pt/s3/)
- [Multer](https://github.com/expressjs/multer)
- [ESLint](https://eslint.org/)
- [Prettier](https://prettier.io/)
- [VS Code](https://code.visualstudio.com/)## :information_source: Getting Started
### Requirements
To run the application you will need:
* [Git](https://git-scm.com)
* [Node](https://nodejs.org/)
* [Yarn](https://yarnpkg.com/)I strongly recommend using [Docker](https://www.docker.com/) to run the databases.
If you decide to use docker, follow this steps to install and run the docker images.```bash
# install Redis image
docker run --name imageName -p 6379:6379 -d -t redis:alpine# install Postgres image (if you don't specify an username it will be postgres by default)
docker run --name imagename -e POSTGRES_PASSWORD=yourPassword -p 5432:5432 -d postgres# start Redis
docker start imageName# start Postgres
docker start imageName```
### Backend
Now clone the repository and install the dependencies.
```bash
# to clone the repository
git clone https://github.com/StefanoSaffran/fastfeet.git# go into the backend folder
cd fastfeet/backend#install the backend dependencies
yarn```
In order to connect to the database, you will need to enter the access informations into a .env file, based on a .env.example file that is provided in the backend folder, change the variables according to your environment.
```bash
# run migrations
yarn sequelize db:migrate# run seeds
yarn sequelize db:seed:all# run api
yarn dev & yarn queue
```
### Frontend```bash
# in another tab of the terminal install the frontend dependencies and run it
cd frontend
yarn
yarn start
```
Use this credentials to access the web application
email: [email protected]senha: 123456### Mobile
The Application was developed using Expo. It is a free and open source toolchain built around React Native to facilitate the process of running and testing applications. [Click here](https://expo.io/learn) to get start with Expo.
```bash
# install the dependencies
cd mobile
yarn
```In order to run the application on your device, you need to change the ip config.
[api.js](https://github.com/StefanoSaffran/fastfeet/blob/master/mobile/src/services/api.js)
```javascript
baseURL: 'http://192.168.0.185:3333',
```
replace 192.168.0.185 with your machine's ip.If you want to use Reactotron change the ip in the Reactotron config file.
[ReactotronConfig](https://github.com/StefanoSaffran/fastfeet/blob/master/mobile/src/config/ReactotronConfig.js)
```javascript
.configure({ host: '192.168.0.185' })
```Now with everything on place, run the application.
```bash
# to run the app
yarn start```
Expo will open a page in your browser, scan the QRcode on the page and wait for the app to load.> The Application was developed and tested on Iphone 6s
---
## :page_with_curl: License
This project is under the MIT license. See the [LICENSE](https://github.com/StefanoSaffran/fastfeet/blob/master/LICENSE) for more information
## :mailbox_with_mail: Get in touch!
---
Made with :coffee: and ❤️ by Stefano Saffran.