||| This project is a Work In Progress |||
A "social" media platform with the goal of complete anonymity of users.
The Masque platform uses an API built in Ruby on Rails, for mobile devices - the front end is built using React-Native with plans to build a standard web version using React in the future.
-
The requirements for running this application locally are the same as any React-Native application, of course with additional dependancies provided by npm.
-
At the time of writing, the API is not deployed anywhere and thus must also be installed and launched locally. Once this repository is cloned, dependencies must be met through:
npm i
This project uses Expo, and so the Expo app must be installed from the Google Play/Apple app store prior to local development.
If local development is being performed on an android mobile device connected through USB, basic port-reversing will be required to connect to the local API, a quick setup can be performed through adb:
adb kill-server adb devices adb -s <DEVICE_ID> reverse tcp:<API_PORT> tcp:<API_PORT>
This allows the port used on your mobile device to send and recieve data to/from a locally run API. Currently no testing has been done on IOS, documentation to follow.
Once your local environment is setup,
expo start
to run the app locally. -
- This project uses React hooks for state management such as useState and useEffect, along with any custom hooks. The project also tries to follow an atomic component structure. The basic idea being to split components into organisms, molecules and atoms. organisms being made of many molecules, and molecules being made of many atoms.
- Navigation through the app is accomplished through React-Navigation, using a combination of Stack and Bottom-tab navigation.
-
As stated previously, the API can be found in a different repo. Requests to the API are done through axios. All requesting methods should be kept to the
/services
directory.
-
I'm more than happy discuss anything you find on this repo, please feel free to contact me at [email protected] for any discussion or feedback.
-
This project does not carry a license, and therefore all rights are currently reservedd and this project is not open-source. If you wish to modify or redistribute this project please reach out using the email provided above.