This app was build as a finishing portfolio project for Codaisseur Academy. My decision to build interactive, lightweight mobile app was to showcase my skills as an React Native developer and to solidify and expand my understanding of used technologies.
-
Gain experience in React Native framework
-
Learn new UI frameworks
-
To gain more experience using GraphQL:
- setting up schemas and resolvers
- queries and subscriptions
-
Learn animations as a part of UX
https://github.com/mr-robak/messenger-client
https://github.com/mr-robak/messenger-client/projects/1
https://github.com/mr-robak/messenger-backend
https://github.com/mr-robak/messenger-backend/projects/1
-
React Native
-
Apollo CLI
-
GraphQL - queries - subscription/websockets
-
PostgreSQL
-
Apollo Server with Node Express Server
- Clone the app
git clone [email protected]/mr-robak/messenger-backend.git
- cd into your project
cd YOUR_PROJECT_NAME
- install dependencies
npm install
- Configure your database in
config/config.js
// config/config.json
{
"development": {
"username": "postgres",
"password": "secret",
"database": "YOUR_PROJECT_NAME_HERE_development",
"host": "localhost",
"dialect": "postgres",
"operatorsAliases": "0"
}
}
- Create database, run migrations & seed data
package.json
contains a script for this
npm run initdev
Or run the commands seperately
npx sequelize-cli db:create
npx sequelize-cli db:migrate
npx sequelize-cli db:seed:all
- start server with
nodemon
(recommended for development)
npm run dev
- or start normally
npm start