Skip to content

Instantly share code, notes, and snippets.

View LuffyAnshul's full-sized avatar

ANSHUL VARSHAV BORAWAKE LuffyAnshul

View GitHub Profile
@LuffyAnshul
LuffyAnshul / App.js
Last active January 10, 2021 09:47
News Application React Native - AppJS
import React from 'react';
import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import { createMaterialBottomTabNavigator } from '@react-navigation/material-bottom-tabs';
import HomeScreen from './src/pages/HomeScreen';
import DetailsScreen from './src/pages/DetailsScreen';
import ProfileScreen from './src/pages/ProfileScreen';
@LuffyAnshul
LuffyAnshul / HomeScreen.js
Last active January 14, 2021 06:45
News Application React Native - HomeScreenJS
import React from 'react';
import { View, Text, SafeAreaView, StatusBar, ScrollView, Image } from 'react-native';
import CardView from '../components/CardView';
class HomeScreen extends React.Component {
constructor(props) {
super(props);
this.state = {
navigation: props.navigation,
isLoading: true,
@LuffyAnshul
LuffyAnshul / DetailsScreen.js
Created January 10, 2021 09:17
News App React Native - DetailsScreen
import * as React from 'react';
import { View, Text, SafeAreaView, StatusBar, ImageBackground, ScrollView, Linking, StyleSheet } from 'react-native';
import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';
const DetailsScreen = ({ route, navigation }) => {
const item = route.params.newsData;
// console.log(navigation)
@LuffyAnshul
LuffyAnshul / SearchScreen.js
Last active January 10, 2021 09:54
News App React Native - SearchScreen
import React from 'react';
import { View, SafeAreaView, StatusBar, Button } from 'react-native';
import { Searchbar, Chip, Subheading } from 'react-native-paper';
import MaterialCommunityIcons from 'react-native-vector-icons/MaterialCommunityIcons';
import DatePicker from 'react-native-datepicker';
import SearchListView from '../components/SearchListView';
class SearchScreen extends React.Component {
constructor(props) {
@LuffyAnshul
LuffyAnshul / CardView.js
Last active January 10, 2021 09:57
News Application React Native - CardView
import React from 'react';
import { FlatList, View, TouchableOpacity, ImageBackground, Text, StyleSheet, Dimensions, Linking } from 'react-native';
const windowHeight = Dimensions.get('window').height / 1.8;
const windowWidth = Dimensions.get('window').width / 1.4;
const CardView = ({ data, navigation }) => {
const ItemView = ({ item }) => {
var resTitle = item.title.substring(0, 50) + '. . .';
var resDesc = '';
@LuffyAnshul
LuffyAnshul / SearchListView.js
Last active January 10, 2021 10:00
News Application React Native - SearchListView
import React from 'react';
import { FlatList, View, TouchableOpacity, Image, Text, StyleSheet } from 'react-native';
const SearchListView = ({ data, navigation }) => {
const ItemView = ({ item }) => {
var resTitle = item.title.substring(0, 50);
var resDesc = item.description.substring(0, 90) ;
return (
<TouchableOpacity style={styles.cardView} activeOpacity={0.7}
@LuffyAnshul
LuffyAnshul / PrivateChat-RN-FireBaseConfig
Last active January 17, 2021 06:24
Private Chat React Native - App.js Firebase Configurations
const firebaseConfig = {
apiKey: "<api-key>",
authDomain: "<auth-domain>",
databaseURL: "<database-url>",
projectId: "<project-id>",
storageBucket: "<storage-bucket>",
messagingSenderId: "<messaging-sender-id>",
appId: "<app-id>"
};
@LuffyAnshul
LuffyAnshul / PrivateChat-RN-Imports
Created January 17, 2021 06:21
Private Chat React Native Import Statements
import React, { useState, useEffect, useCallback } from 'react';
import { GiftedChat } from 'react-native-gifted-chat';
import AsyncStorage from '@react-native-async-storage/async-storage';
import {
StyleSheet,
TextInput,
View,
LogBox,
Button,
} from 'react-native';
@LuffyAnshul
LuffyAnshul / PrivateChat-RN-useEffect
Last active January 17, 2021 06:48
Private Chat React Native; what is happening is useEffect
useEffect(() => {
readUser();
const unsubscribe = chatsRef.onSnapshot((querySnapshot) => {
const messagesFirestore = querySnapshot
.docChanges()
.filter(({ type }) => type === 'added')
.map(({ doc }) => {
const message = doc.data();
return {
...message,
@LuffyAnshul
LuffyAnshul / PrivateChat-RN-functions
Created January 17, 2021 07:01
Private Chat React Native - Functions to handle async events
async function handlePress() {
const _id = Math.random().toString(36).substring(7);
const user = { _id, name };
await AsyncStorage.setItem('user', JSON.stringify(user));
setUser(user);
}
async function handleSend(messages) {
const writes = messages.map((m) => chatsRef.add(m));
await Promise.all(writes);