proffy
proffy copied to clipboard
Online teaching platform made with React.js and React Native using Typescript during the NLW (Next Level Week) #02 🚀
Online teaching platform made with React.js and React Native using Typescript during the NLW (Next Level Week) #02🚀
Content
-
Getting Started
- Cloning
-
Requirements
- Web
- Server
- Mobile
- Running
-
Issues
- Report
- ~~Trouble Shooting~~
- Contributing
- Todo
- License
Getting Started 🚀
Cloning
# Clone the repository using git
$ git clone https://github.com/pmqueiroz/proffy.git
# Access the project folder
$ cd proffy
Requirements
Web
This project use third party dependencies that need to be installed, use that command to install all needed dependencies
$ cd web
$ yarn install
The above command will install all third party dependencies used. If you want to install manually all the dependencies follow the steps bellow
# Entering in web directory
$ cd web
# Installing depencies
$ yarn add @types/react-router-dom -D
$ yarn add axios
To start the server you need the database, to make migrations use the command:
$ yarn knex:migrate
The above command is a custom command made on
package.json
file. (Ln 8, Col 5)
Server
This project use third party dependencies that need to be installed, use that command to install all needed dependencies
$ cd server
$ yarn install
The above command will install all third party dependencies used. If you want to install manually all the dependencies follow the steps bellow
# Entering in server directory
$ cd server
# Installing depencies
$ yarn add @types/cors -D
$ yarn add @types/express -D
$ yarn add ts-node-dev -D
$ yarn add knex
# Proffy Version 2.0
$ yarn add pg
$ yarn add dotenv
Mobile
This projects use third party dependecies and fonts that need to be installed in development, use that command to install all needed dependencies and fonts
$ cd mobile
# Installing all fonts used
$ expo install expo-font @expo-google-fonts/archivo @expo-google-fonts/poppins
# Installing all dependencies required
$ yarn install
The above command will install all third party dependencies and fonts used. If you want to install manually all dependencies and fonts used. follow the steps bellow
# Installing fonts used
$ expo install expo-font @expo-google-fonts/archivo
$ expo install expo-font @expo-google-fonts/poppins
# Installing dependecies required
$ yarn add @react-navigation/native
$ expo install react-native-gesture-handler react-native-reanimated react-native-screens react-native-safe-area-context @react-native-community/masked-view
$ yarn add @react-navigation/stack
$ yarn add @react-navigation/bottom-tabs
$ yarn add axios
$ expo install @react-native-community/async-storage
Running
To start the Web Server run the command
# Entering in web directory
$ cd web
# Run the web server
$ yarn start
To start the Back Server run the command
# Entering in Server directory
$ cd server
# Run the Back Server
$ yarn start
To run the mobile version run the command
# Entering in Mobile directory
$ cd mobile
# Run the Mobile Version
$ yarn start
Issues 🐛
Report
In case you are having any problem do not be shy to report to us in Issues session.
Contributing 🤝
There are many forms to contribute with the project, first of all you can give this github repo a Star.
If you want do help with the code follow the steps bellow
# Fork using GitHub official command line
# If you don't have the GitHub CLI, use the web site to do that.
$ gh repo fork pmqueiroz/proffy
# Clone your fork
$ git clone {your-fork-url}
$ cd proffy
# Create a branch with your feature
$ git checkout -b {branch-name}
# Make the commit with your changes
$ git commit -m 'Feat: {feature-name}'
# Send the code to your remote branch
$ git push origin {branch-name}
Then send a Pull Request that will be analyzed and approved if it helps with the project
Todo 📌
Version 2.0 Features
- [x] Splash screen
- [x] Extended layout
- [x] Login
- [x] Remember me
- [x] Sign In
- [ ] Succeed Screen
- [x] Login
- [ ] User auth
- [x] Web
- [ ] Mobile
- [x] User logout
- [x] Save favorite teachers
- [ ] Rating system
- [ ] Password recovery
- [ ] Teacher profile
- [ ] Pagination of classes result
- [ ] Show teacher schedule hours
- [ ] Deploy
License 📝
This project is under the MIT license. See the LICENSE for more information.